这个编辑按钮功能展示的数据为什么会不全,已确认状态下的数据展示不全。

This commit is contained in:
wangjian963
2026-03-19 17:50:06 +08:00
parent 83747d8626
commit dc2e4098ae
3 changed files with 133 additions and 30 deletions

View File

@@ -136,7 +136,7 @@
</el-form-item>
<el-form-item label="会诊确认参加医师">
<el-input v-model="formData.confirmingPhysician" type="textarea" disabled />
<el-input v-model="formData.confirmingPhysicianText" type="textarea" :rows="3" disabled />
</el-form-item>
<el-form-item label="会诊意见" required>
@@ -249,6 +249,7 @@ const formData = ref({
consultationPurpose: '',
provisionalDiagnosis: '',
confirmingPhysician: '',
confirmingPhysicianText: '', // 显示所有参与确认的医师
consultationOpinion: '',
confirmingPhysicianName: '',
confirmingDeptName: '',
@@ -311,7 +312,7 @@ const applyRowToForm = (row) => {
})
return
}
formData.value = {
id: row.id,
consultationRequestId: row.consultationRequestId,
@@ -329,6 +330,7 @@ const applyRowToForm = (row) => {
consultationPurpose: row.consultationPurpose,
provisionalDiagnosis: row.provisionalDiagnosis,
confirmingPhysician: row.confirmingPhysician || '',
confirmingPhysicianText: '', // 初始化为空稍后根据opinionList设置
consultationOpinion: '', // 先清空,后面从 opinionList 中获取
confirmingPhysicianName: row.confirmingPhysicianName || '',
confirmingDeptName: row.confirmingDeptName || '',
@@ -338,17 +340,22 @@ const applyRowToForm = (row) => {
submittingTime: row.submittingTime,
consultationStatus: row.consultationStatus
}
// 从会诊意见列表中获取当前医生的信息
// 从会诊意见列表中获取所有确认医师的信息,并生成显示文本
if (opinionList.value.length > 0) {
// 生成所有参与确认医师的文本(格式:科室-医生姓名;科室-医生姓名)
const allConfirmingPhysicians = opinionList.value.map(op => `${op.deptName}-${op.physicianName}`).join('')
formData.value.confirmingPhysicianText = allConfirmingPhysicians
// 从会诊意见列表中获取当前医生的信息
const currentPhysicianId = userStore.practitionerId || userStore.user?.practitionerId
const myOpinion = opinionList.value.find(op => op.physicianId === currentPhysicianId)
if (myOpinion) {
// 如果当前医生已确认,回显其信息
formData.value.confirmingPhysicianName = myOpinion.physicianName
formData.value.confirmingDeptName = myOpinion.deptName
// 回显会诊意见(去掉前缀"科室-医生"
if (myOpinion.opinion) {
// 格式:科室-医生:意见内容
@@ -361,7 +368,7 @@ const applyRowToForm = (row) => {
formData.value.consultationOpinion = opinionText
}
}
if (myOpinion.isSigned) {
formData.value.signature = myOpinion.physicianName
formData.value.signatureDate = myOpinion.signatureTime