From 528de44a92bd6316a23268de35d978d643b73449 Mon Sep 17 00:00:00 2001 From: dpurbosakti Date: Wed, 10 Sep 2025 12:56:13 +0700 Subject: [PATCH] feat (encounter): update wip --- .../domain/references/clinical/clinical.go | 37 +++++++++++++++++++ .../main-use-case/encounter/helper.go | 9 +++++ .../use-case/main-use-case/encounter/lib.go | 2 +- 3 files changed, 47 insertions(+), 1 deletion(-) diff --git a/internal/domain/references/clinical/clinical.go b/internal/domain/references/clinical/clinical.go index e5c85682..b7709333 100644 --- a/internal/domain/references/clinical/clinical.go +++ b/internal/domain/references/clinical/clinical.go @@ -40,3 +40,40 @@ const ( ICMedication InstructionCode = "medication" // Obat ICMaterial InstructionCode = "material" // BMHP ) + +type Soapi struct { + // Subject + PrimaryComplaint string `json:"pri-compl"` + SecondaryComplaint string `json:"sec-compl"` + CurrentDiseaseHistory string `json:"cur-disea-hist"` + PastDiseaseHistory string `json:"pas-disea-hist"` + FamilyDiseaseHistory string `json:"fam-disea-hist"` + AllergyHistory string `json:"alg-hist"` + AllergyReaction string `json:"alg-react"` + MedicationHistory string `json:"med-hist"` + + // Object + ConsciousnessLevel string `json:"consc-level"` + ConsciousnessLevelDet string `json:"consc-level-det"` + SystolicBloodPressure string `json:"syst-bp"` + DiastolicBloodPressure string `json:"diast-bp"` + HeartRate string `json:"hear-rt"` + Temperature string `json:"temp"` + SpO2 string `json:"spo2"` + Weight string `json:"weight"` + Height string `json:"height"` + + // Assessment + EarlyDiagnosis string `json:"early-diag"` + LateDiagnosis string `json:"late-diag"` + SecondaryDiag string `json:"sec-diag"` + + // Plan + Plan string `json:"plan"` + + // Instruction + InstructionDetail string `json:"detail"` + MedicalAction string `json:"med-act"` + Medication string `json:"medication"` + Material string `json:"material"` +} diff --git a/internal/use-case/main-use-case/encounter/helper.go b/internal/use-case/main-use-case/encounter/helper.go index 3e7e4b30..4a24900b 100644 --- a/internal/use-case/main-use-case/encounter/helper.go +++ b/internal/use-case/main-use-case/encounter/helper.go @@ -37,6 +37,15 @@ func setData[T *e.CreateDto | *e.UpdateDto](input T, data *e.Encounter) { data.Appointment_Id = inputSrc.Appointment_Id } +func setDataUpdate(src e.UpdateDto, dst *e.Encounter) { + dst.Appointment_Doctor_Id = src.Appointment_Doctor_Id + dst.Responsible_Doctor_Id = src.Responsible_Doctor_Id + dst.Unit_Id = src.Unit_Id + dst.Specialist_Id = src.Specialist_Id + dst.Subspecialist_Id = src.Subspecialist_Id + dst.VisitDate = src.VisitDate +} + func setDataDischarge(src e.DischargeDto, dst *e.Encounter) { dst.DischargeMethod_Code = src.DischargeMethod_Code dst.EarlyEducation = src.EarlyEducation diff --git a/internal/use-case/main-use-case/encounter/lib.go b/internal/use-case/main-use-case/encounter/lib.go index ae83c8c2..a0aaa94b 100644 --- a/internal/use-case/main-use-case/encounter/lib.go +++ b/internal/use-case/main-use-case/encounter/lib.go @@ -108,7 +108,7 @@ func ReadDetailData(input e.ReadDetailDto, event *pl.Event, dbx ...*gorm.DB) (*e func UpdateData(input e.UpdateDto, data *e.Encounter, event *pl.Event, dbx ...*gorm.DB) error { pl.SetLogInfo(event, data, "started", "DBUpdate") - setData(&input, data) + setDataUpdate(input, data) var tx *gorm.DB if len(dbx) > 0 {