diff --git a/src/entity/emr/emr_diagnostic_procedure.ts b/src/entity/emr/emr_diagnostic_procedure.ts new file mode 100644 index 0000000..9c16789 --- /dev/null +++ b/src/entity/emr/emr_diagnostic_procedure.ts @@ -0,0 +1,63 @@ +import { + Entity, + PrimaryGeneratedColumn, + Column, + CreateDateColumn, + UpdateDateColumn, + DeleteDateColumn, + ManyToOne, + OneToOne, + JoinColumn, +} from "typeorm"; +import { EmrDiagnosisType } from "../../enum/emrDiagnosisType"; +import { EmrRegistrationOutpatient } from "./emr_registration_outpatient"; +import { DiagnosticProcedure } from "../diagnostic_procedure"; + +@Entity("emr_diagnostic_procedure", { schema: "emr" }) +export class EmrDiagnosticProcedure { + @PrimaryGeneratedColumn("uuid") + id: string; + + @ManyToOne(() => EmrRegistrationOutpatient, { onDelete: "CASCADE" }) + @JoinColumn() + id_emr_outpatient: EmrRegistrationOutpatient; + + @ManyToOne(() => DiagnosticProcedure, { onDelete: "CASCADE", nullable: true }) + @JoinColumn() + id_diagnostic_procedure: DiagnosticProcedure; + + @Column({ nullable: true, length: 512 }) + diagnostic_procedure_code: string; + + @Column({ nullable: true, length: 512 }) + diagnostic_procedure: string; + + @Column({ + type: "enum", + enum: EmrDiagnosisType, + nullable: false, + }) + diagnosis_type: EmrDiagnosisType; + + @Column() + @CreateDateColumn() + created_at: Date; + + @Column({ nullable: true, length: 256 }) + created_by: string; + + @Column({ nullable: true }) + @UpdateDateColumn() + updated_at: Date; + + @Column({ nullable: true, length: 256 }) + updated_by: string; + + @Column({ nullable: true }) + @DeleteDateColumn() + deleted_at: Date; + + @Column({ nullable: true, length: 256 }) + deleted_by: string; +} + diff --git a/src/schema/emr.ts b/src/schema/emr.ts index 6e83b45..7ddbf4f 100644 --- a/src/schema/emr.ts +++ b/src/schema/emr.ts @@ -9,6 +9,7 @@ export * from "../entity/emr/emr_vital_signs"; export * from "../entity/emr/emr_physical_examination"; export * from "../entity/emr/emr_diet"; export * from "../entity/emr/emr_diagnosis"; +export * from "../entity/emr/emr_diagnostic_procedure"; export * from "../types/registration_type"; export * from "../types/registration_status";