添加数据库类型别名

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';
class RandSe {
@prop({ required: true })
@@ -50,26 +50,28 @@ export default class Equip extends BaseModel {
holes: Holes[];
public static async findbyRole(roleId: string, lean = true) {
const equips = await EquipModel.find({ roleId }).lean(lean);
const equips: EquipType[] = await EquipModel.find({ roleId }).lean(lean);
return equips;
}
public static async createEquip(equipInfo: {roleId: string, roleName: string, id: number, seqId: number, type: number, name: string, lv?: number}, lean = true) {
const doc = new EquipModel();
const update = Object.assign(doc.toJSON(), equipInfo);
const equip = await EquipModel.findOneAndUpdate({ seqId: equipInfo.seqId }, update, {upsert: true, new: true}).lean(lean);
const equip: EquipType = await EquipModel.findOneAndUpdate({ seqId: equipInfo.seqId }, update, {upsert: true, new: true}).lean(lean);
return equip;
}
public static async putOn(hid: number, equipId: string, lean = true) {
const equip = await EquipModel.findOneAndUpdate({ _id: equipId }, {hid}, {new: true}).lean(lean);
const equip: EquipType = await EquipModel.findOneAndUpdate({ _id: equipId }, {hid}, {new: true}).lean(lean);
return equip;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await EquipModel.deleteMany({roleId}).lean(lean);
return result||{};
public static async deleteAccount(roleId: string) {
let result = await EquipModel.deleteMany({roleId});
return result;
}
}
export const EquipModel = getModelForClass(Equip);
export interface EquipType extends Pick<DocumentType<Equip>, keyof Equip>{};