From f58b1d61cb9313f9c05f4dcd95dcbb7d5f416db5 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期三, 09 九月 2026 16:51:23 +0800
Subject: [PATCH] 【景宁】景宁再入院逻辑调整

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java |   27 +++++++++++++++++++++++++--
 1 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
index 8dbae00..3f7999d 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -204,6 +204,10 @@
 
     @Value("${spring.profiles.active}")
     private String active;
+    @Autowired
+    private PatMedOperationMapper patMedOperationMapper;
+    @Autowired
+    private PatMedOperationItemMapper patMedOperationItemMapper;
 
     /**
      * 鏌ヨ鍗曚竴浠诲姟锛堥殢璁匡級
@@ -667,8 +671,12 @@
         patMedInhosp.setInhospstate("0");
         List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
         PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(serviceSubtask1.getPatid());
-
-        if (patMedInhospList.size() > 0) {
+        //鏅畞 鏂板鍐嶆闅忚涓嶈兘瑙﹀彂鎮h�呭啀鍏ラ櫌
+        boolean inhospAgain = true;
+        if (serviceSubtask1.getOrgid().equals("47255004333112711A1001")) {
+            inhospAgain = false;
+        }
+        if (patMedInhospList.size() > 0 && inhospAgain) {
             serviceSubtask1.setIsVisitAgain(2);
             serviceSubtask1.setRemark(StringUtils.isNotEmpty(serviceSubtask.getRemark()) ? serviceSubtask.getRemark() + ";鎮h�呭啀鍏ラ櫌浜�" : "鎮h�呭啀鍏ラ櫌浜�");
             serviceSubtask1.setSendstate(4L);
@@ -1121,6 +1129,15 @@
                                 patMedOuthosp.setServerState("0");
                                 patMedOuthospService.updatePatMedOuthosp(patMedOuthosp);
                             }
+                        }
+                    } else if (serviceSubtask.getServiceType().equals("19")) {
+                        ServiceTask st = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
+                        //濡傛灉浠诲姟鏄暱鏈熶换鍔★紝闇�瑕佸皢璇ユ偅鑰呯殑鎵嬫湳璇︽儏鏁版嵁
+                        if (st != null && st.getLongTask() == 1 && ObjectUtils.isNotEmpty(serviceSubtask.getOperationItemId())) {
+                            PatMedOperationItem patMedOperationItem = new PatMedOperationItem();
+                            patMedOperationItem.setOpercheckFlag("0");
+                            patMedOperationItem.setId(serviceSubtask.getOperationItemId());
+                            patMedOperationItemMapper.updatePatMedOperationItem(patMedOperationItem);
                         }
                     }
                 }
@@ -2849,6 +2866,12 @@
                 collect = rawData.stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDrcode()).orElse("Unknown")));
                 break;
             case "management_doctor_code":
+                rawData = rawData.stream()
+                        .peek(item -> {
+                            item.setDrname(item.getManagementDoctor());
+                            item.setDrcode(item.getManagementDoctorCode());
+                        })
+                        .collect(Collectors.toList());
                 collect = rawData.stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getManagementDoctorCode()).orElse("Unknown")));
                 break;
             case "deptcode":

--
Gitblit v1.9.3