import { Column, ColumnType, Entity, ManyToOne, OneToMany, PrimaryGeneratedColumn } from "typeorm"; import { getTypeByORM } from "../../../migrations/ormHelper"; import { equipmentType } from "./equipmentType"; import { damageReport } from "../damageReport"; @Entity() export class equipment { @PrimaryGeneratedColumn("uuid") id: string; @Column({ type: "varchar", length: 255, nullable: true, unique: true }) code?: string; @Column({ type: "varchar", length: 255 }) name: string; @Column({ type: "varchar", length: 255 }) location: string; @Column({ type: getTypeByORM("datetime").type as ColumnType }) commissioned: Date; @Column({ type: getTypeByORM("datetime").type as ColumnType, nullable: true }) decommissioned?: Date; @Column() equipmentTypeId: string; @ManyToOne(() => equipmentType, { nullable: false, onDelete: "RESTRICT", onUpdate: "RESTRICT", }) equipmentType: equipmentType; @OneToMany(() => damageReport, (d) => d.equipment, { cascade: ["insert"] }) reports: damageReport[]; }