🐞 fix(guild): 修改捐献宝箱重复领取问题

This commit is contained in:
dingchaolin
2023-03-15 21:36:37 +08:00
parent 9229af420f
commit 6b06d95a89
2 changed files with 8 additions and 3 deletions

View File

@@ -129,8 +129,13 @@ export class DonationHandler {
return resResult(STATUS.WRONG_PARMS);
}
if (resReceiveBoxs.indexOf(id) != -1)
return resResult(STATUS.GUILD_DONATE_BOXS_IS_GOT);
// 捐献宝箱-每级有4个
const TOTAL_BOX_COUNT = 4;
for (let haveGotId of resReceiveBoxs) {
if ((haveGotId % TOTAL_BOX_COUNT) === (id % TOTAL_BOX_COUNT)) {
return resResult(STATUS.GUILD_DONATE_BOXS_IS_GOT);
}
}
let { boxRewards, fund, level } = getArmyDonateBoxBaseById(id);
let { donateFund, donationLv } = await getDonation(code, guild);
if( donationLv < level) return resResult(STATUS.GUILD_DONATE_LV_NOT_ENOUGH)

View File

@@ -90,7 +90,7 @@ export default class UserGuild extends BaseModel {
@prop({ required: true, default: 0 })
trainTime: number;//上次刷新挑战训练场次数的时间每天5点
@prop({ required: true, default: [] })
@prop({ required: true, default: [], type: Number })
trainRewards: Array<number>;//领取过的进阶等级
@prop({ required: true, default: [], type: TrainBoxRewardRecord, _id: false })