From 2907ef8ff03bfb51812a8e965153ee5b9750b0d7 Mon Sep 17 00:00:00 2001 From: liangtongchuan Date: Thu, 26 Nov 2020 16:08:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=BB=E5=AE=9D=E5=8A=A9?= =?UTF-8?q?=E6=88=98=E6=AC=A1=E6=95=B0=E8=8E=B7=E5=8F=96=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game-server/app/servers/battle/handler/comBattleHandler.ts | 4 ++-- shared/db/ComBattleTeam.ts | 5 ++++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/game-server/app/servers/battle/handler/comBattleHandler.ts b/game-server/app/servers/battle/handler/comBattleHandler.ts index eac8dead9..6f8cfad20 100644 --- a/game-server/app/servers/battle/handler/comBattleHandler.ts +++ b/game-server/app/servers/battle/handler/comBattleHandler.ts @@ -124,7 +124,7 @@ export class ComBattleHandler { return resResult(STATUS.COM_BATTLE_CE_LIMIT); } - let teams = await ComBattleTeamModel.getTeamByRoleAndTime(roleId, teamStatus.quality, new Date(new Date().setHours(0, 0, 0, 0))); + let teams = await ComBattleTeamModel.getTeamByRoleAndTime(roleId, teamStatus.quality, new Date(new Date().setHours(0, 0, 0, 0)), true); if (teams.length >= assistanceTime) resResult(STATUS.COM_BATTLE_ASSIST_NOT_ENOUGH); let roleStatus = new RoleStatus(); @@ -170,7 +170,7 @@ export class ComBattleHandler { async getAssistCnt(msg: {}, session: BackendSession) { let roleId = session.get('roleId'); - let teams = await ComBattleTeamModel.getTeamByRoleAndTime(roleId, null, new Date(new Date().setHours(0, 0, 0, 0))); + let teams = await ComBattleTeamModel.getTeamByRoleAndTime(roleId, null, new Date(new Date().setHours(0, 0, 0, 0)), true); let cnt = [0, 0, 0, 0, 0]; teams.forEach(team => { if (team && team.quality) { diff --git a/shared/db/ComBattleTeam.ts b/shared/db/ComBattleTeam.ts index 1b4a47ece..b19f0629d 100644 --- a/shared/db/ComBattleTeam.ts +++ b/shared/db/ComBattleTeam.ts @@ -143,7 +143,7 @@ export default class ComBattleTeam extends BaseModel { return teams; } - public static async getTeamByRoleAndTime(roleId: string, quality?: number, time?: Date, limitCnt = 50, lean = true) { + public static async getTeamByRoleAndTime(roleId: string, quality?: number, time?: Date, isAssist?: boolean, limitCnt = 50, lean = true) { let query = {roleIds: roleId}; if (quality) { query = Object.assign(query, {quality}); @@ -151,6 +151,9 @@ export default class ComBattleTeam extends BaseModel { if (time) { query = Object.assign(query, {createdAt: {$gte: time}}); } + if (isAssist) { + query = Object.assign(query, {capId: {$ne: roleId}}); + } const teams = await ComBattleTeamModel.find(query).limit(limitCnt).lean(lean); return teams; }