✨ feat(gvg): 组建期
This commit is contained in:
@@ -30,6 +30,8 @@ import { changeGuildActivity, guildDismisActivity, guildPayQuitGuild } from '../
|
||||
import { sendMessageToUserWithSuc } from '../../../services/pushService';
|
||||
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';
|
||||
|
||||
|
||||
export default function (app: Application) {
|
||||
@@ -174,7 +176,7 @@ export class GuildHandler {
|
||||
const { code } = msg;
|
||||
|
||||
const select = ['code', 'name', 'notice', 'ceLimit', 'isAuto', 'icon', 'lv', 'memberCnt', 'guildCe'];
|
||||
const guild = await GuildModel.findByCode(code, serverId, select.join(' '));
|
||||
const guild = await GuildModel.findByCode(code, null, select.join(' '));
|
||||
let leader = <RoleType>guild.leader;
|
||||
delete guild.leader;
|
||||
// 返回
|
||||
@@ -199,7 +201,7 @@ export class GuildHandler {
|
||||
}
|
||||
|
||||
// 管理员最大数 等策划表
|
||||
let guild = await GuildModel.findByCode(code, serverId, 'managerCnt lv');
|
||||
let guild = await GuildModel.findByCode(code, serverId, 'managerCnt lv leagueCode');
|
||||
if (!guild) {
|
||||
return resResult(STATUS.GUILD_NOT_FOUND);
|
||||
}
|
||||
@@ -235,6 +237,7 @@ export class GuildHandler {
|
||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, code, [{ field: 'leader', value: new GuildLeader(role) }]);
|
||||
await RoleModel.updateRoleInfo(memberRoleId, { isGuildLeader: true });
|
||||
await RoleModel.updateRoleInfo(roleId, { isGuildLeader: false });
|
||||
await guildAbdicateToLeague(guild, roleId, role);
|
||||
}
|
||||
|
||||
guild = await GuildModel.updateInfo(code, updateObject, { managerCnt: managerCntInc }, 'managerCnt code name'); // 如果有转让团长设置leader
|
||||
@@ -274,13 +277,14 @@ export class GuildHandler {
|
||||
return resResult(STATUS.SUCCESS, { hasGuild: false })
|
||||
};
|
||||
|
||||
let guild = await GuildModel.findByCode(userGuild.guildCode, serverId);
|
||||
let guild = await GuildModel.findByCode(userGuild.guildCode, serverId, '+serverId');
|
||||
if (!guild) {
|
||||
return resResult(STATUS.GUILD_NOT_FOUND);
|
||||
}
|
||||
|
||||
let result = await getMyGuildInfo(roleId, sid, userGuild, guild, serverId, session);
|
||||
return resResult(STATUS.SUCCESS, result);
|
||||
let gvg = await getGVGInfoInGuild(guild);
|
||||
return resResult(STATUS.SUCCESS, { ...result, gvg });
|
||||
}
|
||||
|
||||
// 玩家申请公会
|
||||
@@ -561,6 +565,7 @@ export class GuildHandler {
|
||||
const { members } = guild;
|
||||
await RoleModel.dissmissGuild(members);
|
||||
await UserGuildApplyModel.deleteApplyByGuild(code);
|
||||
await guildDismissToLeague(guild);
|
||||
|
||||
await this.app.rpc.connector.connectorRemote.setOtherUserGuildSession.broadcast(members.map(roleId => { return { roleId, userGuild: null } })); // 更新session
|
||||
|
||||
@@ -602,6 +607,7 @@ export class GuildHandler {
|
||||
if (!guild) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, guild.code, [{ field: 'guildCe', value: guild.guildCe }])
|
||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'guildName', value: '' }]);
|
||||
await memberQuitGuildToLeague(guild, role);
|
||||
|
||||
//删除排名信息
|
||||
await removeBossRank(code, roleId);
|
||||
@@ -637,7 +643,7 @@ export class GuildHandler {
|
||||
if (!guild) return resResult(STATUS.GUILD_KICK_ERROR);
|
||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, guild.code, [{ field: 'guildCe', value: guild.guildCe }])
|
||||
await updateUserInfo(REDIS_KEY.USER_INFO, memberRoleId, [{ field: 'guildName', value: '' }]);
|
||||
|
||||
await memberQuitGuildToLeague(guild, role);
|
||||
|
||||
//删除排名信息
|
||||
await removeBossRank(code, memberRoleId);
|
||||
|
||||
Reference in New Issue
Block a user