From 71312b5aa2fba248e2e788dd11adbd2ef2da5a6e Mon Sep 17 00:00:00 2001 From: "fazri.is" Date: Wed, 29 Apr 2026 11:02:38 +0700 Subject: [PATCH] update --- src/entity/emr/emr_boarding_rooms.ts | 2 +- src/entity/inpatient_room_bed_details.ts | 135 +++++++++++++++++++++++ 2 files changed, 136 insertions(+), 1 deletion(-) create mode 100644 src/entity/inpatient_room_bed_details.ts diff --git a/src/entity/emr/emr_boarding_rooms.ts b/src/entity/emr/emr_boarding_rooms.ts index 06fdf84..a609968 100644 --- a/src/entity/emr/emr_boarding_rooms.ts +++ b/src/entity/emr/emr_boarding_rooms.ts @@ -33,7 +33,7 @@ export class EmrBoardingRoom { @Column({ nullable: true, }) - no_cm: string; + mrn: string; @Column({ nullable: false }) boarding_at: Date; diff --git a/src/entity/inpatient_room_bed_details.ts b/src/entity/inpatient_room_bed_details.ts new file mode 100644 index 0000000..0d42fee --- /dev/null +++ b/src/entity/inpatient_room_bed_details.ts @@ -0,0 +1,135 @@ +import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, DeleteDateColumn, ManyToOne, JoinColumn } from "typeorm"; +import { InpatientRoomBed } from "./inpatient_room_beds"; + +@Entity("inpatient_room_bed_details") +export class InpatientRoomBedDetail { + @PrimaryGeneratedColumn("uuid") + id: string; + + @ManyToOne(() => InpatientRoomBed, { onDelete: "NO ACTION" }) + @JoinColumn() + inpatient_room_bed: InpatientRoomBed; + + @Column({ type: "timestamp", nullable: true }) + admission_datetime: Date; + + @Column({ type: "timestamp", nullable: true }) + transfer_datetime: Date; + + @Column({ nullable: true, type: "text" }) + origin_care_unit: string; + + @Column({ nullable: true, type: "text" }) + destination_care_unit: string; + + @Column({ nullable: true, type: "text" }) + admission_indication: string; + + @Column({ nullable: true, type: "text" }) + primary_attending_physician: string; + + @Column({ nullable: true, type: "text", array: true }) + additional_attending_physicians: string[]; + + @Column({ nullable: true, type: "text" }) + primary_diagnosis: string; + + @Column({ nullable: true, type: "text", array: true }) + secondary_diagnoses: string[]; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_reason_condition_worsening: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_reason_staff_needed: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_reason_facility_needed: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_reason_supporting_exam: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_reason_other: boolean; + + @Column({ nullable: true, type: "text" }) + transfer_reason_other_text: string; + + @Column({ nullable: true, type: "text" }) + medical_history: string; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_method_wheelchair: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_method_stretcher: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_method_bed: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_risk_respiratory_arrest: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_risk_cardiac_arrest: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_risk_vomiting: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_risk_bleeding: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_risk_seizure: boolean; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_risk_other: boolean; + + @Column({ nullable: true, type: "text" }) + transfer_risk_other_text: string; + + @Column({ nullable: true, type: "text" }) + fall_risk: string; + + @Column({ nullable: true, type: "text" }) + pain: string; + + @Column({ nullable: true, type: "boolean", default: false }) + transfer_consent: boolean; + + @Column({ nullable: true, type: "text" }) + consenter_name: string; + + @Column({ nullable: true, type: "text" }) + consenter_relationship: string; + + @Column({ nullable: true, type: "text" }) + category_patient: string; + + @Column({ nullable: true, type: "text" }) + patient_or_family_signature: string; + + @Column({ nullable: true, type: "text" }) + staff_signature: string; + + @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; +}