抽卡:500抽逻辑完成

This commit is contained in:
luying
2022-07-29 16:17:41 +08:00
parent 40af0edc28
commit 1ad6163bb5
11 changed files with 196 additions and 126 deletions
+5 -2
View File
@@ -115,14 +115,17 @@ export default class UserGacha extends BaseModel {
return rec;
}
public static async updateInfo(roleId: string, gachaId: number, activityId: number, update: UserGachaParam) {
public static async updateInfo(roleId: string, gachaId: number, activityId: number, update: UserGachaParam, inc: { pullCnt?: number, count?: number } = {}) {
const doc = new UserGachaModel();
const setOnInsert = doc.toJSON();
delete setOnInsert._id;
for(let key in update) {
delete setOnInsert[key];
}
let rec: UserGachaType = await UserGachaModel.findOneAndUpdate({ roleId, gachaId, activityId }, { $set: update, $setOnInsert: setOnInsert }, { new: true, upsert: true }).lean({ virtuals: true });
for(let key in inc) {
delete setOnInsert[key];
}
let rec: UserGachaType = await UserGachaModel.findOneAndUpdate({ roleId, gachaId, activityId }, { $set: update, $setOnInsert: setOnInsert, $inc: inc }, { new: true, upsert: true }).lean({ virtuals: true });
return rec;
}