feat(gvg): 宝箱奖励和等级奖励

This commit is contained in:
luying
2023-01-16 20:28:13 +08:00
parent 44476e2430
commit 7895c08f16
7 changed files with 138 additions and 18 deletions

View File

@@ -17,13 +17,6 @@ class ActiveRec {
}
}
class Box {
@prop({ required: true, default: 0 })
job: number; // 宝箱积分
@prop({ required: true, default: [], type: Number })
received: number[]; // 领取记录
}
export class Distribute {
@prop({ required: true, default: 0 })
food: number = 0; // 粮食
@@ -63,8 +56,8 @@ export default class GVGUserData extends BaseModel {
@prop({ required: true, default: 0 })
receiveCurrencyTime: number; // 领取内政令&征战令时间
@prop({ required: true, default: [], type: Box, _id: false })
box: Box[];
@prop({ required: true, default: [], type: Number })
box: number[];
@prop({ required: true, default: {}, _id: false })
distribute: Distribute;
@@ -112,6 +105,16 @@ export default class GVGUserData extends BaseModel {
}, { new: true, upsert: true }).lean();
return result;
}
public static async receiveBox(configId: number, leagueCode: string, roleId: string, boxId: number) {
const result: GVGUserDataType = await GVGUserDataModel.findOneAndUpdate({ configId, leagueCode, roleId }, { $push: { box: boxId }}, { new: true }).lean();
return result;
}
public static async receiveLv(configId: number, leagueCode: string, roleId: string, lv: number) {
const result: GVGUserDataType = await GVGUserDataModel.findOneAndUpdate({ configId, leagueCode, roleId }, { $set: { lv }}, { new: true }).lean();
return result;
}
}
export const GVGUserDataModel = getModelForClass(GVGUserData);