36 lines
1.0 KiB
TypeScript
36 lines
1.0 KiB
TypeScript
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 })
|