From 4d7b0c1dc2f1a400005feb93a945a09b52e5d101 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 12 三月 2025 09:47:43 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java |   30 +++++++++++++++++++++++++-----
 1 files changed, 25 insertions(+), 5 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 f9ca6ca..28d8cde 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -257,7 +257,12 @@
     public List<ServiceSubtask> patItem(ServiceSubtaskVO serviceSubtaskVO) {
         List<ServiceSubtask> selectServiceSubtaskList = this.selectServiceSubtaskList(serviceSubtaskVO);
         //鏍规嵁鍑洪櫌 鏃堕棿鍊掑簭
-        List<ServiceSubtask> sortedServiceSubtaskList = selectServiceSubtaskList.stream().sorted(Comparator.comparing(ServiceSubtask::getEndtime, Comparator.nullsLast(Comparator.naturalOrder())).reversed()).collect(Collectors.toList());
+        List<ServiceSubtask> sortedServiceSubtaskList = null;
+        if (serviceSubtaskVO.getSort() == null || serviceSubtaskVO.getSort() == 0)
+            sortedServiceSubtaskList = selectServiceSubtaskList.stream().sorted(Comparator.comparing(ServiceSubtask::getEndtime, Comparator.nullsLast(Comparator.naturalOrder())).reversed()).collect(Collectors.toList());
+        if (serviceSubtaskVO.getSort() != null && serviceSubtaskVO.getSort() == 1)
+            sortedServiceSubtaskList = selectServiceSubtaskList.stream().sorted(Comparator.comparing(ServiceSubtask::getLongSendTime, Comparator.nullsLast(Comparator.naturalOrder())).reversed()).collect(Collectors.toList());
+
         return sortedServiceSubtaskList;
     }
 
@@ -324,6 +329,8 @@
     @Override
     public Boolean updateServiceSubtask(ServiceSubtask serviceSubtask) {
         serviceSubtask.setUpdateTime(DateUtils.getNowDate());
+        if (serviceSubtask.getSendstate() != null && serviceSubtask.getSendstate() == 6)
+            serviceSubtask.setFinishtime(new Date());
         return serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
     }
 
@@ -491,6 +498,8 @@
                     serviceSubtask.setEndtime(patTaskRelevance.getEndtime());
                     serviceSubtask.setNurseId(patTaskRelevance.getNurseId());
                     serviceSubtask.setNurseName(patTaskRelevance.getNurseName());
+                    serviceSubtask.setCreateBy(serviceTask.getCreateBy());
+                    serviceSubtask.setUpdateBy(serviceTask.getCreateBy());
                     if (serviceTaskVO.getLongTask() != null && serviceTaskVO.getLongTask() == 1)
                         serviceSubtask.setLongSendTime(patTaskRelevance.getLongSendTime());
                     serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
@@ -1632,6 +1641,14 @@
                     log.error("璇ubId鏈夐棶棰橈紝鍦ㄨ〃涓煡璇笉鍒帮細{}", subId);
                     continue;
                 }
+                if (StringUtils.isEmpty(serviceSubtask.getPhone())) {
+                    serviceSubtask.setRemark("鎵嬫満鍙蜂负绌�");
+                    serviceSubtask.setSendstate(4L);
+                    serviceSubtask.setResult("error");
+                    serviceSubtask.setFinishtime(new Date());
+                    serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
+                    continue;
+                }
                 ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
                 IvrTaskTemplate ivrTaskTemplate = ivrTaskTemplateService.selectIvrTaskTemplateByID(serviceSubtask.getTemplateid());
                 if (ObjectUtils.isEmpty(ivrTaskTemplate)) continue;
@@ -1648,7 +1665,10 @@
                     }
                 }
                 //濡傛灉ivrTaskTemplateScript涓虹┖锛屼篃灏辨病鏈夊線涓嬫墽琛岀殑蹇呰浜�
-                if (ObjectUtils.isEmpty(ivrTaskTemplateScript)) return null;
+                if (ObjectUtils.isEmpty(ivrTaskTemplateScript)) {
+                    log.error("---------杩欎釜ivrTaskTemplate.getId()鐨勯棶棰樹负绌猴細{}", ivrTaskTemplate.getId());
+                    continue;
+                }
                 //鑾峰彇閫氶厤绗﹀尮閰嶈繃鍚庣殑闂
                 String scrContent = getObject(serviceSubtask, ivrTaskTemplateScript.getIvrtext());
                 String kcb = serviceTask.getKcb() + "," + scrContent;
@@ -2108,12 +2128,12 @@
                 serviceSubtaskStatistic.setYczs(serviceSubtaskStatistic.getYczs() + 1L);
             }
         }
-        //闅忚瀹屾垚鐜�=宸插彂閫�/闅忚鏁�
-        if (serviceSubtaskStatistic.getYfsCount() == 0 || CollectionUtils.isEmpty(serviceSubtaskList)) {
+        //闅忚瀹屾垚鐜�=宸插畬鎴�/搴旈殢璁块噺
+        if (serviceSubtaskStatistic.getYwcCount() == 0 || CollectionUtils.isEmpty(serviceSubtaskList)) {
             serviceSubtaskStatistic.setSfwcl("0");
         } else {
 //            BigDecimal multiply = BigDecimal.valueOf(serviceSubtaskStatistic.getYfsCount()).divide(BigDecimal.valueOf(serviceSubtaskList.size()), 2, BigDecimal.ROUND_HALF_UP);
-            BigDecimal multiply = new BigDecimal(serviceSubtaskStatistic.getYfsCount().toString()).divide(new BigDecimal(serviceSubtaskList.size() + ""), 2, BigDecimal.ROUND_HALF_UP);
+            BigDecimal multiply = new BigDecimal(serviceSubtaskStatistic.getYwcCount().toString()).divide(new BigDecimal(serviceSubtaskStatistic.getYsfCount().toString()), 2, BigDecimal.ROUND_HALF_UP);
             serviceSubtaskStatistic.setSfwcl(multiply.toString());
         }
 

--
Gitblit v1.9.3