feat: refactor payload structure in encounter entry handler for improved clarity and functionality

This commit is contained in:
riefive
2025-11-26 15:54:46 +07:00
parent a780818412
commit 3a4822d5cf
+28 -34
View File
@@ -451,39 +451,6 @@ export function useEncounterEntry(props: {
const registeredAtValue = formValues.registeredAt || formValues.registerDate || ''
const visitDateValue = formValues.visitDate || formValues.registeredAt || formValues.registerDate || ''
const payload: any = {
patient_id: patientId,
registeredAt: formatDate(registeredAtValue),
visitDate: formatDate(visitDateValue),
class_code: formValues.class_code || props.classCode || '',
subClass_code: formValues.subClass_code || props.subClassCode || '',
infra_id: formValues.infra_id ?? null,
unit_id: formValues.unit_id ?? null,
unit_code: formValues.unit_code ?? null,
appointment_doctor_code: formValues.appointment_doctor_code || null,
appointment_doctor_id:
formValues.appointment_doctor_id ?? (formValues.doctorId ? Number(formValues.doctorId) : null),
responsible_doctor_id:
formValues.responsible_doctor_id ?? (formValues.doctorId ? Number(formValues.doctorId) : null),
appointment_id: formValues.appointment_id ?? null,
refSource_name: formValues.refSource_name ?? '',
refTypeCode: formValues.refTypeCode ?? formValues.ref_type_code ?? null,
vclaimReference: vclaimReference ?? null,
paymentType: formValues.paymentType,
}
if (employeeId && employeeId > 0) {
payload.adm_employee_id = employeeId
}
if (specialist_id) {
payload.specialist_id = specialist_id
}
if (subspecialist_id) {
payload.subspecialist_id = subspecialist_id
}
const memberNumber = formValues.member_number ?? formValues.cardNumber ?? formValues.memberNumber ?? null
const refNumber = formValues.ref_number ?? formValues.sepNumber ?? formValues.refNumber ?? null
@@ -500,10 +467,37 @@ export function useEncounterEntry(props: {
}
}
const payload: any = {
patient_id: patientId,
appointment_doctor_code: formValues.doctorId || null,
class_code: props.classCode || '',
subClass_code: props.subClassCode || '',
infra_id: formValues.infra_id ?? null,
unit_code: userStore?.user?.unit_code ?? null,
refSource_name: formValues.refSource_name ?? 'RSSA',
refTypeCode: formValues.paymentType === 'jkn' ? 'bpjs' : '',
vclaimReference: vclaimReference.value ?? null,
paymentType: formValues.paymentType,
registeredAt: formatDate(registeredAtValue),
visitDate: formatDate(visitDateValue),
}
if (props.classCode !== 'inpatient') {
delete payload.infra_id
}
if (employeeId && employeeId > 0) {
payload.adm_employee_id = employeeId
}
if (specialist_id) {
payload.specialist_id = specialist_id
}
if (subspecialist_id) {
payload.subspecialist_id = subspecialist_id
}
if (paymentMethodCode) {
payload.paymentMethod_code = paymentMethodCode
}
if (paymentMethodCode === 'insurance') {
payload.insuranceCompany_id = formValues.insuranceCompany_id ?? null
if (memberNumber) payload.member_number = memberNumber