用户离开军团频道时不再查询数据库
This commit is contained in:
@@ -126,7 +126,7 @@ export class GuildRemote {
|
|||||||
}, sid);
|
}, sid);
|
||||||
// 更新人数减少
|
// 更新人数减少
|
||||||
this.updateInfo(guildCode, { memberCnt: guild.memberCnt, guildCe: guild.guildCe });
|
this.updateInfo(guildCode, { memberCnt: guild.memberCnt, guildCe: guild.guildCe });
|
||||||
leaveGuildChannel(roleId, sid);
|
leaveGuildChannel(roleId, sid, guildCode);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -192,6 +192,7 @@ export class EntryHandler {
|
|||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
let serverId = session.get('serverId');
|
let serverId = session.get('serverId');
|
||||||
|
const guildCode = session.get('guildCode');
|
||||||
roleLeave(roleId).then(function (roleInfo) {
|
roleLeave(roleId).then(function (roleInfo) {
|
||||||
if (roleInfo.isOnline) {
|
if (roleInfo.isOnline) {
|
||||||
reportOneOnline(roleId, roleInfo.userCode, sid, roleInfo.pkgName);
|
reportOneOnline(roleId, roleInfo.userCode, sid, roleInfo.pkgName);
|
||||||
@@ -204,7 +205,7 @@ export class EntryHandler {
|
|||||||
this.app.rpc.chat.chatRemote.kickWorldChannel.route(session, true)(roleId, sid, serverId);
|
this.app.rpc.chat.chatRemote.kickWorldChannel.route(session, true)(roleId, sid, serverId);
|
||||||
await leaveSysChannel(roleId, sid, serverId);
|
await leaveSysChannel(roleId, sid, serverId);
|
||||||
await leaveWorldChannel(roleId, sid, serverId);
|
await leaveWorldChannel(roleId, sid, serverId);
|
||||||
await leaveGuildChannel(roleId, sid);
|
await leaveGuildChannel(roleId, sid, guildCode);
|
||||||
RoleModel.updateRoleInfo(roleId, { quitTime: nowSeconds() });
|
RoleModel.updateRoleInfo(roleId, { quitTime: nowSeconds() });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -67,8 +67,7 @@ export async function leaveCityChannel(roleId: string, sid: string, cityId: numb
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export async function leaveGuildChannel(roleId: string, sid: string) {
|
export async function leaveGuildChannel(roleId: string, sid: string, guildCode: string) {
|
||||||
const { guildCode } = await RoleModel.findByRoleId(roleId, 'guildCode');
|
|
||||||
if (!guildCode) return;
|
if (!guildCode) return;
|
||||||
const roomId = groupRoomId(CHANNEL_PREFIX.GUILD, guildCode);
|
const roomId = groupRoomId(CHANNEL_PREFIX.GUILD, guildCode);
|
||||||
await leaveChannel(roomId, roleId, sid);
|
await leaveChannel(roomId, roleId, sid);
|
||||||
|
|||||||
Reference in New Issue
Block a user