From c62e26954e41360fc6a2efc874815aa84f8b0073 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 21 五月 2025 14:45:10 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java |   60 ++++++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 42 insertions(+), 18 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
index e8fe8b5..3137d61 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
@@ -38,7 +38,7 @@
     private ServiceSubtaskMapper serviceSubtaskMapper;
 
     @Autowired
-    private IvrTaskTemplateMapper ivrTaskTemplateMapper;
+    private ServiceTaskdeptMapper serviceTaskdeptMapper;
 
     @Autowired
     private PatArchiveImportMapper patArchiveImportMapper;
@@ -155,12 +155,32 @@
     @Transactional(rollbackFor = Exception.class)
     @Override
     public Boolean deleteServiceTaskByTaskid(Long taskid) {
-        ServiceSubtask ServiceTaskcall = new ServiceSubtask();
-        ServiceTaskcall.setTaskid(taskid);
-        ServiceTaskcall.setDelFlag("1");
-        Boolean aBoolean = serviceSubtaskMapper.updateServiceSubtask(ServiceTaskcall);
+        ServiceSubtask serviceSubtask = new ServiceSubtask();
+        serviceSubtask.setTaskid(taskid);
+
+        //鏌ヨ瀛愪换鍔�
+        ServiceSubtaskVO serviceSubtaskVO = DtoConversionUtils.sourceToTarget(serviceSubtask, ServiceSubtaskVO.class);
+        List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+        for (ServiceSubtask ss : serviceSubtaskList) {
+            log.error("sfSend闇�瑕佺Щ闄ょ殑subId涓猴細{}", ss.getId().toString());
+            redisCache.removeElementFromList("cache-exist", ss.getId().toString());
+            redisCache.removeElementFromList("cache-0", ss.getId().toString());
+            redisCache.removeElementFromList("cache-1", ss.getId().toString());
+            redisCache.removeElementFromList("cache-2", ss.getId().toString());
+            redisCache.removeElementFromList("cache-3", ss.getId().toString());
+            redisCache.removeElementFromList("cache-4", ss.getId().toString());
+        }
+
+        serviceSubtask.setDelFlag("1");
+        Boolean aBoolean = serviceSubtaskMapper.updateServiceSubtaskByPatId(serviceSubtask);
+
+        //鍏宠仈琛ㄥ垹闄�
+        ServiceTaskdept serviceTaskdept = new ServiceTaskdept();
+        serviceTaskdept.setTaskId(taskid);
+        int i = serviceTaskdeptMapper.deleteServiceTaskdeptByTaskId(serviceTaskdept);
+
         Boolean isSuccess = false;
-        if (!aBoolean) {
+        if (!aBoolean || i <= 0) {
             new BaseException("浠诲姟鍒犻櫎澶辫触");
         }
         isSuccess = serviceTaskMapper.deleteServiceTaskByTaskid(taskid);
@@ -201,10 +221,13 @@
                 ServiceSubtask ss = new ServiceSubtask();
                 ss.setTaskid(taskid);
                 ss.setPatid(patid);
-                ss.setSendstate(1L);
-                ss.setResult("success");
-                ss.setFinishtime(new Date());
-                serviceSubtaskMapper.updateServiceSubtaskByCondition(ss);
+                Integer integer = serviceSubtaskMapper.selectSendstateByCondition(ss);
+                if (integer != null && integer != 6) {
+                    ss.setSendstate(1L);
+                    ss.setResult("success");
+                    ss.setFinishtime(new Date());
+                    serviceSubtaskMapper.updateServiceSubtaskByCondition(ss);
+                }
             }
         }
 
@@ -215,7 +238,6 @@
         map.put("type", serviceTask.getType());
         map.put("taskName", serviceTask.getTaskName());
         map.put("submit", "0");
-
         return map;
     }
 
@@ -301,9 +323,9 @@
         serviceSubtaskVO.setPatid(patid);
         List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
         if (CollectionUtils.isNotEmpty(serviceSubtaskList) && serviceSubtaskList.size() == 1) {
-            if (serviceSubtaskList.get(0).getSendstate() != 6 && isFinish == true) {
+            if (serviceSubtaskList.get(0).getSendstate() == 3 && isFinish == true) {
                 ServiceSubtask serviceSubtask = new ServiceSubtask();
-                serviceSubtask.setSendstate(7L);
+                serviceSubtask.setSendstate(1L);
                 serviceSubtask.setPatid(patid);
                 serviceSubtask.setTaskid(serviceTask.getTaskid());
                 serviceSubtaskMapper.updateServiceSubtaskByPatId(serviceSubtask);
@@ -375,11 +397,13 @@
             ServiceSubtask serviceSubtask = new ServiceSubtask();
             serviceSubtask.setTaskid(taskid);
             serviceSubtask.setPatid(patid);
-            serviceSubtask.setResult("瀹屾垚");
-            serviceSubtask.setFinishtime(new Date());
-            serviceSubtask.setUpdateTime(new Date());
-            log.error("serviceSubtask---xjInfo-鐨勪慨鏀规暟鎹細{}", serviceSubtask);
-            serviceSubtaskMapper.updateServiceSubtaskByCondition(serviceSubtask);
+            Integer integer = serviceSubtaskMapper.selectSendstateByCondition(serviceSubtask);
+            if (integer == 3) {
+                serviceSubtask.setResult("瀹屾垚");
+                serviceSubtask.setFinishtime(new Date());
+                serviceSubtask.setSendstate(6L);
+                serviceSubtaskMapper.updateServiceSubtaskByCondition(serviceSubtask);
+            }
         }
         HeLibrary heLibrary = heLibraryMapper.selectHeLibraryById(Long.valueOf(templateId));
         List list = new ArrayList();

--
Gitblit v1.9.3