From 8d913e5594f45ca2a4ce656ea9feb99ffe715913 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 29 十一月 2024 18:44:58 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/IvrTaskTemplateServiceImpl.java |  135 ++++++++++++++++++++++++++++++--------------
 1 files changed, 92 insertions(+), 43 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/IvrTaskTemplateServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/IvrTaskTemplateServiceImpl.java
index a4ca342..09db01e 100644
--- a/smartor/src/main/java/com/smartor/service/impl/IvrTaskTemplateServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/IvrTaskTemplateServiceImpl.java
@@ -11,6 +11,7 @@
 import com.smartor.mapper.IvrTaskTemplateMapper;
 import com.smartor.mapper.IvrTaskTemplateScriptMapper;
 import com.smartor.mapper.IvrTaskTemplateTargetoptionMapper;
+import com.smartor.mapper.TemplateDeptMapper;
 import com.smartor.service.IIvrTaskTemplateService;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
@@ -40,6 +41,9 @@
     @Autowired
     private IvrTaskTemplateTargetoptionMapper ivrTaskTemplateTargetoptionMapper;
 
+    @Autowired
+    private TemplateDeptMapper templateDeptMapper;
+
     /**
      * 鏌ヨ闅忚浠诲姟闅忚妯℃澘搴�
      *
@@ -49,6 +53,26 @@
     @Override
     public IvrTaskTemplate selectIvrTaskTemplateByID(Long ID) {
         return ivrTaskTemplateMapper.selectIvrTaskTemplateByID(ID);
+    }
+
+    @Override
+    public IvrTaskTemplateVO selectIvrTaskTemplateInfoByID(Long ID) {
+        IvrTaskTemplate ivrTaskTemplate = ivrTaskTemplateMapper.selectIvrTaskTemplateByID(ID);
+        IvrTaskTemplateVO ivrTaskTemplateVO = DtoConversionUtils.sourceToTarget(ivrTaskTemplate, IvrTaskTemplateVO.class);
+        IvrTaskTemplateScript ivrTaskTemplateScript = new IvrTaskTemplateScript();
+        ivrTaskTemplateScript.setTemplateID(ivrTaskTemplate.getId());
+        List<IvrTaskTemplateScript> ivrTaskTemplateScripts = ivrTaskTemplateScriptMapper.selectIvrTaskTemplateScriptList(ivrTaskTemplateScript);
+        List<IvrTaskTemplateScriptVO> ivrTaskTemplateScriptVOS = DtoConversionUtils.sourceToTarget(ivrTaskTemplateScripts, IvrTaskTemplateScriptVO.class);
+        for (IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO : ivrTaskTemplateScriptVOS) {
+            IvrTaskTemplateTargetoption ivrTaskTemplateTargetoption=new IvrTaskTemplateTargetoption();
+            ivrTaskTemplateTargetoption.setScriptid(ivrTaskTemplateScriptVO.getScriptID());
+            List<IvrTaskTemplateTargetoption> ivrTaskTemplateTargetoptions = ivrTaskTemplateTargetoptionMapper.selectIvrTaskTemplateTargetoptionList(ivrTaskTemplateTargetoption);
+            ivrTaskTemplateScriptVO.setIvrTaskScriptTargetoptionList(ivrTaskTemplateTargetoptions);
+        }
+        ivrTaskTemplateVO.setIvrTaskTemplateScriptVOList(ivrTaskTemplateScriptVOS);
+
+
+        return ivrTaskTemplateVO;
     }
 
     /**
@@ -78,58 +102,40 @@
     public int saveOrUpdateTempScript(IvrTaskTemplateVO ivrTaskTemplateVO) {
         Integer i = null;
         IvrTaskTemplate ivrTaskTemplate = DtoConversionUtils.sourceToTarget(ivrTaskTemplateVO, IvrTaskTemplate.class);
+
         if (ivrTaskTemplateVO.getIsoperation() != null && ivrTaskTemplateVO.getIsoperation() == 1) {
+            //浼犺繃鏉ョ殑闈欓粯鏃堕棿鏄锛岄渶瑕佹敼鎴愭绉�
+            if (ivrTaskTemplate.getSilencetime() != null)
+                ivrTaskTemplate.setSilencetime(ivrTaskTemplate.getSilencetime() * 1000);
+
             //鏂板
             ivrTaskTemplate.setCreateTime(new Date());
             insertIvrTaskTemplate(ivrTaskTemplate);
-            i = ivrTaskTemplate.getID().intValue();
+            i = ivrTaskTemplate.getId().intValue();
         } else if (ivrTaskTemplateVO.getIsoperation() != null && ivrTaskTemplateVO.getIsoperation() == 2) {
             //淇敼
             ivrTaskTemplate.setUpdateTime(new Date());
             updateIvrTaskTemplate(ivrTaskTemplate);
-            i = ivrTaskTemplate.getID().intValue();
+            i = ivrTaskTemplate.getId().intValue();
         }
-        log.info("鏂板闅忚浠诲姟闅忚妯℃澘鐨刬d涓猴細{}", ivrTaskTemplate.getID());
-
+        log.info("鏂板闅忚浠诲姟闅忚妯℃澘鐨刬d涓猴細{}", ivrTaskTemplate.getId());
 
         //瀵规ā鏉胯瘽鏈拰閫夐」杩涜澶勭悊锛堣瘽鏈〃涓庢寚鏍囪〃杩涜鍚堝苟浜嗭紝锛�
         if (CollectionUtils.isNotEmpty(ivrTaskTemplateVO.getIvrTaskTemplateScriptVOList())) {
             log.error("ivrTaskTemplateVO.getIvrTaskTemplateScriptVOList()鏄惁鏈夋暟鎹搱锛歿}", ivrTaskTemplateVO.getIvrTaskTemplateScriptVOList());
             for (IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO : ivrTaskTemplateVO.getIvrTaskTemplateScriptVOList()) {
-                if (ivrTaskTemplateScriptVO.getIsoperation() != null && ivrTaskTemplateScriptVO.getIsoperation() == 1 || ivrTaskTemplateScriptVO.getIsoperation() == null && ivrTaskTemplateVO.getIsoperation() == 1) {
-                    //鏂板
-                    IvrTaskTemplateScript ivrTaskTemplateScript = DtoConversionUtils.sourceToTarget(ivrTaskTemplateScriptVO, IvrTaskTemplateScript.class);
-                    ivrTaskTemplateScript.setTemplateID(ivrTaskTemplate.getID());
-                    ivrTaskTemplateScript.setCreateTime(new Date());
-                    ivrTaskTemplateScriptMapper.insertIvrTaskTemplateScript(ivrTaskTemplateScript);
-                    ivrTaskTemplateScript.setIsoperation(1);
-                    //瀵归�夐」鐩繘琛屽鐞�
-                    dealOption(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList(), ivrTaskTemplateScript, ivrTaskTemplate.getID());
-
-                } else if (ivrTaskTemplateScriptVO.getIsoperation() != null && ivrTaskTemplateScriptVO.getIsoperation() == 2) {
-                    //淇敼
-                    IvrTaskTemplateScript ivrTaskTemplateScript = DtoConversionUtils.sourceToTarget(ivrTaskTemplateScriptVO, IvrTaskTemplateScript.class);
-                    ivrTaskTemplateScript.setTemplateID(ivrTaskTemplate.getID());
-                    ivrTaskTemplateScript.setUpdateTime(new Date());
-                    ivrTaskTemplateScriptMapper.updateIvrTaskTemplateScript(ivrTaskTemplateScript);
-                    ivrTaskTemplateScript.setIsoperation(2);
-                    //瀵归�夐」鐩繘琛屽鐞�
-                    dealOption(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList(), ivrTaskTemplateScript, ivrTaskTemplate.getID());
-
-                } else if (ivrTaskTemplateScriptVO.getIsoperation() != null && ivrTaskTemplateScriptVO.getIsoperation() == 3) {
-                    //鍒犻櫎
-                    if (ivrTaskTemplateScriptVO.getID() == null) {
-                        log.info("鍒犻櫎澶辫触,妯℃澘璇濇湳id涓虹┖");
-                    } else {
-                        ivrTaskTemplateScriptVO.setUpdateTime(new Date());
-                        ivrTaskTemplateScriptMapper.deleteIvrTaskTemplateScriptByID(ivrTaskTemplateScriptVO.getID());
-                    }
+                if (ivrTaskTemplateScriptVO.getIsoperation() != null) {
+                    IvrTaskTemplateScript ivrTaskTemplateScript = scriptHandle(ivrTaskTemplate, ivrTaskTemplateScriptVO, ivrTaskTemplateScriptVO.getIsoperation());
+                    dealOption(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList(), ivrTaskTemplateScript, ivrTaskTemplate.getId(), ivrTaskTemplateScriptVO.getIsoperation());
+                } else {
+                    IvrTaskTemplateScript ivrTaskTemplateScript = scriptHandle(ivrTaskTemplate, ivrTaskTemplateScriptVO, ivrTaskTemplateVO.getIsoperation());
+                    dealOption(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList(), ivrTaskTemplateScript, ivrTaskTemplate.getId(), ivrTaskTemplateVO.getIsoperation());
                 }
             }
         }
-
-        return ivrTaskTemplate.getID().intValue();
+        return ivrTaskTemplate.getId().intValue();
     }
+
 
     /**
      * 淇敼闅忚浠诲姟闅忚妯℃澘搴�
@@ -151,6 +157,16 @@
      */
     @Override
     public int deleteIvrTaskTemplateByIDs(Long[] IDs) {
+        if (IDs[0] != null) {
+            IvrTaskTemplate ivrTaskTemplate = selectIvrTaskTemplateByID(IDs[0]);
+            if (StringUtils.isNotEmpty(ivrTaskTemplate.getLongTemp()) && ivrTaskTemplate.getLongTemp().equals("1")) {
+                //濡傛灉杩欎釜妯℃澘鏄暱鏈熶换鍔★紝鍒欓渶瑕佸垹闄ゆā鏉夸笌閮ㄩ棬鐨勫叧鑱�
+                TemplateDept templateDept = new TemplateDept();
+                templateDept.setType(21L);
+                templateDept.setTempid(IDs[0]);
+                templateDeptMapper.deleteTemplateDeptByTemplateId(templateDept);
+            }
+        }
         return ivrTaskTemplateMapper.deleteIvrTaskTemplateByIDs(IDs);
     }
 
@@ -191,15 +207,15 @@
 
         //鏌ヨ璇濇湳
         IvrTaskTemplateScript ivrTaskTemplateScript = new IvrTaskTemplateScript();
-        ivrTaskTemplateScript.setTemplateID(ivrTaskTemplates.get(0).getID());
+        ivrTaskTemplateScript.setTemplateID(ivrTaskTemplates.get(0).getId());
         List<IvrTaskTemplateScript> ivrTaskTemplateScripts = ivrTaskTemplateScriptMapper.selectIvrTaskTemplateScriptList(ivrTaskTemplateScript);
         List<IvrTaskTemplateScriptVO> ivrTaskTemplateScriptVOS = DtoConversionUtils.sourceToTarget(ivrTaskTemplateScripts, IvrTaskTemplateScriptVO.class);
 
         //閫氳繃璇濇湳ID鑾峰彇閫夐」
         for (IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO : ivrTaskTemplateScriptVOS) {
-            log.info("ivrLibaTemplateScriptVO鐨勪富閿甶d涓猴細{}", ivrTaskTemplateScriptVO.getID());
+            log.info("ivrLibaTemplateScriptVO鐨勪富閿甶d涓猴細{}", ivrTaskTemplateScriptVO.getId());
             IvrTaskTemplateTargetoption ivrTaskTemplateTargetoption = new IvrTaskTemplateTargetoption();
-            ivrTaskTemplateTargetoption.setScriptid(ivrTaskTemplateScriptVO.getID());
+            ivrTaskTemplateTargetoption.setScriptid(ivrTaskTemplateScriptVO.getId());
             List<IvrTaskTemplateTargetoption> ivrTaskTemplateTargetoptions = ivrTaskTemplateTargetoptionMapper.selectIvrTaskTemplateTargetoptionList(ivrTaskTemplateTargetoption);
             for (IvrTaskTemplateTargetoption ivrTaskTemplateTargetoption1 : ivrTaskTemplateTargetoptions) {
                 ObjectMapper mapper = new ObjectMapper();
@@ -229,31 +245,64 @@
         return templateVO;
     }
 
+    private IvrTaskTemplateScript scriptHandle(IvrTaskTemplate ivrTaskTemplate, IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO, Integer isoperation) {
+        IvrTaskTemplateScript ivrTaskTemplateScript = DtoConversionUtils.sourceToTarget(ivrTaskTemplateScriptVO, IvrTaskTemplateScript.class);
 
-    private void dealOption(List<IvrTaskTemplateTargetoption> ivrTaskTemplateTargetoptionList, IvrTaskTemplateScript ivrTaskTemplateScript, Long tmpID) {
+        if (isoperation == 1) {
+            //鏂板
+            ivrTaskTemplateScript.setTemplateID(ivrTaskTemplate.getId());
+            ivrTaskTemplateScript.setCreateTime(new Date());
+            ivrTaskTemplateScriptMapper.insertIvrTaskTemplateScript(ivrTaskTemplateScript);
+            ivrTaskTemplateScript.setIsoperation(1);
+        } else if (isoperation == 2) {
+            //淇敼
+            ivrTaskTemplateScript.setTemplateID(ivrTaskTemplate.getId());
+            ivrTaskTemplateScript.setUpdateTime(new Date());
+            ivrTaskTemplateScriptMapper.updateIvrTaskTemplateScript(ivrTaskTemplateScript);
+            ivrTaskTemplateScript.setIsoperation(2);
+
+        } else if (isoperation == 3) {
+            //鍒犻櫎
+            if (ivrTaskTemplateScriptVO.getId() == null) {
+                log.info("鍒犻櫎澶辫触,妯℃澘璇濇湳id涓虹┖");
+            } else {
+                ivrTaskTemplateScriptVO.setUpdateTime(new Date());
+                ivrTaskTemplateScriptMapper.deleteIvrTaskTemplateScriptByID(ivrTaskTemplateScriptVO.getId());
+            }
+        }
+        return ivrTaskTemplateScript;
+    }
+
+    private void dealOption(List<IvrTaskTemplateTargetoption> ivrTaskTemplateTargetoptionList, IvrTaskTemplateScript ivrTaskTemplateScript, Long tmpID, Integer isoperation) {
         log.info("ivrLibaTemplateScript鐨勫�间负锛歿}", ivrTaskTemplateScript);
+        Integer lsisoperation = isoperation;
         //瀵规ā鏉挎寚鏍囬�夐」杩涜澶勭悊
         if (CollectionUtils.isNotEmpty(ivrTaskTemplateTargetoptionList)) {
             for (IvrTaskTemplateTargetoption ivrTaskTemplateTargetoption : ivrTaskTemplateTargetoptionList) {
-                if (ivrTaskTemplateTargetoption.getIsoperation() != null && ivrTaskTemplateTargetoption.getIsoperation() == 1 || ivrTaskTemplateTargetoption.getIsoperation() == null && ivrTaskTemplateScript.getIsoperation() == 1) {
+                if (ivrTaskTemplateTargetoption.getIsoperation() != null) {
+                    isoperation = ivrTaskTemplateTargetoption.getIsoperation();
+                } else {
+                    isoperation = lsisoperation;
+                }
+                if (isoperation == 1) {
                     //鏂板
                     ivrTaskTemplateTargetoption.setTemplateID(tmpID);
-                    ivrTaskTemplateTargetoption.setScriptid(ivrTaskTemplateScript.getID());
+                    ivrTaskTemplateTargetoption.setScriptid(ivrTaskTemplateScript.getId());
                     if (CollectionUtils.isNotEmpty(ivrTaskTemplateTargetoption.getDynamiccruxs()))
                         ivrTaskTemplateTargetoption.setDynamiccruxsJson(JSON.toJSONString(ivrTaskTemplateTargetoption.getDynamiccruxs()));
                     if (CollectionUtils.isNotEmpty(ivrTaskTemplateTargetoption.getNodynamiccruxs()))
                         ivrTaskTemplateTargetoption.setNodynamiccruxsJson(JSON.toJSONString(ivrTaskTemplateTargetoption.getNodynamiccruxs()));
                     ivrTaskTemplateTargetoptionMapper.insertIvrTaskTemplateTargetoption(ivrTaskTemplateTargetoption);
-                } else if (ivrTaskTemplateTargetoption.getIsoperation() != null && ivrTaskTemplateTargetoption.getIsoperation() == 2) {
+                } else if (isoperation == 2) {
                     //淇敼
                     ivrTaskTemplateTargetoption.setTemplateID(tmpID);
-                    ivrTaskTemplateTargetoption.setScriptid(ivrTaskTemplateScript.getID());
+                    ivrTaskTemplateTargetoption.setScriptid(ivrTaskTemplateScript.getId());
                     if (CollectionUtils.isNotEmpty(ivrTaskTemplateTargetoption.getDynamiccruxs()))
                         ivrTaskTemplateTargetoption.setDynamiccruxsJson(JSON.toJSONString(ivrTaskTemplateTargetoption.getDynamiccruxs()));
                     if (CollectionUtils.isNotEmpty(ivrTaskTemplateTargetoption.getNodynamiccruxs()))
                         ivrTaskTemplateTargetoption.setNodynamiccruxsJson(JSON.toJSONString(ivrTaskTemplateTargetoption.getNodynamiccruxs()));
                     ivrTaskTemplateTargetoptionMapper.updateIvrTaskTemplateTargetoption(ivrTaskTemplateTargetoption);
-                } else if (ivrTaskTemplateTargetoption.getIsoperation() != null && ivrTaskTemplateTargetoption.getIsoperation() == 3) {
+                } else if (isoperation == 3) {
                     //鍒犻櫎
                     if (ivrTaskTemplateTargetoption.getId() == null) {
                         log.info("鍒犻櫎澶辫触,妯℃澘鎸囨爣閫夐」id涓虹┖");

--
Gitblit v1.9.3