练兵场结算

This commit is contained in:
mamengke01
2021-01-26 10:41:11 +08:00
parent d4d4ba825b
commit 3c3e734019
24 changed files with 6690 additions and 1765 deletions

32
shared/db/GuildRefine.ts Normal file
View File

@@ -0,0 +1,32 @@
import BaseModel from './BaseModel';
import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose';
class ScienceTree {
@prop({ required: true })
id: number;
@prop({ required: true })
time: number;
@prop({ required: true })
assistCount: number;
}
@index({ guildCode: 1 })
export default class GuildRefiner extends BaseModel {
@prop({ required: true })
guildCode: string;
@prop({ required: true, type: ScienceTree, default:[] })
scienceTrees: ScienceTree[];
public static async createScienceTree(guildCode: string, scienceTrees: ScienceTree[], lean = true) {
const result = await GuildRefinerModel.findOneAndUpdate({ guildCode }, {$set: {scienceTrees}}, {new: true, upsert: true}).lean(lean);
return result;
}
}
export const GuildRefinerModel = getModelForClass(GuildRefiner);
export interface GuildRefinerType extends Pick<DocumentType<GuildRefiner>, keyof GuildRefiner>{}