添加数据库类型别名

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';
import { genCode } from '../pubUtils/util';
class Heroes {
@@ -33,24 +33,24 @@ export default class ExpeditionRecord extends BaseModel {
public static async getCurRecord(roleId: string, lean = true) {
const result = await ExpeditionRecordModel.findOne({ roleId, status: 1 }).lean(lean);
const result: ExpeditionRecordType = await ExpeditionRecordModel.findOne({ roleId, status: 1 }).lean(lean);
return result;
}
public static async createRecord(params: { roleId: string, roleName: string, heroes: Array<{seqId: number, hp: number, ap: number}>, myCe: number }, lean = true) {
const code = genCode(8);
const result = await ExpeditionRecordModel.findOneAndUpdate({ expeditionCode: code }, {...params, status: 1}, { new: true, upsert: true }).lean(lean);
const result: ExpeditionRecordType = await ExpeditionRecordModel.findOneAndUpdate({ expeditionCode: code }, {...params, status: 1}, { new: true, upsert: true }).lean(lean);
return result;
}
public static async hideRecord(roleId: string, lean = true) {
const result = await ExpeditionRecordModel.findOneAndUpdate({ roleId, status: 1 }, { status: 0 }, { new: true }).lean(lean);
const result: ExpeditionRecordType = await ExpeditionRecordModel.findOneAndUpdate({ roleId, status: 1 }, { status: 0 }, { new: true }).lean(lean);
return result;
}
public static async getExpeditionRecordByCode(expeditionCode: string, lean=true) {
const result = await ExpeditionRecordModel.findOne({expeditionCode}).lean(lean);
const result: ExpeditionRecordType = await ExpeditionRecordModel.findOne({expeditionCode}).lean(lean);
return result
}
@@ -72,7 +72,7 @@ export default class ExpeditionRecord extends BaseModel {
{$set: {'heroes.$.seqId': seqId, 'heroes.$.hp': hp, 'heroes.$.ap': ap}}
)
}
const result = await ExpeditionRecordModel.findOneAndUpdate(
const result: ExpeditionRecordType = await ExpeditionRecordModel.findOneAndUpdate(
{ expeditionCode },
{ $push: {heroes: {$each: pushArr} } }
).lean(lean)
@@ -80,10 +80,12 @@ export default class ExpeditionRecord extends BaseModel {
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await ExpeditionRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
public static async deleteAccount(roleId: string) {
let result = await ExpeditionRecordModel.deleteMany({roleId});
return result;
}
}
export const ExpeditionRecordModel = getModelForClass(ExpeditionRecord);
export interface ExpeditionRecordType extends Pick<DocumentType<ExpeditionRecord>, keyof ExpeditionRecord>{};