From 5059f24c60714a5b8f2a0c023c6b09a003e6a696 Mon Sep 17 00:00:00 2001 From: riefive Date: Wed, 3 Dec 2025 15:37:39 +0700 Subject: [PATCH] fix: reload object encounter --- app/components/app/encounter/entry-form.vue | 8 +++++++- app/components/content/encounter/entry.vue | 1 - app/handlers/encounter-entry.handler.ts | 10 ++++++---- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/app/components/app/encounter/entry-form.vue b/app/components/app/encounter/entry-form.vue index 5d4b660e..34497de7 100644 --- a/app/components/app/encounter/entry-form.vue +++ b/app/components/app/encounter/entry-form.vue @@ -92,6 +92,7 @@ const mode = props.mode !== undefined ? props.mode : 'add' const isSepValid = computed(() => props.isSepValid || false) const isCheckingSep = computed(() => props.isCheckingSep || false) const isInsurancePayment = computed(() => ['insurance', 'jkn'].includes(paymentMethodCode.value)) +const isDateLoading = ref(false) const debouncedSepNumber = refDebounced(sepNumber, 500) const debouncedCardNumber = refDebounced(cardNumber, 500) const unitFullName = ref('') // Unit, specialist, subspecialist @@ -126,12 +127,16 @@ watch( medicalRecordNumber.value = objects?.medicalRecordNumber || '' doctorCode.value = objects?.doctorCode || '' // subSpecialistCode.value = objects?.subSpecialistCode || '' - registerDate.value = objects?.registerDate || '' paymentMethodCode.value = objects?.paymentMethodCode || '' patientCategory.value = objects?.patientCategory || '' cardNumber.value = objects?.cardNumber || '' sepType.value = objects?.sepType || '' sepNumber.value = objects?.sepNumber || '' + isDateLoading.value = true + setTimeout(() => { + registerDate.value = objects?.registerDate || '' + isDateLoading.value = false + }, 100) } }, { deep: true, immediate: true }, @@ -352,6 +357,7 @@ defineExpose({ { await handleInit() if (props.formType === 'edit' && props.id > 0) { await getFetchEncounterDetail() - console.log(formObjects.value) } }) diff --git a/app/handlers/encounter-entry.handler.ts b/app/handlers/encounter-entry.handler.ts index 8e62ace2..fb4e8dd4 100644 --- a/app/handlers/encounter-entry.handler.ts +++ b/app/handlers/encounter-entry.handler.ts @@ -391,7 +391,7 @@ export function useEncounterEntry(props: { formData.medicalRecordNumber = selectedPatientObject.value.number || '' } - const doctorId = encounter.appointment_doctor_id || encounter.responsible_doctor_id + const doctorId = encounter.appointment_doctor_code || encounter.responsible_doctor_code if (doctorId) { formData.doctorId = String(doctorId) } @@ -419,12 +419,14 @@ export function useEncounterEntry(props: { if (encounter.registeredAt) { const date = new Date(encounter.registeredAt) formData.registerDate = date.toISOString().split('T')[0] - } else if (encounter.visitDate) { + } + if (encounter.visitDate) { const date = new Date(encounter.visitDate) formData.registerDate = date.toISOString().split('T')[0] } if (encounter.paymentMethod_code) { + formData.paymentMethodCode = encounter.paymentMethod_code if (encounter.paymentMethod_code === 'insurance') { formData.paymentType = 'jkn' } else { @@ -450,8 +452,6 @@ export function useEncounterEntry(props: { } else if (encounter.ref_number) { formData.sepReference = encounter.ref_number } - - formObjects.value = formData if (formData.sepNumber) { sepNumber.value = formData.sepNumber @@ -459,6 +459,8 @@ export function useEncounterEntry(props: { if (formData.subSpecialistId) { await handleFetchDoctors(formData.subSpecialistId) } + + formObjects.value = { ...formData } } async function handleSaveEncounter(formValues: any) {