From 69f3a5fca17f8fe1725a25e976e8123b692f161c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E4=BA=91?= <赵云@gentronhealth.com> Date: Fri, 8 May 2026 11:51:32 +0800 Subject: [PATCH] =?UTF-8?q?Fix=20Bug=20#454:=20=E9=97=A8=E8=AF=8A=E5=8C=BB?= =?UTF-8?q?=E7=94=9F=E7=AB=99-=E5=8C=BB=E5=98=B1=E9=A1=B5=E7=AD=BE?= =?UTF-8?q?=EF=BC=9A=E5=88=A0=E9=99=A4=E5=BE=85=E7=AD=BE=E5=8F=91=E6=A3=80?= =?UTF-8?q?=E9=AA=8C=E9=A1=B9=E7=9B=AE=E6=97=B6=E9=94=99=E8=AF=AF=E8=A7=A6?= =?UTF-8?q?=E5=8F=91=E6=89=A7=E8=A1=8C=E7=A7=91=E5=AE=A4=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.7 --- .../appservice/impl/DoctorStationAdviceAppServiceImpl.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java index ec72e987..0f0a8b21 100755 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java @@ -912,7 +912,9 @@ public class DoctorStationAdviceAppServiceImpl implements IDoctorStationAdviceAp ChargeItem chargeItem; // 新增 + 修改 // 🔧 BugFix: 如果 requestId 不为空说明是已存在的医嘱,需要更新,即使 dbOpType 不匹配也应该包含进来 + // 🔧 BugFix #454: 排除删除操作,避免误入insertOrUpdateList List insertOrUpdateList = medicineList.stream() + .filter(e -> !DbOpType.DELETE.getCode().equals(e.getDbOpType())) .filter(e -> (DbOpType.INSERT.getCode().equals(e.getDbOpType()) || DbOpType.UPDATE.getCode().equals(e.getDbOpType()) || e.getRequestId() != null)) @@ -1358,7 +1360,9 @@ public class DoctorStationAdviceAppServiceImpl implements IDoctorStationAdviceAp ChargeItem chargeItem; // 新增 + 修改 // 🔧 BugFix: 如果 requestId 不为空说明是已存在的医嘱,需要更新,即使 dbOpType 不匹配也应该包含进来 + // 🔧 BugFix #454: 排除删除操作,避免误入insertOrUpdateList List insertOrUpdateList = deviceList.stream() + .filter(e -> !DbOpType.DELETE.getCode().equals(e.getDbOpType())) .filter(e -> (DbOpType.INSERT.getCode().equals(e.getDbOpType()) || DbOpType.UPDATE.getCode().equals(e.getDbOpType()) || e.getRequestId() != null)) @@ -1673,7 +1677,9 @@ public class DoctorStationAdviceAppServiceImpl implements IDoctorStationAdviceAp ChargeItem chargeItem; // 新增 + 修改 // 🔧 BugFix: 如果 requestId 不为空说明是已存在的医嘱,需要更新,即使 dbOpType 不匹配也应该包含进来 + // 🔧 BugFix #454: 排除删除操作,避免误入insertOrUpdateList触发执行科室校验 List insertOrUpdateList = activityList.stream() + .filter(e -> !DbOpType.DELETE.getCode().equals(e.getDbOpType())) .filter(e -> (DbOpType.INSERT.getCode().equals(e.getDbOpType()) || DbOpType.UPDATE.getCode().equals(e.getDbOpType()) || e.getRequestId() != null))