import { ApiProperty } from '@nestjs/swagger'; import { User } from 'src/objects/user/user.entity'; import { Building } from 'src/objects/building/entities/building.entity'; import { Column, Entity, ManyToOne, PrimaryGeneratedColumn } from 'typeorm'; import { Group } from 'src/objects/group/group.entity'; import { Access } from 'src/objects/enums/access-control.enum'; @Entity() export class UserBuildingAccessControl { @PrimaryGeneratedColumn() id: number; @ApiProperty({ type: () => User }) @ManyToOne(() => User, { onDelete: 'CASCADE', onUpdate: 'CASCADE', }) user: User; @ApiProperty({ type: () => Building }) @ManyToOne(() => Building, { onDelete: 'CASCADE', onUpdate: 'CASCADE', }) building: Building; @ApiProperty({ type: () => Group }) @ManyToOne(() => Group, { onDelete: 'CASCADE', onUpdate: 'CASCADE', }) group: Group; @ApiProperty({ enum: Access }) @Column({ type: String }) access: Access; }