寻宝:修改占用藏宝图逻辑

This commit is contained in:
liangtongchuan
2020-12-08 23:28:47 +08:00
parent d6cfbc53e3
commit 2694d977d2
2 changed files with 6 additions and 1 deletions

View File

@@ -100,7 +100,7 @@ export class ComBattleHandler {
let blueprt = await ItemModel.findbyRoleAndGidAndCount(roleId, blueprtId, 1);
if (!blueprt || blueprt.count < 1) return resResult(STATUS.COM_BATTLE_BLUEPRT_NOT_FOUND);
// 检查是否有已创建未结束的寻宝,预先占用一张藏宝图
let teams = await ComBattleTeamModel.getTeamByCapAndStatus(roleId, COM_TEAM_STATUS.FIGHTING);
let teams = await ComBattleTeamModel.getOccupiedBlueprt(roleId, COM_TEAM_STATUS.FIGHTING, blueprtId);
if (teams && blueprt.count <= teams.length) return resResult(STATUS.COM_BATTLE_BLUEPRT_NOT_ENOUGH);
let roleStatus = [];

View File

@@ -211,6 +211,11 @@ export default class ComBattleTeam extends BaseModel {
return teams;
}
public static async getOccupiedBlueprt(roleId: string, status: number, blueprtId: number, lean = true) {
const teams = await ComBattleTeamModel.find({status, capId: roleId, blueprtId}).lean(lean);
return teams;
}
public static async getTeamByBlueprt(blueprtIds: Array<number>, status: number, pub = true, limit = 50, lean = true) {
const teams = await ComBattleTeamModel.find({blueprtId: {$in: blueprtIds}, status, pub}).limit(limit).lean(lean);
return teams;