diff --git a/openhis-ui-vue3/src/views/doctorstation/components/inspection/inspectionApplication.vue b/openhis-ui-vue3/src/views/doctorstation/components/inspection/inspectionApplication.vue index 3147dcd8..f008ea72 100644 --- a/openhis-ui-vue3/src/views/doctorstation/components/inspection/inspectionApplication.vue +++ b/openhis-ui-vue3/src/views/doctorstation/components/inspection/inspectionApplication.vue @@ -540,7 +540,8 @@ import { deleteInspectionApplication, getApplyList, saveInspectionApplication, getInspectionTypeList, - getInspectionItemList + getInspectionItemList, + getEncounterDiagnosis } from '../api' import useUserStore from '@/store/modules/user.js' // 迁移到 hiprint @@ -605,6 +606,27 @@ async function initData() { generateApplicationNo().then((newApplyNo) => { formData.applyNo = newApplyNo }) + + // 获取主诊断信息 + try { + const res = await getEncounterDiagnosis(props.patientInfo.encounterId) + if (res.code === 200 && res.data && res.data.length > 0) { + // 查找主诊断(maindiseFlag === 1) + const mainDiagnosis = res.data.find(item => item.maindiseFlag === 1) + if (mainDiagnosis) { + formData.clinicDiag = mainDiagnosis.name || '' + } else { + // 没有主诊断时清空临床诊断 + formData.clinicDiag = '' + } + } else { + // 没有诊断数据时清空临床诊断 + formData.clinicDiag = '' + } + } catch (error) { + console.error('获取主诊断信息失败:', error) + formData.clinicDiag = '' + } } } @@ -1151,6 +1173,28 @@ async function resetForm() { }) formRef.value?.clearValidate() + + // 获取主诊断信息 + if (props.patientInfo && props.patientInfo.encounterId) { + try { + const res = await getEncounterDiagnosis(props.patientInfo.encounterId) + if (res.code === 200 && res.data && res.data.length > 0) { + const mainDiagnosis = res.data.find(item => item.maindiseFlag === 1) + if (mainDiagnosis) { + formData.clinicDiag = mainDiagnosis.name || '' + } else { + // 没有主诊断时清空临床诊断 + formData.clinicDiag = '' + } + } else { + // 没有诊断数据时清空临床诊断 + formData.clinicDiag = '' + } + } catch (error) { + console.error('获取主诊断信息失败:', error) + formData.clinicDiag = '' + } + } } // 保存