From f44fc386a12e119df6ff0cd0b546bdb0d38d05db Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期一, 27 七月 2026 13:42:48 +0800
Subject: [PATCH] 同德满意度异常,用钉钉提醒负责人

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java |   45 +++++++++++++++++++++++++++------------------
 1 files changed, 27 insertions(+), 18 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 42ee2d7..d211e97 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -655,9 +655,16 @@
         ServiceSubtask serviceSubtask = serviceSubtaskMapper.selectServiceSubtaskById(serviceSubtaskTemplateVO.getSubId());
         if (serviceSubtask == null || serviceSubtask.getSendstate() != 2L)
             throw new BaseException("璇ヤ换鍔″凡鍙戦�佺粰鎮h�咃紝涓嶈兘鍐嶈繘琛屼慨鏀规ā鏉�");
-
+        serviceSubtaskTemplateVO.getSvyTaskTemplateVO().setIntroduce("璇ラ棶鍗锋槸鏇挎崲鍚庣殑闂锛屾浛鎹㈠墠鐨勯棶棰樻槸锛�" + serviceSubtask.getTemplateid());
         Integer taskTempid = svyTaskTemplateService.saveOrUpdateTemplate(serviceSubtaskTemplateVO.getSvyTaskTemplateVO());
         if (taskTempid == null) return false;
+
+        //姣忔閮芥柊寤轰竴涓篃鍙互锛屼絾鏂板缓涔嬪悗瑕佹妸涔嬪墠鐨勫垹闄�
+        if (serviceSubtask.getType().equals("2")) {
+            svyTaskTemplateService.deleteSvyTaskTemplateBySvyid(serviceSubtask.getTemplateid());
+        } else if (serviceSubtask.getType().equals("1"))
+            ivrTaskTemplateService.deleteIvrTaskTemplateByID(serviceSubtask.getTemplateid());
+
 
         String tempName = svyTaskTemplateService.selectSvyTaskTemplateBySvyid(Long.valueOf(taskTempid)).getSvyname();
         serviceSubtask.setTemplateid(taskTempid.longValue());
@@ -1719,12 +1726,6 @@
                 }
             }
 
-//            //2-AI璇嗗埆
-//            SysConfig configVoiceMatchType = new SysConfig();
-//            configVoiceMatchType.setOrgid(phoneCallReqYQVO.getOrgid());
-//            configVoiceMatchType.setConfigKey("sys.voice.match.type");
-//            SysConfig matchType = sysConfigMapper.selectConfig(configVoiceMatchType);
-
             //濡傛灉鏄枃鏈洖璋�
             //鏍规嵁闂ID鑾峰彇璇ラ棶棰樼殑绫诲瀷
             if (ivrTaskTemplateScriptVO.getScriptType().equals("1")) {
@@ -1736,15 +1737,20 @@
                     if (StringUtils.isEmpty(phoneCallReqYQVO.getAsrtext())) {
                         continue;
                     }
+                    //2-AI璇嗗埆
+//                    SysConfig configVoiceMatchType = new SysConfig();
+//                    configVoiceMatchType.setOrgid(phoneCallReqYQVO.getOrgid());
+//                    configVoiceMatchType.setConfigKey("sys.voice.match.type");
+//                    SysConfig matchType = sysConfigMapper.selectConfig(configVoiceMatchType);
                     boolean matchedFlag = false;
-//                    if(ObjectUtils.isNotEmpty(matchType) && StringUtils.isNotEmpty(matchType.getConfigValue()) && matchType.getConfigValue().equals("2")){
+//                    if (ObjectUtils.isNotEmpty(matchType) && StringUtils.isNotEmpty(matchType.getConfigValue()) && matchType.getConfigValue().equals("2")) {
 //                        int checkFlag = DeepSeekApi.matchQuestionAnswer(ivrTaskTemplateScriptVO.getScriptContent(),
 //                                phoneCallReqYQVO.getAsrtext(),
 //                                ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetvalue());
-//                        if(checkFlag == 1){
+//                        if (checkFlag == 1) {
 //                            matchedFlag = true;
 //                        }
-//                    }else {
+//                    } else {
                         //鍖呭惈
                         Matcher matcher = null;
                         if (StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex())) {
@@ -4863,7 +4869,7 @@
                 ServiceTaskdept serviceTaskdept = new ServiceTaskdept();
                 if (ObjectUtils.isNotEmpty(serviceTaskVo.getDeptcode())) {
                     serviceTaskdept.setDeptType("1");
-                    serviceTaskdept.setDeptCode(serviceTask.getDeptcode());
+                    serviceTaskdept.setDeptCode(serviceTaskVo.getDeptcode());
                 }
                 if (ObjectUtils.isNotEmpty(serviceTaskVo.getLeavehospitaldistrictcode())) {
                     serviceTaskdept.setDeptType("2");
@@ -4876,10 +4882,10 @@
 
                 if (!CollectionUtils.isEmpty(serviceTaskdepts)) {
                     PatArchive patArchive = new PatArchive();
-                    patArchive.setId(-1L);
+                    patArchive.setId(999999999L);
                     patArchive.setName("铏氭嫙鎮h��");
                     //灏佽serviceSubtask
-                    ServiceSubtask serviceSubtask = boxedServiceSubtask(serviceTask, patArchive);
+                    ServiceSubtask serviceSubtask = boxedServiceSubtask(serviceTask, serviceTaskdepts.get(0), patArchive);
                     int i = serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
                     //鏍规嵁鐢熸垚澶栭摼
                     if (ObjectUtils.isNotEmpty(serviceSubtask.getTaskid()) && ObjectUtils.isNotEmpty(serviceSubtask.getPatid()) && ObjectUtils.isNotEmpty(serviceSubtask.getId())) {
@@ -4913,7 +4919,7 @@
         return content;
     }
 
-    public ServiceSubtask boxedServiceSubtask(ServiceTask serviceTask, PatArchive patArchive) {
+    public ServiceSubtask boxedServiceSubtask(ServiceTask serviceTask, ServiceTaskdept serviceTaskdept, PatArchive patArchive) {
         ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(serviceTask, ServiceSubtask.class);
         serviceSubtask.setTaskid(serviceTask.getTaskid());
         if (StringUtils.isNotEmpty(serviceTask.getLibtemplateid()))
@@ -4922,10 +4928,13 @@
 //        serviceSubtask.setNurseName(patMedInhosp1.getNurseName());
 //        serviceSubtask.setDrcode(patMedInhosp1.getDrcode());
 //        serviceSubtask.setDrname(patMedInhosp1.getDrname());
-        serviceSubtask.setDeptcode(serviceTask.getDeptcode());
-        serviceSubtask.setDeptname(serviceTask.getDeptname());
-        serviceSubtask.setLeavehospitaldistrictcode(serviceTask.getLeavehospitaldistrictcode());
-        serviceSubtask.setLeavehospitaldistrictname(serviceTask.getLeavehospitaldistrictname());
+        if(StringUtils.isNotEmpty(serviceTaskdept.getDeptType()) && serviceTaskdept.getDeptType().equals("1")){
+            serviceSubtask.setDeptcode(serviceTaskdept.getDeptCode());
+            serviceSubtask.setDeptname(serviceTaskdept.getDeptName());
+        }else {
+            serviceSubtask.setLeavehospitaldistrictcode(serviceTaskdept.getDeptCode());
+            serviceSubtask.setLeavehospitaldistrictname(serviceTaskdept.getDeptName());
+        }
         serviceSubtask.setTemplateid(serviceTask.getTemplateid());
         serviceSubtask.setTemplatename(serviceTask.getTemplatename());
         serviceSubtask.setPatid(patArchive.getId());

--
Gitblit v1.9.3