From 816eea15ab68b3efb03786be616687b2e197014f Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期四, 15 十月 2026 17:35:47 +0800
Subject: [PATCH] 【丽水】insertOrUpdateTask报错问题处理

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java |   31 +++++++++++++++++++++++++++----
 1 files changed, 27 insertions(+), 4 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 759302d..0736c29 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -558,11 +558,22 @@
 
     @Override
     public List<ServiceSubtask> patItem2(ServiceSubtaskEntity serviceSubtaskEntity) {
+        if (serviceSubtaskEntity.getSendstateView() != null) {
+            //            1锛氬緟闅忚锛�1 琚鍙栥��2 寰呭彂閫併��3 宸插彂閫併��5 鍙戦�佸け璐ャ��7銆佽秴鏃讹級锛�2锛氬凡瀹屾垚锛� 6 宸插畬鎴愶級銆�3锛氭棤闇�闅忚锛�4 涓嶆墽琛岋級
+            if (serviceSubtaskEntity.getSendstateView() == 1)
+                serviceSubtaskEntity.setSendstates(new ArrayList<>(Arrays.asList(1L, 2L, 3L, 5L, 7L)));
+            if (serviceSubtaskEntity.getSendstateView() == 2)
+                serviceSubtaskEntity.setSendstates(new ArrayList<>(Arrays.asList(6L)));
+            if (serviceSubtaskEntity.getSendstateView() == 3)
+                serviceSubtaskEntity.setSendstates(new ArrayList<>(Arrays.asList(4L)));
+        }
         List<ServiceSubtask> serviceSubtaskList = new ArrayList<>();
-        for (Long sendstate : serviceSubtaskEntity.getSendstates()) {
-            serviceSubtaskEntity.setSendstate(sendstate);
-            List<ServiceSubtask> serviceSubtasks = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskEntity);
-            serviceSubtaskList.addAll(serviceSubtasks);
+        if(CollectionUtils.isNotEmpty(serviceSubtaskEntity.getSendstates())){
+            for (Long sendstate : serviceSubtaskEntity.getSendstates()) {
+                serviceSubtaskEntity.setSendstate(sendstate);
+                List<ServiceSubtask> serviceSubtasks = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskEntity);
+                serviceSubtaskList.addAll(serviceSubtasks);
+            }
         }
         return serviceSubtaskList;
     }
@@ -633,6 +644,7 @@
             result.putIfAbsent("xsf", 0);
             result.putIfAbsent("dsf", 0);
             result.putIfAbsent("ywc", 0);
+            result.putIfAbsent("cs", 0);
             result.putIfAbsent("yc", 0);
             result.putIfAbsent("jg", 0);
         }
@@ -669,6 +681,7 @@
             result.putIfAbsent("dsf", 0);
             result.putIfAbsent("dfs", 0);
             result.putIfAbsent("yfs", 0);
+            result.putIfAbsent("cs", 0);
             result.putIfAbsent("ywc", 0);
             result.putIfAbsent("yc", 0);
             result.putIfAbsent("jg", 0);
@@ -3311,6 +3324,12 @@
                     serviceSubtaskStatistic.setFollowUpNeeded(serviceSubtaskStatistic.getFollowUpNeeded() + 1L);
                 }
 
+                //浜哄伐宸叉嫧閫氭�婚噺
+                if (ObjectUtils.isNotEmpty(serviceSubtask.getIsManuallyCalled())
+                        && serviceSubtask.getIsManuallyCalled().equals(1L)) {
+                    serviceSubtaskStatistic.setManuallyCalled(serviceSubtaskStatistic.getManuallyCalled() + 1L);
+                }
+
                 //棣栨鍑洪櫌闅忚
                 if (serviceSubtask.getVisitCount() != null && serviceSubtask.getVisitCount() == 1) {
                     //棣栨搴旈殢璁�
@@ -4330,6 +4349,7 @@
      * taskSituation4Info - taskSituation = 4
      * taskSituation5Info - taskSituation = 5
      * taskSituation6Info - taskSituation = 7
+     * manuallyCalledInfo - isManuallyCalled = 1L
      * filterCountList - taskSituation = 6 && sendstate = 4
      *
      */
@@ -4508,6 +4528,9 @@
                 serviceSubtaskCountReq.setTaskSituation(6);
                 serviceSubtaskCountReq.setSendstates(new ArrayList<>(Collections.singletonList(4L)));
                 break;
+            case "manuallyCalledInfo":
+                serviceSubtaskCountReq.setIsManuallyCalled(1L);
+                break;
             default:
                 break;
         }

--
Gitblit v1.9.3