添加数据库类型别名

This commit is contained in:
luying
2020-12-15 18:08:29 +08:00
parent 1565dd206a
commit 2d774fc0e4
38 changed files with 393 additions and 321 deletions

View File

@@ -1,5 +1,5 @@
import BaseModel from './BaseModel';
import { index, getModelForClass, prop } from '@typegoose/typegoose';
import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose';
/**
* 战斗记录接口
@@ -32,29 +32,31 @@ export default class BattleRecord extends BaseModel {
};
public static async getBattleRecordByCode(battleCode: string, lean = true) {
const result = await BattleRecordModel.findOne({ battleCode }).lean(lean);
const result: BattleRecordType = await BattleRecordModel.findOne({ battleCode }).lean(lean);
return result;
}
public static async getBattleRecordByIdAndStatus(roleId: string, battleId: number, status: number, lean = true) {
const result = await BattleRecordModel.findOne({ roleId, battleId, status }).lean(lean);
const result: BattleRecordType = await BattleRecordModel.findOne({ roleId, battleId, status }).lean(lean);
return result;
}
public static async getBattleRecordByIdAndStar(roleId: string, battleId: number, star: number, lean = true) {
const result = await BattleRecordModel.findOne({ roleId, battleId, star: {$lte: star} }).lean(lean);
const result: BattleRecordType = await BattleRecordModel.findOne({ roleId, battleId, star: {$lte: star} }).lean(lean);
return result;
}
public static async updateBattleRecordByCode( battleCode: string, params: object, lean = true) {
const result = await BattleRecordModel.findOneAndUpdate({ battleCode }, params, {new: true, upsert: true}).lean(lean);
const result: BattleRecordType = await BattleRecordModel.findOneAndUpdate({ battleCode }, params, {new: true, upsert: true}).lean(lean);
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await BattleRecordModel.deleteMany({roleId}).lean(lean);
public static async deleteAccount(roleId: string) {
let result = await BattleRecordModel.deleteMany({roleId});
return result||{};
}
}
export const BattleRecordModel = getModelForClass(BattleRecord);
export interface BattleRecordType extends Pick<DocumentType<BattleRecord>, keyof BattleRecord>{}