From 3d4740d76f50222ce00587abea81b56afa35f6db Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期四, 12 三月 2026 14:44:45 +0800
Subject: [PATCH] 【丽水】先通过任务ID、部门code,判断ServiceTaskdept是否存在,不存在则新增,存在则修改

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java  |   27 +++++++--------------------
 smartor/src/main/java/com/smartor/service/impl/ServiceTaskdeptServiceImpl.java |   19 +++++++++++++++++++
 smartor/src/main/java/com/smartor/service/IServiceTaskdeptService.java         |    8 ++++++++
 3 files changed, 34 insertions(+), 20 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/IServiceTaskdeptService.java b/smartor/src/main/java/com/smartor/service/IServiceTaskdeptService.java
index 10664c5..3b46731 100644
--- a/smartor/src/main/java/com/smartor/service/IServiceTaskdeptService.java
+++ b/smartor/src/main/java/com/smartor/service/IServiceTaskdeptService.java
@@ -45,6 +45,14 @@
     public int updateServiceTaskdept(ServiceTaskdept serviceTaskdept);
 
     /**
+     * 鏂板妯℃澘绉戝鍏宠仈
+     *
+     * @param serviceTaskdept 妯℃澘绉戝鍏宠仈
+     * @return 缁撴灉
+     */
+    public int insertOrUpdateServiceTaskdept(ServiceTaskdept serviceTaskdept);
+
+    /**
      * 鎵归噺鍒犻櫎妯℃澘绉戝鍏宠仈
      *
      * @param ids 闇�瑕佸垹闄ょ殑妯℃澘绉戝鍏宠仈涓婚敭闆嗗悎
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 968c490..b7a5d61 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -620,7 +620,8 @@
                             serviceTaskdept.setDeptCode(deptCode);
                             serviceTaskdept.setDeptType("1");
                             serviceTaskdept.setServiceType(serviceTaskVO.getServiceType());
-                            serviceTaskdeptService.insertServiceTaskdept(serviceTaskdept);
+                            //鍏堥�氳繃浠诲姟ID銆侀儴闂╟ode,鍒ゆ柇ServiceTaskdept鏄惁瀛樺湪锛屼笉瀛樺湪鍒欐柊澧烇紝瀛樺湪鍒欎慨鏀�
+                            serviceTaskdeptService.insertOrUpdateServiceTaskdept(serviceTaskdept);
                         }
                     }
                     if (StringUtils.isNotEmpty(serviceTaskVO.getLeavehospitaldistrictcode())) {
@@ -629,7 +630,8 @@
                             serviceTaskdept.setDeptCode(districtcode);
                             serviceTaskdept.setDeptType("2");
                             serviceTaskdept.setServiceType(serviceTaskVO.getServiceType());
-                            serviceTaskdeptService.insertServiceTaskdept(serviceTaskdept);
+                            //鍏堥�氳繃浠诲姟ID銆侀儴闂╟ode,鍒ゆ柇ServiceTaskdept鏄惁瀛樺湪锛屼笉瀛樺湪鍒欐柊澧烇紝瀛樺湪鍒欎慨鏀�
+                            serviceTaskdeptService.insertOrUpdateServiceTaskdept(serviceTaskdept);
                         }
                     }
                 }
@@ -762,15 +764,8 @@
                             serviceTaskdept.setDeptCode(deptCode);
                             serviceTaskdept.setDeptType("1");
                             serviceTaskdept.setServiceType(serviceTaskVO.getServiceType());
-                            ServiceTaskdept st = new ServiceTaskdept();
-                            st.setDeptCode(deptCode);
-                            st.setTaskId(serviceTask.getTaskid());
-                            List<ServiceTaskdept> serviceTaskdepts = serviceTaskdeptService.selectServiceTaskdeptList(st);
-                            if (CollectionUtils.isEmpty(serviceTaskdepts)) {
-                                serviceTaskdeptService.insertServiceTaskdept(serviceTaskdept);
-                            } else {
-                                serviceTaskdeptService.updateServiceTaskdept(serviceTaskdept);
-                            }
+                            //鍏堥�氳繃浠诲姟ID銆侀儴闂╟ode,鍒ゆ柇ServiceTaskdept鏄惁瀛樺湪锛屼笉瀛樺湪鍒欐柊澧烇紝瀛樺湪鍒欎慨鏀�
+                            serviceTaskdeptService.insertOrUpdateServiceTaskdept(serviceTaskdept);
                         }
                     }
                     if (StringUtils.isNotEmpty(serviceTaskVO.getLeavehospitaldistrictcode())) {
@@ -785,15 +780,7 @@
                             serviceTaskdept.setDeptType("2");
                             serviceTaskdept.setServiceType(serviceTaskVO.getServiceType());
                             //鍏堥�氳繃浠诲姟ID銆侀儴闂╟ode,鍒ゆ柇ServiceTaskdept鏄惁瀛樺湪锛屼笉瀛樺湪鍒欐柊澧烇紝瀛樺湪鍒欎慨鏀�
-                            ServiceTaskdept st = new ServiceTaskdept();
-                            st.setDeptCode(districtcode);
-                            st.setTaskId(serviceTask.getTaskid());
-                            List<ServiceTaskdept> serviceTaskdepts = serviceTaskdeptService.selectServiceTaskdeptList(st);
-                            if (CollectionUtils.isEmpty(serviceTaskdepts)) {
-                                serviceTaskdeptService.insertServiceTaskdept(serviceTaskdept);
-                            } else {
-                                serviceTaskdeptService.updateServiceTaskdept(serviceTaskdept);
-                            }
+                            serviceTaskdeptService.insertOrUpdateServiceTaskdept(serviceTaskdept);
                         }
                     }
                 } else if (serviceTaskVO.getAppltype().equals("3")) {
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskdeptServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskdeptServiceImpl.java
index 1a0497e..35849df 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskdeptServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskdeptServiceImpl.java
@@ -4,6 +4,7 @@
 import com.smartor.domain.ServiceTaskdept;
 import com.smartor.mapper.ServiceTaskdeptMapper;
 import com.smartor.service.IServiceTaskdeptService;
+import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -67,6 +68,24 @@
     }
 
     /**
+     * 鏂板妯℃澘绉戝鍏宠仈
+     *
+     * @param serviceTaskdept 妯℃澘绉戝鍏宠仈
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertOrUpdateServiceTaskdept(ServiceTaskdept serviceTaskdept) {
+        ServiceTaskdept st = new ServiceTaskdept();
+        st.setDeptCode(serviceTaskdept.getDeptCode());
+        st.setTaskId(serviceTaskdept.getTaskId());
+        List<ServiceTaskdept> serviceTaskdepts = selectServiceTaskdeptList(st);
+        if (CollectionUtils.isEmpty(serviceTaskdepts)) {
+            return insertServiceTaskdept(serviceTaskdept);
+        } else {
+            return updateServiceTaskdept(serviceTaskdept);
+        }
+    }
+    /**
      * 鎵归噺鍒犻櫎妯℃澘绉戝鍏宠仈
      *
      * @param ids 闇�瑕佸垹闄ょ殑妯℃澘绉戝鍏宠仈涓婚敭

--
Gitblit v1.9.3