import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, ManyToOne, JoinColumn, Unique, } from 'typeorm'; import { User } from './user.entity'; import { Department } from './department.entity'; @Entity('user_departments') @Unique(['userId', 'departmentId']) export class UserDepartment { @PrimaryGeneratedColumn() id: number; @Column({ name: 'user_id', type: 'integer' }) userId: number; @ManyToOne(() => User, { onDelete: 'CASCADE' }) @JoinColumn({ name: 'user_id' }) user: User; @Column({ name: 'department_id', type: 'integer' }) departmentId: number; @ManyToOne(() => Department, { onDelete: 'CASCADE' }) @JoinColumn({ name: 'department_id' }) department: Department; @Column({ name: 'is_default', type: 'boolean', default: false }) isDefault: boolean; @CreateDateColumn({ name: 'created_at' }) createdAt: Date; }