32 lines
926 B
TypeScript
32 lines
926 B
TypeScript
import { dbconn } from 'decorators/dbconn'
|
|
import { getModelForClass, index, modelOptions, mongoose, prop } from '@typegoose/typegoose'
|
|
import { Severity } from '@typegoose/typegoose/lib/internal/constants'
|
|
import { BaseModule } from './Base'
|
|
|
|
/**
|
|
* 管理员操作记录
|
|
*/
|
|
@dbconn()
|
|
@index({ user: 1 }, { unique: false })
|
|
@index({ name: 1 }, { unique: false })
|
|
@modelOptions({ schemaOptions: { collection: 'user_log', timestamps: true }, options: { allowMixed: Severity.ALLOW } })
|
|
class UserLogClass extends BaseModule {
|
|
@prop()
|
|
public user: string
|
|
@prop()
|
|
public name: string
|
|
@prop()
|
|
public method: string
|
|
@prop()
|
|
public path: string
|
|
@prop()
|
|
public referer: string
|
|
@prop()
|
|
public user_agent: string
|
|
@prop()
|
|
public ip: string
|
|
@prop({ type: mongoose.Schema.Types.Mixed })
|
|
public params: any
|
|
}
|
|
export const UserLog = getModelForClass(UserLogClass, { existingConnection: UserLogClass['db'] })
|