Files
ZYZ/shared/db/GMRecord.ts
2021-11-23 18:17:50 +08:00

38 lines
978 B
TypeScript

import BaseModel from './BaseModel';
import { index, getModelForClass, prop, DocumentType, ReturnModelType, mongoose } from '@typegoose/typegoose';
/**
* GM用户组接口
*/
@index({ uid: 1 })
@index({ api: 1 })
export default class GMRecord extends BaseModel {
@prop({ required: true })
uid: number;
@prop({ required: true })
api: string;
@prop({ required: true })
body: string;
@prop({ required: true })
result: string;
public static async createRecord(uid: number, api: string, body: string, result: string) {
const r = await GMRecordModel.insertMany({uid, api, body, result});
return r;
}
}
export let GMRecordModel: ReturnModelType<typeof GMRecord, {}> = getModelForClass(GMRecord);
export function loadGMRecordModel(connect: mongoose.Connection) {
GMRecordModel = getModelForClass(GMRecord, {
existingConnection: connect
});
}
export interface GMRecordType extends Pick<DocumentType<GMRecord>, keyof GMRecord>{};