粮草先行:加入信息接续

This commit is contained in:
luying
2022-09-27 11:50:16 +08:00
parent 4e1c334a27
commit 10a8215c89
7 changed files with 42 additions and 52 deletions
+16 -1
View File
@@ -2,7 +2,7 @@ import BaseModel from './BaseModel';
import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose';
import { ItemReward } from '../domain/dbGeneral';
import { genCode } from '../pubUtils/util';
import { Member, WoodenHorse, Event } from '../domain/battleField/guildActivity'
import { Member, WoodenHorse, Event, JoinMember } from '../domain/battleField/guildActivity'
@index({ code: 1 })
@@ -42,6 +42,9 @@ export default class GuildActivityRecord extends BaseModel {
@prop({ required: true, type: Member, default: [], _id: false })
members: Member[]; // 参与活动的团员的roleId列表
@prop({ required: true, type: JoinMember, default: [], _id: false })
joinMember: JoinMember[]; // 参与活动的团员的roleId列表
@prop({ required: true, default: 0 })
memberCnt: number; // 参加的团员的数量
@@ -102,6 +105,18 @@ export default class GuildActivityRecord extends BaseModel {
const rec = await GuildActivityRecordModel.findOne({ guildCode, auctionType: sourceType, code: sourceCode }).select('members aid rank challengeCityId').lean();
return rec;
}
public static async join(guildCode: string, serverId: number, aid: number, index: number, member: JoinMember) {
let rec: GuildActivityRecordType = await GuildActivityRecordModel.findOneAndUpdate(
{ guildCode, serverId, index, aid, status: 1 },
{ $push: { joinMember: member }, $setOnInsert: { code: genCode(10) } }, { new: true, upsert: true }).lean();
return rec;
}
public static async findRecs(aid: number, index: number) {
let rec: GuildActivityRecordType[] = await GuildActivityRecordModel.find({ index, aid, status: 1 }).lean();
return rec;
}
}
export const GuildActivityRecordModel = getModelForClass(GuildActivityRecord);