From cc4192ab020954b878dc2b26f4b54d8648b504fe Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 27 三月 2026 11:21:58 +0800
Subject: [PATCH] 【丽水】insertOrUpdate 增加opLevelCode

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java |   42 ++++++++++++++++++++++++++++--------------
 1 files changed, 28 insertions(+), 14 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 ed24b0b..2b4aaac 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -606,13 +606,15 @@
                     serviceTaskoper.setGuid(serviceTask.getGuid());
                     serviceTaskoper.setOrgid(serviceTask.getOrgid());
                     serviceTaskoper.setCreateTime(new Date());
-                    if (StringUtils.isNotEmpty(serviceTaskVO.getOpcode())) {
-                        String[] opcodes = serviceTaskVO.getOpcode().split(",");
-                        for (String opcode : opcodes) {
-                            serviceTaskoper.setOpcode(opcode);
-                            log.info("----serviceTaskoper鐨勫�间负锛歿}", serviceTaskoper);
-                            serviceTaskoperService.insertServiceTaskoper(serviceTaskoper);
-                        }
+                    if (StringUtils.isNotEmpty(serviceTaskVO.getOplevelcode())) {
+//                        String[] opcodes = serviceTaskVO.getOpcode().split(",");
+//                        for (String opcode : opcodes) {
+//                            serviceTaskoper.setOpcode(opcode);
+//                            log.info("----serviceTaskoper鐨勫�间负锛歿}", serviceTaskoper);
+//                            serviceTaskoperService.insertServiceTaskoper(serviceTaskoper);
+//                        }
+                        log.info("----serviceTaskoper鐨勫�间负锛歿}", serviceTaskoper);
+                        serviceTaskoperService.insertServiceTaskoper(serviceTaskoper);
                     }
 
                 } else {
@@ -836,9 +838,9 @@
 
                 } else if (serviceTaskVO.getAppltype().equals("4")) {
                     ServiceTaskoper serviceTaskoper = new ServiceTaskoper();
-                    if (StringUtils.isEmpty(serviceTaskVO.getOpcode())) {
-                        throw new BaseException("鎵嬫湳缂栫爜涓虹┖");
-                    }
+//                    if (StringUtils.isEmpty(serviceTaskVO.getOpcode())) {
+//                        throw new BaseException("鎵嬫湳缂栫爜涓虹┖");
+//                    }
 //                serviceTaskoper.setOpcode(serviceTaskVO.getOpcode());
                     serviceTaskoper.setOpdesc(serviceTaskVO.getOpdesc());
                     serviceTaskoper.setOplevelcode(serviceTaskVO.getOplevelcode());
@@ -867,6 +869,18 @@
 //                            }
 //                        }
 //                    }
+                    ServiceTaskoper serviceTaskoper2 = new ServiceTaskoper();
+                    serviceTaskoper2.setTaskId(serviceTaskVO.getTaskid());
+                    serviceTaskoper2.setOrgid(serviceTask.getOrgid());
+//                    serviceTaskoper2.setOplevelcode(serviceTaskVO.getOplevelcode());
+                    List<ServiceTaskoper> serviceTaskopers = serviceTaskoperService.selectServiceTaskoperList(serviceTaskoper2);
+
+                    if (CollectionUtils.isNotEmpty(serviceTaskopers)) {
+                        serviceTaskoper.setId(serviceTaskopers.get(0).getId());
+                        serviceTaskoperService.updateServiceTaskoper(serviceTaskoper);
+                    } else {
+                        serviceTaskoperService.insertServiceTaskoper(serviceTaskoper);
+                    }
                 }
             }
             if (ObjectUtils.isNotEmpty(serviceTaskVO.getIvrTaskTemplateVO())) {
@@ -2637,8 +2651,8 @@
                     serviceSubtaskStatistic.setPendingFollowUp(serviceSubtaskStatistic.getPendingFollowUp() + 1L);
                     pendingFollowUpInfo.add(serviceSubtask);
                 }
-                //棣栨闅忚澶辫触
-                if (serviceSubtask.getSendstate() != null && serviceSubtask.getSendstate() == 5) {
+                //棣栨闅忚澶辫触(鍖呮嫭闅忚澶辫触+浜哄伐瓒呮椂)
+                if (serviceSubtask.getSendstate() != null && (serviceSubtask.getSendstate() == 5 || serviceSubtask.getSendstate() == 7)) {
                     serviceSubtaskStatistic.setFollowUpFail(serviceSubtaskStatistic.getFollowUpFail() + 1L);
                     followUpFailInfo.add(serviceSubtask);
                 }
@@ -2867,7 +2881,7 @@
                 if (serviceSubtask.getSendstate() != null && (serviceSubtask.getSendstate() == 6)) {
                     serviceSubtaskStatistic.setFollowUpSuccess(serviceSubtaskStatistic.getFollowUpSuccess() + 1L);
                 }
-                if (serviceSubtask.getSendstate() != null && serviceSubtask.getSendstate() == 5) {
+                if (serviceSubtask.getSendstate() != null &&  (serviceSubtask.getSendstate() == 5 || serviceSubtask.getSendstate() == 7)) {
                     serviceSubtaskStatistic.setFollowUpFail(serviceSubtaskStatistic.getFollowUpFail() + 1L);
                 }
                 if (serviceSubtaskStatistic.getNeedFollowUp() > 0) {
@@ -2985,7 +2999,7 @@
                 if (serviceSubtask.getSendstate() != null && (serviceSubtask.getSendstate() == 6)) {
                     serviceSubtaskStatistic.setFollowUpSuccess(serviceSubtaskStatistic.getFollowUpSuccess() + 1L);
                 }
-                if (serviceSubtask.getSendstate() != null && serviceSubtask.getSendstate() == 5) {
+                if (serviceSubtask.getSendstate() != null &&  (serviceSubtask.getSendstate() == 5 || serviceSubtask.getSendstate() == 7)) {
                     serviceSubtaskStatistic.setFollowUpFail(serviceSubtaskStatistic.getFollowUpFail() + 1L);
                 }
                 if (serviceSubtaskStatistic.getNeedFollowUp() > 0) {

--
Gitblit v1.9.3