import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, ManyToOne, JoinColumn } from 'typeorm'; import { RoleOrmEntity } from '../../../role/infra/database/role.orm-entity'; @Entity('users') export class UserOrmEntity { @PrimaryGeneratedColumn() id!: number; @Column({ type: 'varchar', length: 255 }) name!: string; @Column({ type: 'varchar', length: 255, unique: true }) email!: string; @Column({ type: 'varchar', length: 255 }) password!: string; @ManyToOne(() => RoleOrmEntity, { nullable: false, eager: true }) @JoinColumn({ name: 'role_id' }) role!: RoleOrmEntity; @Column({ type: 'varchar', length: 255, nullable: true, name: 'tenant_id' }) tenantId?: string; @Column({ type: 'varchar', length: 500, nullable: true, name: 'current_refresh_token' }) currentRefreshToken?: string; @Column({ type: 'boolean', default: true, name: 'is_active' }) isActive!: boolean; @CreateDateColumn({ name: 'created_at' }) createdAt!: Date; @UpdateDateColumn({ name: 'updated_at' }) updatedAt!: Date; }