import { getModelForClass, index, modelOptions, prop } from '@typegoose/typegoose' import { dbconn } from 'decorators/dbconn' import { BaseModule } from './Base' @dbconn() @index({ user: 1, activity: 1 }, { unique: false }) @modelOptions({ schemaOptions: { collection: 'explore_record', timestamps: true }, }) class ExploreRecordClass extends BaseModule { @prop({ required: true }) public user: string @prop({ required: true }) public activity: string @prop() public step: number /** * 0: 未完成 * 1: 已完成 * -1: 无效 */ @prop({ default: 0 }) public status: number public toJson() { return { user: this.user, activity: this.activity, step: this.step, status: this.status, } } } export const ExploreRecord = getModelForClass(ExploreRecordClass, { existingConnection: ExploreRecordClass['db'] })