diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/components/order/index.vue b/openhis-ui-vue3/src/views/inpatientDoctor/home/components/order/index.vue index daae81c6e..177d23461 100755 --- a/openhis-ui-vue3/src/views/inpatientDoctor/home/components/order/index.vue +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/components/order/index.vue @@ -1477,11 +1477,18 @@ function handleSaveBatch() { .then((res) => { if (res.code === 200) { proxy.$modal.msgSuccess('保存成功'); - // 修复【#405】:保存成功后重置所有待保存行的 isEdit 为 false,锁定医嘱不再编辑 + // 修复 Bug #405:保存成功后锁定所有待保存行,避免医嘱条目仍处于可编辑状态 + // saveList 中的 item 与 prescriptionList 是同一对象引用,直接修改即可 saveList.forEach(item => { - const row = prescriptionList.value.find(r => r.uniqueKey === item.uniqueKey); - if (row) row.isEdit = false; + item.isEdit = false; }); + // 兜底:锁定所有 statusEnum == 1 的行,确保没有遗漏 + prescriptionList.value.forEach(row => { + if (row.statusEnum == 1) { + row.isEdit = false; + } + }); + expandOrder.value = []; getListInfo(false); nextId.value = 1; isSaving.value = false;