31 lines
No EOL
717 B
TypeScript
31 lines
No EOL
717 B
TypeScript
import { Entity, Column } from "typeorm";
|
|
import { AbstractEntity } from "./AbstractEntity.js";
|
|
import { UserRole } from "../enums/UserRole.js";
|
|
|
|
/**
|
|
* Entity describing a user
|
|
*/
|
|
@Entity({ name: "user" })
|
|
export class UserEntity extends AbstractEntity {
|
|
@Column({ nullable: false, name: "user_name" })
|
|
userName!: string;
|
|
|
|
@Column({ nullable: false })
|
|
email!: string;
|
|
|
|
@Column({ nullable: false })
|
|
password!: string;
|
|
|
|
@Column({ nullable: true, name: "first_name" })
|
|
firstName?: string;
|
|
|
|
@Column({ nullable: true, name: "last_name" })
|
|
lastName?: string;
|
|
|
|
@Column({
|
|
type: "enum",
|
|
enum: UserRole,
|
|
default: UserRole.USER,
|
|
})
|
|
role!: UserRole;
|
|
} |