练兵接口调整,新增获得宝箱和战报
This commit is contained in:
+5
-21
@@ -35,22 +35,7 @@ class Rank {
|
||||
score: number;
|
||||
}
|
||||
|
||||
class Report {
|
||||
@prop({ required: true })
|
||||
roleId: string;
|
||||
@prop({ required: true })
|
||||
trainId: number;//挑战的试炼关
|
||||
@prop({ required: true })
|
||||
hid: number;//据点
|
||||
@prop({ required: true })
|
||||
score: number;
|
||||
@prop({ required: true })
|
||||
time: number;
|
||||
@prop({ required: true })
|
||||
isSuccessed: boolean;
|
||||
@prop({ required: true })
|
||||
type: number;//1表示普通战报, 2表示系统战报即:被成功压制
|
||||
}
|
||||
|
||||
@index({guildCode:1, trainId:1})
|
||||
export default class GuildTrain extends BaseModel {
|
||||
@prop({ required: true })
|
||||
@@ -63,8 +48,6 @@ export default class GuildTrain extends BaseModel {
|
||||
trainInstances: TrainInstance[];
|
||||
@prop({ required: true, default: [], type: Rank, _id: false })
|
||||
ranks: Rank[];
|
||||
@prop({ required: true, default: [], type: Report, _id: false })
|
||||
reports: Report[];
|
||||
@prop({ required: true, default: false})
|
||||
locked: boolean;
|
||||
|
||||
@@ -88,14 +71,15 @@ export default class GuildTrain extends BaseModel {
|
||||
return guildTrain;
|
||||
}
|
||||
|
||||
public static async updateGuildTrainProgress(guildCode: string, trainId: number, hid:number, progress: number, ranks:Array<Rank>, reports: Array<Report>, isComplete: boolean,lean = true) {
|
||||
public static async updateGuildTrainProgress(guildCode: string, trainId: number, hid:number, progress: number, ranks:Array<Rank>, isComplete: boolean,lean = true) {
|
||||
const guildTrain: GuildTrainType = await GuildTrainModel.findOneAndUpdate({ guildCode, trainId, 'trainInstances.hid':hid},
|
||||
{ $set: {'trainInstances.$.progress': progress, ranks, reports, isComplete,'trainInstances.$.endTime': nowSeconds() + 24*60*60} },{new: true}).lean(lean);
|
||||
{ $set: {'trainInstances.$.progress': progress, ranks, isComplete,'trainInstances.$.endTime': nowSeconds() + 24*60*60} },{new: true}).lean(lean);
|
||||
|
||||
return guildTrain;
|
||||
}
|
||||
|
||||
public static async openGuildTrain(guildCode: string, trainId: number, trainInstances: Array<TrainInstance>, lean = true) {
|
||||
const guildTrain: GuildTrainType = await GuildTrainModel.findOneAndUpdate({ guildCode, trainId },{ trainId, reports: [], locked: false, ranks: [], trainInstances, isComplete: false, guildCode}, {new: true, upsert: true}).lean(lean);
|
||||
const guildTrain: GuildTrainType = await GuildTrainModel.findOneAndUpdate({ guildCode, trainId },{ trainId, locked: false, ranks: [], trainInstances, isComplete: false, guildCode}, {new: true, upsert: true}).lean(lean);
|
||||
return guildTrain;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user