import { BaseModule } from './Base' import { dbconn } from '../decorators/dbconn' import { getModelForClass, index, modelOptions, prop } from '@typegoose/typegoose' @dbconn() @index({ accountId: 1 }, { unique: false }) @index({ templateId: 1 }, { unique: false }) @index({ type: 1 }, { unique: false }) @index({ accountId: 1, templateId: 1 }, { unique: true }) @index({ accountId: 1, type: 1 }, { unique: true }) @modelOptions({ schemaOptions: { collection: 'subscribe_record', timestamps: true } }) class SubscribeRecordClass extends BaseModule { @prop() public gameId: string @prop() public channel: string @prop() public accountId: string @prop() public templateId: string /** * 定义好的类型, 以 jsub_ 开头 * @type {string} */ @prop() public type: string @prop({ default: 0 }) public count: number @prop({ default: 0 }) public lastSend: number @prop({ default: 0 }) public lastCheck: number } export const SubscribeRecord = getModelForClass(SubscribeRecordClass, { existingConnection: SubscribeRecordClass.db })