整理:删除不需要的channel
This commit is contained in:
@@ -11,7 +11,7 @@ import { COM_BTL_QUALITY, HERO_SELECT, DEBUG_MAGIC_WORD, REDIS_KEY, TASK_TYPE, E
|
||||
import { getAp } from '../../../services/actionPointService';
|
||||
import { ItemModel } from '../../../db/Item';
|
||||
import { SkinModel } from '../../../db/Skin';
|
||||
import { loginRefresh } from '../../../services/playerEventService';
|
||||
// import { loginRefresh } from '../../../services/playerEventService';
|
||||
import { nowSeconds, getZeroPoint } from '../../../pubUtils/timeUtil';
|
||||
import { rmRoleFromQueue, roleLeave, getRoleOnlineInfo, roleLogin } from '../../../services/redisService';
|
||||
|
||||
@@ -39,6 +39,7 @@ export class EntryHandler {
|
||||
* @param {Object} session current session object
|
||||
*/
|
||||
async enter(msg: { token: string, serverId: number }, session: FrontendSession) {
|
||||
console.log('****** entry before', Date.now());
|
||||
let self = this;
|
||||
let serverId = msg.serverId;
|
||||
|
||||
@@ -66,12 +67,6 @@ export class EntryHandler {
|
||||
await roleLogin(role.roleId, user.userCode, serverName, user.pkgName); // 保存在线用户
|
||||
await this.addSession(role, session);
|
||||
|
||||
let channelService = self.app.get('channelService');
|
||||
let channel = channelService.getChannel(role.roleId, true);
|
||||
if (channel.getMembers().indexOf(role.roleId) === -1) {
|
||||
channel.add(role.roleId, self.app.get('serverId'));
|
||||
}
|
||||
|
||||
// put user into channel
|
||||
// console.log(JSON.stringify(self.app.rpc.battle))
|
||||
// await self.app.rpc.battle.battleRemote.add.route(session)(role.roleId, self.app.get('serverId'), role.serverId, true);
|
||||
@@ -82,7 +77,7 @@ export class EntryHandler {
|
||||
let equips = await EquipModel.findbyRole(role.roleId);
|
||||
let items = await ItemModel.findbyRole(role.roleId);
|
||||
let skins = await SkinModel.findbyRole(role.roleId);
|
||||
if (role.hasInit) await loginRefresh(role.roleId);
|
||||
// if (role.hasInit) await loginRefresh(role.roleId); // pvp在getData的时候会做初始,这里先注掉
|
||||
reportOneOnline(role.roleId, user.userCode, self.app.get('serverId'), true, user);
|
||||
|
||||
let r = new Rank(REDIS_KEY.HERO_NUM_RANK, { serverId });
|
||||
@@ -115,6 +110,7 @@ export class EntryHandler {
|
||||
let todayZeroPoint = getZeroPoint();
|
||||
role['todayZeroPoint'] = todayZeroPoint;
|
||||
|
||||
console.log('****** entry after', Date.now());
|
||||
return resResult(STATUS.SUCCESS, { role: pick(role, ENTERY_ROLE_PICK) });
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,6 @@ export class GmHandler {
|
||||
}
|
||||
|
||||
async pushEvent(msg: { uid: number, serverId: number }, session: BackendSession) {
|
||||
let sid = session.get('sid');
|
||||
|
||||
let { uid, serverId } = msg;
|
||||
let role = await RoleModel.findByUid(uid, serverId);
|
||||
@@ -36,19 +35,14 @@ export class GmHandler {
|
||||
let { roleId, roleName, eventStatus } = role;
|
||||
|
||||
let channelService = this.app.get('channelService');
|
||||
let channel = channelService.getChannel(roleId, true);
|
||||
let users = channel.getMembers();
|
||||
if (users.indexOf(roleId) === -1) {
|
||||
channel.add(roleId, sid);
|
||||
}
|
||||
|
||||
let event = await getEvent(eventStatus, roleId, roleName);
|
||||
|
||||
let tsid = channel.getMember(roleId)['sid'];
|
||||
channelService.pushMessageByUids('onSpecialEvent', resResult(STATUS.SUCCESS, { event }), [{
|
||||
uid: roleId,
|
||||
sid: tsid
|
||||
}]);
|
||||
let hisOnlineInfo = await getRoleOnlineInfo(role.roleId);
|
||||
if (hisOnlineInfo.isOnline) {
|
||||
channelService.pushMessageByUids('onSpecialEvent', resResult(STATUS.SUCCESS, { event }), [{
|
||||
uid: roleId,
|
||||
sid: hisOnlineInfo.sid
|
||||
}]);
|
||||
}
|
||||
return resResult(STATUS.SUCCESS, { list: event });
|
||||
}
|
||||
|
||||
|
||||
@@ -47,7 +47,6 @@ export class RoleHandler {
|
||||
let checkName = await RoleModel.checkName(roleName, serverId);
|
||||
if (checkName) return resResult(STATUS.NAME_HAS_USED);
|
||||
|
||||
console.log('****** createHeroes before', Date.now())
|
||||
let initInfos: { role: RoleUpdate, initInfos: {heroInfo: HeroUpdate, skinInfo: SkinUpdate}[], figureInfo: { heads: Figure[], frames: Figure[], spines: Figure[] }}
|
||||
= this.app.get('initRoleInfos');
|
||||
role = await RoleModel.updateRoleInfo(roleId, {...initInfos.role, roleName, hasInit: true});
|
||||
@@ -60,12 +59,9 @@ export class RoleHandler {
|
||||
await createHero.createWithInitInfo(infos, initInfos.figureInfo);
|
||||
await createHero.clearTask(await getActivities());
|
||||
await createHero.pushMessage(pinus, sid);
|
||||
console.log('updateRedisRank before', Date.now())
|
||||
await createHero.updateRedisRank(Rank);
|
||||
console.log('updateRedisRank after', Date.now())
|
||||
let heroes = createHero.getResultHeroes();
|
||||
|
||||
console.log('****** createHeroes after', Date.now())
|
||||
session.set('roleName', roleName);
|
||||
session.push('roleName', () => { });
|
||||
|
||||
|
||||
@@ -126,50 +126,36 @@ export class UpdateHeroes {
|
||||
public async updateRedisRank(Rank: any) {
|
||||
let role = await this.getRole();
|
||||
let { serverId, roleId, pushHeroes } = this;
|
||||
console.log('******** guildInfo before', Date.now());
|
||||
// 更新军团信息
|
||||
if(this.guild) {
|
||||
let r = new Rank(REDIS_KEY.GUILD_INFO, { code: this.guild.code });
|
||||
await r.generParamAndSet(REDIS_KEY.GUILD_INFO, { guildCode: this.guild.code }, { guild: this.guild });
|
||||
}
|
||||
console.log('******** guildInfo after', Date.now());
|
||||
console.log('******** heroNum before', Date.now());
|
||||
// 武将数量
|
||||
if(this.incHeroNum > 0) {
|
||||
let r = new Rank(REDIS_KEY.HERO_NUM_RANK, { serverId });
|
||||
await r.setRankWithRoleInfo(roleId, role.heroNum, role.heroNumUpdatedAt, role);
|
||||
}
|
||||
console.log('******** heroNum after', Date.now());
|
||||
console.log('******** topLineup before', Date.now());
|
||||
|
||||
// 最强阵容
|
||||
let r = new Rank(REDIS_KEY.TOP_LINEUP_RANK, { serverId });
|
||||
await r.setRankWithRoleInfo(roleId, reduceCe(role.topLineupCe), 0, role);
|
||||
console.log('******** topLineup after', Date.now());
|
||||
|
||||
console.log('******** hero before', Date.now());
|
||||
|
||||
// 最强武将
|
||||
for(let { hid, ce, hero } of pushHeroes) {
|
||||
console.log('******** hero before', hid, Date.now());
|
||||
let r2 = new Rank(REDIS_KEY.TOP_HERO_RANK, { serverId });
|
||||
await r2.setRankWithHeroInfo(roleId, hid, ce, 0, hero);
|
||||
|
||||
let r4 = new Rank(REDIS_KEY.HERO_RANK, { serverId, hid });
|
||||
await r4.setRankWithHeroInfo(roleId, hid, ce, 0, hero);
|
||||
console.log('******** hero after', hid, Date.now());
|
||||
}
|
||||
console.log('******** hero after', Date.now());
|
||||
console.log('******** sumCe before', Date.now());
|
||||
// 总战力
|
||||
let r3 = new Rank(REDIS_KEY.SUM_CE_RANK, { serverId });
|
||||
await r3.setRankWithRoleInfo(roleId, reduceCe(role.ce), 0, role);
|
||||
console.log('******** sumCe after', Date.now());
|
||||
|
||||
console.log('******** lineup info before', Date.now());
|
||||
// 更新最强五人阵容信息
|
||||
let r5 = new Rank(REDIS_KEY.TOP_LINEUP_INFO, { serverId });
|
||||
await r5.generParamAndSet(REDIS_KEY.TOP_LINEUP_INFO, { roleId }, { role });
|
||||
console.log('******** lineup info after', Date.now());
|
||||
}
|
||||
|
||||
public async pushMessage(pinus: any, sid: string) {
|
||||
|
||||
@@ -567,6 +567,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
// }
|
||||
// }
|
||||
|
||||
console.log('***** sevenDay before', Date.now());
|
||||
//七天乐
|
||||
let allActivity: ActivityModelType[] = await findActivitiesByTypes([ACTIVITY_TYPE.SEVEN_DAY]);
|
||||
for (let activity of allActivity) {
|
||||
@@ -624,7 +625,9 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
}
|
||||
}
|
||||
}
|
||||
console.log('***** sevenDay after', Date.now());
|
||||
|
||||
console.log('***** DailyChallenge before', Date.now());
|
||||
//今日挑战统计
|
||||
allActivity = await findActivitiesByTypes([ACTIVITY_TYPE.TASK_DAILY_CHALLENGES]);
|
||||
for (let activity of allActivity) {
|
||||
@@ -654,7 +657,9 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
}
|
||||
}
|
||||
}
|
||||
console.log('***** DailyChallenge after', Date.now());
|
||||
|
||||
console.log('***** RefreshTask before', Date.now());
|
||||
//刷新任务统计
|
||||
allActivity = await findActivitiesByTypes([ACTIVITY_TYPE.REFRESH_TASK]);
|
||||
for (let activity of allActivity) {
|
||||
@@ -684,7 +689,9 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
}
|
||||
}
|
||||
}
|
||||
console.log('***** RefreshTask after', Date.now());
|
||||
|
||||
console.log('***** hunt before', Date.now());
|
||||
//寻宝骑兵活动任务
|
||||
let tempData: ServerTempModelType = await ServerTempModel.findData(serverId);
|
||||
if (tempData) {
|
||||
@@ -723,8 +730,10 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
}
|
||||
}
|
||||
}
|
||||
console.log('***** hunt after', Date.now());
|
||||
|
||||
|
||||
console.log('***** thirtyDay before', Date.now());
|
||||
//30天任务统计
|
||||
if (taskType === TASK_TYPE.HERO_QUALITY_STAR_UP ||
|
||||
taskType === TASK_TYPE.HERO_QUALITY_TO_QUALITY_COUNT ||
|
||||
@@ -776,7 +785,9 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
}
|
||||
}
|
||||
}
|
||||
console.log('***** thirtyDay after', Date.now());
|
||||
|
||||
console.log('***** popUpShop before', Date.now());
|
||||
//弹出商店
|
||||
{
|
||||
allActivity = await findActivitiesByTypes([ACTIVITY_TYPE.POP_UP_SHOP]);
|
||||
@@ -849,6 +860,8 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
}
|
||||
}
|
||||
}
|
||||
console.log('***** popUpShop after', Date.now());
|
||||
console.log('***** growthFund before', Date.now());
|
||||
//主线成长基金
|
||||
if (taskType === TASK_TYPE.BATTLE_MAIN) {
|
||||
allActivity = await findActivitiesByTypes([ACTIVITY_TYPE.GROWTH_FUND_MAIN, ACTIVITY_TYPE.GROWTH_FUND_MAIN_VIP]);
|
||||
@@ -865,6 +878,8 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
pushMessage = pushMessage.concat(taskArray);
|
||||
}
|
||||
}
|
||||
console.log('***** growthFund after', Date.now());
|
||||
console.log('***** growthFundTower before', Date.now());
|
||||
//镇念塔成长基金getRoleOnlineInfo
|
||||
if (taskType === TASK_TYPE.BATTLE_TOWER_LV) {
|
||||
allActivity = await findActivitiesByTypes([ACTIVITY_TYPE.GROWTH_FUND_TOWER, ACTIVITY_TYPE.GROWTH_FUND_TOWER_VIP]);
|
||||
@@ -881,6 +896,8 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
pushMessage = pushMessage.concat(taskArray);
|
||||
}
|
||||
}
|
||||
console.log('***** growthFundTower after', Date.now());
|
||||
console.log('***** growthFundElite before', Date.now());
|
||||
//精英成长基金
|
||||
if (taskType === TASK_TYPE.BATTLE_MAIN_ELITE) {
|
||||
allActivity = await findActivitiesByTypes([ACTIVITY_TYPE.GROWTH_FUND_MAIN_ELITE, ACTIVITY_TYPE.GROWTH_FUND_MAIN_ELITE_VIP]);
|
||||
@@ -897,6 +914,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
pushMessage = pushMessage.concat(taskArray);
|
||||
}
|
||||
}
|
||||
console.log('***** growthFundElite after', Date.now());
|
||||
return pushMessage;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user