import { modelOptions, prop } from '@typegoose/typegoose'; import { BaseModel } from 'free-midway-component'; import { isString } from 'lodash'; @modelOptions({ schemaOptions: { collection: 'admin' }, }) export class Admin extends BaseModel { @prop({ required: true, index: true, zh: '账号' }) account: string; @prop({ required: false, index: false, zh: '名称' }) nick_name: string; @prop({ required: false, index: false, zh: '密码', select: false, set: (val: string | object) => { if (isString(val)) { return { secret: val }; } return val; }, }) password: object; @prop({ required: false, index: false, zh: '是否是超级管理员', default: '1' }) is_super: string; @prop({ required: false, index: false, zh: '菜单' }) menus: Array; @prop({ required: false, index: false, zh: '是否启用', default: '0' }) is_use: string; }