🐞 fix(gvg): 修复守城联军自动解散和手动解散守城
This commit is contained in:
@@ -32,6 +32,7 @@ import { GuildActiveModel } from '../../../db/GuildActive';
|
||||
import { leaveRaceActivityToRemote, leaveRaceWhenDismissToRemote, leaveRaceWhenQuitGuildToRemote } from '../../../services/guildActivity/guildActivityService';
|
||||
import { getGVGInfoInGuild } from '../../../services/gvg/gvgService';
|
||||
import { guildAbdicateToLeague, guildDismissToLeague, memberQuitGuildToLeague } from '../../../services/gvg/gvgTeamService';
|
||||
import { leaveCity } from '../../../services/gvg/gvgBattleService';
|
||||
|
||||
|
||||
export default function (app: Application) {
|
||||
@@ -624,6 +625,7 @@ export class GuildHandler {
|
||||
changeGuildActivity('', serverId, roleId, sid);
|
||||
leaveRaceWhenQuitGuildToRemote(serverId, guildCode, roleId);
|
||||
guildPayQuitGuild(serverId, code, roleId);
|
||||
leaveCity(true, roleId, serverId, guildCode);
|
||||
|
||||
return resResult(STATUS.SUCCESS, { hasGuild: role.hasGuild });
|
||||
}
|
||||
@@ -665,6 +667,7 @@ export class GuildHandler {
|
||||
reportTAEvent(memberRoleId, TA_EVENT.GUILD_QUIT, { name: guild.name, way: GUILD_QUIT_WAY.KICK });
|
||||
leaveRaceWhenQuitGuildToRemote(serverId, code, memberRoleId);
|
||||
guildPayQuitGuild(serverId, code, memberRoleId);
|
||||
leaveCity(true, memberRoleId, serverId, code);
|
||||
|
||||
return resResult(STATUS.SUCCESS, { memberCnt: guild.memberCnt });
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import { resResult } from "../../../pubUtils/util";
|
||||
import { GuildModel, GuildType } from "../../../db/Guild";
|
||||
import { GVGLeagueModel, GVGLeagueType } from "../../../db/GVGLeague";
|
||||
import { GVGLeagueApplyModel } from "../../../db/GVGLeagueApply";
|
||||
import { calLeagueCe, getGroupIdOfServer, getGVGConfig, getGVGPeriodData, getGVGServerType, getServersOfSameGroup } from "../../../services/gvg/gvgService";
|
||||
import { calLeagueCe, getGroupIdOfServer, getGroupKey, getGVGConfig, getGVGPeriodData, getGVGServerType, getServersOfSameGroup } from "../../../services/gvg/gvgService";
|
||||
import { checkCanManage, checkGuildLeader, checkLeagueAuth, createLeague, getLeagueApplyData, getLeagueInviteData, getMyAuth, joinGuildToLeague, updateGVGBattleLeagueInfo } from "../../../services/gvg/gvgTeamService";
|
||||
import { LeagueGuildInfo, LeagueListInfo, LeagueMemberListInfo, LeagueSimpleInfo } from "../../../domain/gvgField/returnData";
|
||||
import { getAllServerName, getServerName, isRoleOnline, updateUserInfo } from "../../../services/redisService";
|
||||
@@ -18,6 +18,7 @@ import { sendMailByContent, sendMailToGuildByContent, sendMailToLeagueByContent
|
||||
import { getGVGCities } from "../../../services/gvg/gvgBattleService";
|
||||
import { addLeagueRenameRecord, changeNoticeMessage, guildQuitLeagueRecord } from "../../../services/gvg/gvgRecService";
|
||||
import { LeagueLeader } from "../../../domain/rank";
|
||||
import GVGCity from "../../../db/GVGCity";
|
||||
|
||||
export default function (app: Application) {
|
||||
new HandlerService(app, {});
|
||||
@@ -479,6 +480,9 @@ export class GVGManageHandler {
|
||||
const guildCode = session.get('guildCode');
|
||||
|
||||
const { leagueCode: targetLeagueCode } = msg;
|
||||
const { configId, period } = getGVGPeriodData();
|
||||
if(period != GVG_PERIOD.TEAM) return resResult(STATUS.GVG_NOT_TEAM_PERIOD);
|
||||
const groupKey = await getGroupKey(serverId);
|
||||
|
||||
const checkResult = await checkCanManage(serverId);
|
||||
if(checkResult.code != 0) return checkResult;
|
||||
@@ -501,6 +505,7 @@ export class GVGManageHandler {
|
||||
await sendMessageToGuildWithSuc(guildCode, PUSH_ROUTE.LEAGUE_DISSMISS, { leagueCode: myLeague.leagueCode });
|
||||
await sendMailToGuildByContent(MAIL_TYPE.LEAGUE_DISSMISS, guildCode, { params: [ myLeague.name ]});
|
||||
}
|
||||
await GVGCity.leagueDismiss(configId, groupKey, targetLeagueCode);
|
||||
|
||||
// 返回
|
||||
return resResult(STATUS.SUCCESS, {
|
||||
|
||||
Reference in New Issue
Block a user