diff --git a/src/views/Department-entry/Medical-examination-vehicle.vue b/src/views/Department-entry/Medical-examination-vehicle.vue index b10f7d1..b1b6a7f 100644 --- a/src/views/Department-entry/Medical-examination-vehicle.vue +++ b/src/views/Department-entry/Medical-examination-vehicle.vue @@ -1708,12 +1708,78 @@ const handleSaveAllResults = async () => { // 修改汇总保存方法 const handleSummarySave = async () => { try { + // 检查summaryRef是否存在 if (summaryRef.value) { + // 如果在汇总标签页,直接调用组件方法 await summaryRef.value.saveSummary() return true + } else { + // 如果不在汇总标签页,需要手动构建汇总内容并保存 + // 格式化汇总数据 + let summaryContent = '' + + // 一般检查 + if (conclusionData.value.general?.summary) { + summaryContent += '【一般检查】\n' + conclusionData.value.general.summary + '\n\n' + } + + // 超声检查 + if (conclusionData.value.ultrasound?.finding || conclusionData.value.ultrasound?.diagnosis) { + summaryContent += '【超声】\n' + if (conclusionData.value.ultrasound.finding) { + summaryContent += '检查所见:' + conclusionData.value.ultrasound.finding + '\n' + } + if (conclusionData.value.ultrasound.diagnosis) { + summaryContent += '检查结果:' + conclusionData.value.ultrasound.diagnosis + '\n' + } + summaryContent += '\n' + } + + // 心电图检查 + if (conclusionData.value.ecg?.finding || conclusionData.value.ecg?.diagnosis) { + summaryContent += '【心电图】\n' + if (conclusionData.value.ecg.finding) { + summaryContent += '检查所见:' + conclusionData.value.ecg.finding + '\n' + } + if (conclusionData.value.ecg.diagnosis) { + summaryContent += '检查结果:' + conclusionData.value.ecg.diagnosis + '\n' + } + summaryContent += '\n' + } + + // 血常规 + if (conclusionData.value.blood?.summary) { + summaryContent += '【血常规】\n' + conclusionData.value.blood.summary + '\n\n' + } + + // 尿常规 + if (conclusionData.value.urine?.summary) { + summaryContent += '【尿常规】\n' + conclusionData.value.urine.summary + '\n\n' + } + + // 生化 + if (conclusionData.value.biochemical?.summary) { + summaryContent += '【生化】\n' + conclusionData.value.biochemical.summary + '\n\n' + } + + // 如果有汇总内容,则保存 + if (summaryContent.trim()) { + // 准备保存的数据 + const saveData = { + medicalSn: selectedPatient.value?.medicalSn, + summaryResult: summaryContent + } + + // 调用API保存数据 + await PatientApi.updatemedicalSn(saveData) + return true + } + + return true // 即使没有内容也返回成功 } - return false + } catch (error) { + console.error('汇总保存失败:', error) ElMessage.error('汇总保存失败: ' + error.message) return false }