import BaseModel from './BaseModel'; import { index, getModelForClass, prop } from '@typegoose/typegoose'; /** * 远征记录 */ @index({ roleId: 1, eventId: 1 }) @index({ roleId: 1, eventCode: 1 }) export default class ExpeditionPoint extends BaseModel { @prop({ required: true }) roleId: string; // 角色 id @prop({ required: true }) pointCost: number; // 消耗点数 @prop({ required: true }) completed: boolean; // 本轮奖励是否完成 @prop({ required: true, default: [] }) rewards: Array<{point: number, reward: string, received:boolean, recTime: Date}>; // 领取记录 public static async getExpeditionPoint(roleId: string, lean = true) { const result = await ExpeditionPointModel.findOne({ roleId, completed: false }).lean(lean); return result; } } export const ExpeditionPointModel = getModelForClass(ExpeditionPoint);