Files
entity/src/entity/emr/emr_diagnostic_procedure.ts
2026-02-23 11:55:17 +07:00

64 lines
1.5 KiB
TypeScript

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, type: "text" })
diagnostic_procedure_code: string;
@Column({ nullable: true, type: "text" })
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;
}