forked from yoone/API
1
0
Fork 0
API/src/entity/user.entity.ts

40 lines
934 B
TypeScript

// src/entity/user.entity.ts
import { Exclude } from 'class-transformer';
import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
@Entity('user')
export class User {
@PrimaryGeneratedColumn()
id: number;
@Column({ unique: true })
username: string;
@Column()
@Exclude()
password: string;
// @Column() // 默认角色为管理员
// roleId: number; // 角色 (如:admin, editor, viewer)
@Column({ type: 'simple-array', nullable: true })
permissions: string[]; // 自定义权限 (如:['user:add', 'user:edit'])
// 新增邮箱字段,可选且唯一
@Column({ unique: true, nullable: true })
email?: string;
@Column({ default: false })
isSuper: boolean; // 超级管理员
@Column({ default: false })
isAdmin: boolean; // 管理员
@Column({ default: true })
isActive: boolean; // 用户是否启用
// 备注字段(可选)
@Column({ nullable: true })
remark?: string;
}