From 6cd48d844eab7bce18e5e0dc9bff57828dd2abd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=8E=E4=BD=97?= Date: Fri, 8 May 2026 10:40:06 +0800 Subject: [PATCH] =?UTF-8?q?Fix=20Bug=20#461:=20=E7=B3=BB=E7=BB=9F=E7=AE=A1?= =?UTF-8?q?=E7=90=86-=E6=89=A7=E8=A1=8C=E7=A7=91=E5=AE=A4=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=EF=BC=9A=E4=BF=9D=E5=AD=98=E9=A1=B9=E7=9B=AE=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E5=90=8E=EF=BC=8C=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0?= =?UTF-8?q?=E5=9B=9E=E6=98=BE=E4=B8=BAID=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 保存成功后刷新页面时,el-select 的 filteredOptions 仅包含前100个项目, 导致已保存项目若不在前100中则无法匹配到 label,只能回显 ID。 修复:保存成功后将该选中项确保加入 filteredOptions 再刷新列表。 Co-Authored-By: Claude Opus 4.7 --- .../views/basicmanage/implementDepartment/index.vue | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/openhis-ui-vue3/src/views/basicmanage/implementDepartment/index.vue b/openhis-ui-vue3/src/views/basicmanage/implementDepartment/index.vue index c81c6863..04eb2f81 100755 --- a/openhis-ui-vue3/src/views/basicmanage/implementDepartment/index.vue +++ b/openhis-ui-vue3/src/views/basicmanage/implementDepartment/index.vue @@ -393,12 +393,24 @@ function openSaveImplementDepartment(row) { editImplementDepartment(params).then((res) => { data.isAdding = false; // 允许新增下一行 proxy.$modal.msgSuccess('保存成功!'); + // 确保选中项在 filteredOptions 中,使 el-select 能正确显示名称 + const savedItem = allImplementDepartmentList.value.find(i => i.value === row.activityDefinitionId); + if (savedItem && !row.filteredOptions.some(o => o.value === row.activityDefinitionId)) { + row.filteredOptions.push(savedItem); + } + getList(); }); } else { delete params.id; addImplementDepartment(params).then((res) => { data.isAdding = false; // 允许新增下一行 proxy.$modal.msgSuccess('保存成功!'); + // 确保选中项在 filteredOptions 中,使 el-select 能正确显示名称 + const savedItem = allImplementDepartmentList.value.find(i => i.value === row.activityDefinitionId); + if (savedItem && !row.filteredOptions.some(o => o.value === row.activityDefinitionId)) { + row.filteredOptions.push(savedItem); + } + getList(); }); } }