From 033dca69f886c82ee6dcc02841719c610e2c5064 Mon Sep 17 00:00:00 2001 From: liangtongchuan Date: Tue, 24 Nov 2020 23:50:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=8E=B7=E5=8F=96=E5=AF=BB?= =?UTF-8?q?=E5=AE=9D=E8=AE=B0=E5=BD=95=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/servers/battle/handler/comBattleHandler.ts | 8 +++++++- shared/consts/statusCode.ts | 1 + shared/db/ComBattleTeam.ts | 9 ++++++--- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/game-server/app/servers/battle/handler/comBattleHandler.ts b/game-server/app/servers/battle/handler/comBattleHandler.ts index 18c46d7b4..e19f1c8bc 100644 --- a/game-server/app/servers/battle/handler/comBattleHandler.ts +++ b/game-server/app/servers/battle/handler/comBattleHandler.ts @@ -4,7 +4,7 @@ import { COM_TEAM_STATUS, COM_TEAM_ENABLE_LV } from '../../../consts/consts'; import { ComBattleTeamModel } from '../../../db/ComBattleTeam'; import Role, { RoleModel } from '../../../db/Role'; import { STATUS } from '../../../consts/statusCode'; -import { Application, BackendSession } from 'pinus'; +import { Application, BackendSession, BlackListFunction } from 'pinus'; import { resResult } from '../../../pubUtils/util'; import { RoleStatus } from '../../../db/ComBattleTeam'; @@ -330,7 +330,13 @@ export class ComBattleHandler { return resResult(STATUS.SUCCESS, { bossHp: teamStatus.bossHp }); } + async getTeamRec(msg: {}, session: BackendSession) { + let roleId = session.get('roleId'); + let teams = await ComBattleTeamModel.getTeamByRoleAndTime(roleId, null, new Date(new Date().setHours(0, 0, 0, 0) - 2 * 24 * 60 * 60 * 1000)); + if (!teams) return resResult(STATUS.COM_BATTLE_NO_RECENT_REC); + return resResult(STATUS.SUCCESS, {teamInfos: teams}); + } // async startBattle(msg: {}, session: BackendSession) { // let roleId = session.get('roleId'); diff --git a/shared/consts/statusCode.ts b/shared/consts/statusCode.ts index f820e41f7..423b60904 100644 --- a/shared/consts/statusCode.ts +++ b/shared/consts/statusCode.ts @@ -94,6 +94,7 @@ export const STATUS = { COM_BATTLE_RM_TEAMMATE_ERR: { code: 20621, simStr: '移除队友失败' }, COM_BATTLE_CAN_NOT_RM: { code: 20622, simStr: '没有移除成员的权限' }, COM_BATTLE_DISSMISS_ERR: { code: 20623, simStr: '解散队伍异常' }, + COM_BATTLE_NO_RECENT_REC: { code: 20624, simStr: '没有最近的寻宝记录' }, // 秘境 20700 - 20799 DUNGEON_REFRESH_TIMES_LACK: { code: 20701, simStr: '购买次数不足' }, diff --git a/shared/db/ComBattleTeam.ts b/shared/db/ComBattleTeam.ts index 45014b91f..5c7a914a7 100644 --- a/shared/db/ComBattleTeam.ts +++ b/shared/db/ComBattleTeam.ts @@ -137,12 +137,15 @@ export default class ComBattleTeam extends BaseModel { return teams; } - public static async getTeamByRoleAndTime(roleId: string, quality: number, time: Date, lean = true) { - let query = {roleIds: roleId, createdAt: {$gte: time}}; + public static async getTeamByRoleAndTime(roleId: string, quality?: number, time?: Date, limitCnt = 50, lean = true) { + let query = {roleIds: roleId}; if (quality) { query = Object.assign(query, {quality}); } - const teams = await ComBattleTeamModel.find(query).lean(lean); + if (time) { + query = Object.assign(query, {createdAt: {$gte: time}}); + } + const teams = await ComBattleTeamModel.find(query).limit(limitCnt).lean(lean); return teams; } }