chore: add user entity and role entity

This commit is contained in:
mahyargdz
2025-01-19 11:42:15 +03:30
parent 583fa52160
commit 58c9bfa912
6 changed files with 71 additions and 8 deletions
@@ -0,0 +1,9 @@
import { BaseEntity, Column, Entity } from "typeorm";
import { RoleEnum } from "../enums/role.enum";
@Entity()
export class Role extends BaseEntity {
@Column({ type: "enum", enum: RoleEnum, default: RoleEnum.USER, nullable: false })
name: RoleEnum;
}
+10 -7
View File
@@ -1,14 +1,14 @@
import { Column, Entity, PrimaryGeneratedColumn } from "typeorm";
import { Column, Entity, OneToOne } from "typeorm";
import { Role } from "./role.entity";
import { BaseEntity } from "../../../common/entities/base.entity";
@Entity()
export class User {
@PrimaryGeneratedColumn("uuid")
id: string;
@Column({ type: "varchar", length: 150, unique: true })
export class User extends BaseEntity {
@Column({ type: "varchar", length: 150, unique: true, nullable: true })
email: string;
@Column({ type: "varchar", length: 11, unique: true })
@Column({ type: "varchar", length: 11, unique: true, nullable: true })
phoneNumber: string;
@Column({ type: "varchar", length: 150 })
@@ -25,4 +25,7 @@ export class User {
@Column({ type: "varchar", length: 100 })
nationalCode: string;
@OneToOne(() => Role, { eager: true, cascade: true, onDelete: "SET NULL" })
role: Role;
}
+6
View File
@@ -0,0 +1,6 @@
export enum RoleEnum {
SUPER_ADMIN = "super_admin",
ADMIN = "admin",
USER = "user",
VISITOR = "visitor",
}
@@ -6,7 +6,7 @@ import { User } from "../entities/user.entity";
@Injectable()
export class UserRepository extends Repository<User> {
constructor(@InjectRepository(User) private userRepository: Repository<User>) {
constructor(@InjectRepository(User) userRepository: Repository<User>) {
super(userRepository.target, userRepository.manager, userRepository.queryRunner);
}
}