From 0c515e7b8e3c1c15c615cc831ef3fdb09ea5265e Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 10 十月 2025 10:25:17 +0800
Subject: [PATCH] 修改BUG

---
 smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java |   40 ++++++++++++++++++++++++++++++++--------
 1 files changed, 32 insertions(+), 8 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java
index 54b30ff..c4f7484 100644
--- a/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java
@@ -60,7 +60,6 @@
             //瀹f暀
             return xjSend(sendTaskVO);
         }
-        log.error("璧板埌杩欓噷浜嗗槢");
         return null;
     }
 
@@ -108,6 +107,8 @@
         //鍒ゆ柇浠诲姟鏄惁鏄珛鍗冲彂閫�
         if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("2")) {
             String content = sendMQContent(sendTaskVO, ivrTask.getTemplateid().toString(), ivrTask.getPreachform(), ivrTask.getStopState(), null);
+            //鍏堜慨鏀圭姸鎬�
+            updateServiceSubtask(ivrTask.getTaskid(), new Date());
             //绔嬪嵆鍙戦��
             redisCache.setCacheObject(content, content, 1, TimeUnit.SECONDS);
             //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
@@ -130,23 +131,23 @@
                 } catch (JsonProcessingException e) {
                     log.error("JsonProcessingException鎶ラ敊浜嗭細{}", e.getMessage());
                 }
+                Date date = new Date();
                 for (TaskSendTimeVO taskSendTimeVO : taskSendTimeVOList) {
-//                    //鍘籗endTimeslot涓紝鑾峰彇鎵�鏈夌殑鏃堕棿娈�
-//                    List<TaskSendTimeVO> list = new ArrayList<>();
-//                    list.add(taskSendTimeVO);
-
                     //鑾峰彇寮�濮嬪彂閫佹椂闂�
                     String begantime = taskSendTimeVO.getBegantime();
                     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                     //璁板綍鐩墠鍒板彂閫佹椂闂寸殑姣鍊� 锛堝彂閫佹椂闂寸殑姣鍊� - 褰撳墠鏃堕棿鐨勬绉掑�硷級
                     Long milliseconds = 1000L;
                     try {
-                        Date date = sdf.parse(begantime);
+                        date = sdf.parse(begantime);
                         milliseconds = date.getTime() - System.currentTimeMillis();
                         System.out.println("鏃ユ湡姣鏁帮細" + milliseconds);
                         SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class);
                         sendTaskVO1.setSendType("1");
                         String content = sendMQContent(sendTaskVO1, ivrTask.getTemplateid().toString(), ivrTask.getPreachform(), ivrTask.getStopState(), taskSendTimeVO);
+
+                        //鍏堜慨鏀圭姸鎬�
+                        updateServiceSubtask(ivrTask.getTaskid(), date);
                         redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS);
                     } catch (Exception e) {
                         e.printStackTrace();
@@ -208,6 +209,8 @@
         if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("2")) {
 
             String content = sendMQContent(sendTaskVO, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), null);
+            //鍏堜慨鏀圭姸鎬�
+            updateServiceSubtask(serviceTask1.getTaskid(), new Date());
             //绔嬪嵆鍙戦��
             redisCache.setCacheObject(content, content, 1, TimeUnit.SECONDS);
 
@@ -228,6 +231,7 @@
                 } catch (JsonProcessingException e) {
                     log.error("JsonProcessingException鎶ラ敊浜嗭細{}", e.getMessage());
                 }
+                Date date = new Date();
                 for (TaskSendTimeVO taskSendTimeVO : taskSendTimeVOList) {
                     //鍘籗endTimeslot涓紝鑾峰彇鎵�鏈夌殑鏃堕棿娈�
 //                    List<TaskSendTimeVO> list = new ArrayList<>();
@@ -239,7 +243,7 @@
                     //璁板綍鐩墠鍒板彂閫佹椂闂寸殑姣鍊� 锛堝彂閫佹椂闂寸殑姣鍊� - 褰撳墠鏃堕棿鐨勬绉掑�硷級
                     Long milliseconds = 1000L;
                     try {
-                        Date date = sdf.parse(begantime);
+                        date = sdf.parse(begantime);
                         milliseconds = date.getTime() - System.currentTimeMillis();
                         if (milliseconds < 0) {
                             milliseconds = 1000L;
@@ -252,6 +256,8 @@
                     SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class);
                     sendTaskVO1.setSendType("1");
                     String content = sendMQContent(sendTaskVO1, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), taskSendTimeVO);
+                    //鍏堜慨鏀圭姸鎬�
+                    updateServiceSubtask(serviceTask1.getTaskid(), date);
                     redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS);
                 }
                 //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
@@ -310,6 +316,8 @@
         if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("2")) {
 
             String content = sendMQContent(sendTaskVO, serviceTask1.getLibtemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), null);
+            //鍏堜慨鏀圭姸鎬�
+            updateServiceSubtask(serviceTask1.getTaskid(), new Date());
             //绔嬪嵆鍙戦��
             redisCache.setCacheObject(content, content, 1, TimeUnit.SECONDS);
 
@@ -323,6 +331,7 @@
         } else if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("1") || StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("3")) {
             //鏃堕棿娈靛彂閫�
             ObjectMapper objectMapper = new ObjectMapper();
+            Date date = new Date();
             if (StringUtils.isNotEmpty(serviceTask1.getSendTimeSlot())) {
                 List<TaskSendTimeVO> taskSendTimeVOList = null;
                 try {
@@ -342,7 +351,7 @@
                     //璁板綍鐩墠鍒板彂閫佹椂闂寸殑姣鍊� 锛堝彂閫佹椂闂寸殑姣鍊� - 褰撳墠鏃堕棿鐨勬绉掑�硷級
                     Long milliseconds = 1000L;
                     try {
-                        Date date = sdf.parse(begantime);
+                        date = sdf.parse(begantime);
                         milliseconds = date.getTime() - System.currentTimeMillis();
                         System.out.println("鏃ユ湡姣鏁帮細" + milliseconds);
                     } catch (Exception e) {
@@ -352,6 +361,8 @@
                     SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class);
                     sendTaskVO1.setSendType("1");
                     String content = sendMQContent(sendTaskVO1, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), taskSendTimeVO);
+                    //鍏堜慨鏀圭姸鎬�
+                    updateServiceSubtask(serviceTask1.getTaskid(), date);
                     redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS);
                 }
                 //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
@@ -389,4 +400,17 @@
         commonTaskcallMQJson = commonTaskcallMQJson.substring(1, commonTaskcallMQJson.length() - 1);
         return commonTaskcallMQJson;
     }
+
+    private void updateServiceSubtask(Long taskId, Date date) {
+        //鍙杩涘叆闃熷垪灏辩畻寰呭彂閫�
+        ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
+        serviceSubtaskVO.setTaskid(taskId);
+        serviceSubtaskVO.setSendstate(1L);
+        List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+        for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
+            serviceSubtask.setSendstate(2L);
+            serviceSubtask.setVisitTime(date);
+            serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
+        }
+    }
 }

--
Gitblit v1.9.3