Files
backend/libs/common/src/modules/automation/entities/automation.entity.ts
2025-02-10 20:36:29 +04:00

38 lines
900 B
TypeScript

import { Column, Entity, JoinColumn, ManyToOne } from 'typeorm';
import { AutomationDto } from '../dtos';
import { AbstractEntity } from '../../abstract/entities/abstract.entity';
import { SpaceEntity } from '../../space/entities/space.entity';
@Entity({ name: 'automation' })
export class AutomationEntity extends AbstractEntity<AutomationDto> {
@Column({
type: 'uuid',
default: () => 'gen_random_uuid()',
nullable: false,
})
public uuid: string;
@Column({
nullable: false,
})
automationTuyaUuid: string;
@ManyToOne(() => SpaceEntity, (space) => space.scenes, {
nullable: false,
onDelete: 'CASCADE',
})
@JoinColumn({ name: 'space_uuid' })
space: SpaceEntity;
@Column({
nullable: false,
default: false,
})
public disabled: boolean;
constructor(partial: Partial<AutomationEntity>) {
super();
Object.assign(this, partial);
}
}