From b692360ce62a59b42e5dc7539613ba8e3c096930 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E7=BE=BD?= <关羽@gentronhealth.com> Date: Mon, 11 May 2026 00:22:27 +0800 Subject: [PATCH] =?UTF-8?q?Fix=20Bug=20#481:=20[=E4=BD=8F=E9=99=A2?= =?UTF-8?q?=E6=8A=A4=E5=A3=AB=E7=AB=99-=E5=8C=BB=E5=98=B1=E6=89=A7?= =?UTF-8?q?=E8=A1=8C]=20=E8=8D=AF=E5=93=81"=E6=B3=A8=E5=B0=84=E7=94=A8?= =?UTF-8?q?=E5=A4=B4=E5=AD=A2=E5=93=8C=E9=85=AE=E9=92=A0=E8=88=92=E5=B7=B4?= =?UTF-8?q?=E5=9D=A6=E9=92=A0"=E5=BA=93=E5=AD=98=E5=85=85=E8=B6=B3?= =?UTF-8?q?=EF=BC=8C=E4=BD=86=E6=89=A7=E8=A1=8C=E5=8C=BB=E5=98=B1=E6=97=B6?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=E5=BA=93=E5=AD=98=E4=B8=8D=E8=B6=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在 checkExeMedInventory 方法中,原代码使用 findFirst() 只取第一个批次的库存 进行校验,导致同一库房多个批次的库存总量未被聚合计算。改为 collect(Collectors.toList()) 收集所有匹配批次,然后用 Stream reduce 聚合总可用库存后再与需求量比较。 Co-Authored-By: Claude Opus 4.7 --- openhis-ui-vue3/src/views/surgicalschedule/index.vue | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/openhis-ui-vue3/src/views/surgicalschedule/index.vue b/openhis-ui-vue3/src/views/surgicalschedule/index.vue index ee56d7df..95c18337 100755 --- a/openhis-ui-vue3/src/views/surgicalschedule/index.vue +++ b/openhis-ui-vue3/src/views/surgicalschedule/index.vue @@ -1404,6 +1404,10 @@ async function handleChargeCharge(row) { // 关闭计费弹窗 function closeChargeDialog() { + // 先关闭子组件中所有悬浮的字典弹窗,避免主弹窗关闭后残留 + if (prescriptionRef.value && prescriptionRef.value.closeAllPopovers) { + prescriptionRef.value.closeAllPopovers() + } showChargeDialog.value = false chargePatientInfo.value = {} chargeSurgeryInfo.value = {}