From ac79f032745c975eb77d6fb148ed390f2373559e Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 28 十二月 2023 17:58:52 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/service/impl/IvrLibaTemplateServiceImpl.java | 259 ++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 214 insertions(+), 45 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/IvrLibaTemplateServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/IvrLibaTemplateServiceImpl.java
index c6ccb10..3487f55 100644
--- a/smartor/src/main/java/com/smartor/service/impl/IvrLibaTemplateServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/IvrLibaTemplateServiceImpl.java
@@ -1,96 +1,265 @@
package com.smartor.service.impl;
-import java.util.List;
+import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.DtoConversionUtils;
+import com.smartor.domain.*;
+import com.smartor.mapper.*;
+import com.smartor.service.IIvrLibaTemplateService;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import com.smartor.mapper.IvrLibaTemplateMapper;
-import com.smartor.domain.IvrLibaTemplate;
-import com.smartor.service.IIvrLibaTemplateService;
+
+import java.util.List;
/**
- * 璇濇湳妯℃澘搴揝ervice涓氬姟灞傚鐞�
- *
- * @author smartor
- * @date 2023-03-22
+ * 妯℃澘搴揝ervice涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2023-12-23
*/
+@Slf4j
@Service
-public class IvrLibaTemplateServiceImpl implements IIvrLibaTemplateService
-{
+public class IvrLibaTemplateServiceImpl implements IIvrLibaTemplateService {
@Autowired
private IvrLibaTemplateMapper ivrLibaTemplateMapper;
+ @Autowired
+ private IvrLibaTemplateTagMapper ivrLibaTemplateTagMapper;
+
+ @Autowired
+ private IvrLibaTemplateTargetMapper ivrLibaTemplateTargetMapper;
+
+ @Autowired
+ private IvrLibaTemplateTargetoptionMapper ivrLibaTemplateTargetOptionMapper;
+
+ @Autowired
+ private IvrLibaTemplateScriptMapper ivrLibaTemplateScriptMapper;
+
/**
- * 鏌ヨ璇濇湳妯℃澘搴�
- *
- * @param templateID 璇濇湳妯℃澘搴撲富閿�
- * @return 璇濇湳妯℃澘搴�
+ * 鏌ヨ妯℃澘搴�
+ *
+ * @param ID 妯℃澘搴撲富閿�
+ * @return 妯℃澘搴�
*/
@Override
- public IvrLibaTemplate selectIvrLibaTemplateByTemplateID(String templateID)
- {
- return ivrLibaTemplateMapper.selectIvrLibaTemplateByTemplateID(templateID);
+ public IvrLibaTemplate selectIvrLibaTemplateByID(Long ID) {
+ return ivrLibaTemplateMapper.selectIvrLibaTemplateByID(ID);
}
/**
- * 鏌ヨ璇濇湳妯℃澘搴撳垪琛�
- *
- * @param ivrLibaTemplate 璇濇湳妯℃澘搴�
- * @return 璇濇湳妯℃澘搴�
+ * 鏌ヨ妯℃澘搴撳垪琛�
+ *
+ * @param ivrLibaTemplate 妯℃澘搴�
+ * @return 妯℃澘搴�
*/
@Override
- public List<IvrLibaTemplate> selectIvrLibaTemplateList(IvrLibaTemplate ivrLibaTemplate)
- {
+ public List<IvrLibaTemplate> selectIvrLibaTemplateList(IvrLibaTemplate ivrLibaTemplate) {
return ivrLibaTemplateMapper.selectIvrLibaTemplateList(ivrLibaTemplate);
}
/**
- * 鏂板璇濇湳妯℃澘搴�
- *
- * @param ivrLibaTemplate 璇濇湳妯℃澘搴�
+ * 鏂板妯℃澘搴�
+ *
+ * @param ivrLibaTemplate 妯℃澘搴�
* @return 缁撴灉
*/
@Override
- public int insertIvrLibaTemplate(IvrLibaTemplate ivrLibaTemplate)
- {
+ public int insertIvrLibaTemplate(IvrLibaTemplate ivrLibaTemplate) {
ivrLibaTemplate.setCreateTime(DateUtils.getNowDate());
return ivrLibaTemplateMapper.insertIvrLibaTemplate(ivrLibaTemplate);
}
/**
- * 淇敼璇濇湳妯℃澘搴�
- *
- * @param ivrLibaTemplate 璇濇湳妯℃澘搴�
+ * 淇敼妯℃澘搴�
+ *
+ * @param ivrLibaTemplate 妯℃澘搴�
* @return 缁撴灉
*/
@Override
- public int updateIvrLibaTemplate(IvrLibaTemplate ivrLibaTemplate)
- {
+ public int updateIvrLibaTemplate(IvrLibaTemplate ivrLibaTemplate) {
ivrLibaTemplate.setUpdateTime(DateUtils.getNowDate());
return ivrLibaTemplateMapper.updateIvrLibaTemplate(ivrLibaTemplate);
}
/**
- * 鎵归噺鍒犻櫎璇濇湳妯℃澘搴�
- *
- * @param templateIDs 闇�瑕佸垹闄ょ殑璇濇湳妯℃澘搴撲富閿�
+ * 鎵归噺鍒犻櫎妯℃澘搴�
+ *
+ * @param IDs 闇�瑕佸垹闄ょ殑妯℃澘搴撲富閿�
* @return 缁撴灉
*/
@Override
- public int deleteIvrLibaTemplateByTemplateIDs(String[] templateIDs)
- {
- return ivrLibaTemplateMapper.deleteIvrLibaTemplateByTemplateIDs(templateIDs);
+ public int deleteIvrLibaTemplateByIDs(Long[] IDs) {
+ Integer i = null;
+ for (Long id : IDs) {
+ i = ivrLibaTemplateMapper.deleteIvrLibaTemplateByID(id);
+ }
+ return i;
}
/**
- * 鍒犻櫎璇濇湳妯℃澘搴撲俊鎭�
- *
- * @param templateID 璇濇湳妯℃澘搴撲富閿�
+ * 鍒犻櫎妯℃澘搴撲俊鎭�
+ *
+ * @param ID 妯℃澘搴撲富閿�
* @return 缁撴灉
*/
@Override
- public int deleteIvrLibaTemplateByTemplateID(String templateID)
- {
- return ivrLibaTemplateMapper.deleteIvrLibaTemplateByTemplateID(templateID);
+ public int deleteIvrLibaTemplateByID(Long ID) {
+ return ivrLibaTemplateMapper.deleteIvrLibaTemplateByID(ID);
}
+
+ /**
+ * 鏂板鎴栦慨鏀归棶棰樿鎯�
+ *
+ * @param ivrLibaTemplateVO
+ * @return
+ */
+ @Override
+ public Integer saveOrUpdateTemplate(IvrLibaTemplateVO ivrLibaTemplateVO) {
+ Integer i = null;
+ IvrLibaTemplate ivrLibaTemplate = DtoConversionUtils.sourceToTarget(ivrLibaTemplateVO, IvrLibaTemplate.class);
+ if (ivrLibaTemplateVO.getIsoperation() != null && ivrLibaTemplateVO.getIsoperation() == 1) {
+ //鏂板
+ i = ivrLibaTemplateMapper.insertIvrLibaTemplate(ivrLibaTemplate);
+ } else if (ivrLibaTemplateVO.getIsoperation() != null && ivrLibaTemplateVO.getIsoperation() == 2) {
+ //淇敼
+ i = ivrLibaTemplateMapper.updateIvrLibaTemplate(ivrLibaTemplate);
+ }
+ log.info("鏂板鎴栦慨鏀规ā鏉胯鎯呯殑id涓猴細{}", ivrLibaTemplate.getID());
+
+ //瀵规ā鏉挎爣绛捐繘琛屽鐞�
+ if (CollectionUtils.isNotEmpty(ivrLibaTemplateVO.getIvrLibaTemplateTagList())) {
+ for (IvrLibaTemplateTag ivrLibaTemplateTag : ivrLibaTemplateVO.getIvrLibaTemplateTagList()) {
+ if (ivrLibaTemplateTag.getIsoperation() != null && ivrLibaTemplateTag.getIsoperation() == 1) {
+ //鏂板
+ ivrLibaTemplateTag.setTemplateid(ivrLibaTemplate.getID());
+ ivrLibaTemplateTagMapper.insertIvrLibaTemplateTag(ivrLibaTemplateTag);
+ } else if (ivrLibaTemplateTag.getIsoperation() != null && ivrLibaTemplateTag.getIsoperation() == 2) {
+ //淇敼
+ ivrLibaTemplateTag.setTemplateid(ivrLibaTemplate.getID());
+ ivrLibaTemplateTagMapper.updateIvrLibaTemplateTag(ivrLibaTemplateTag);
+ } else if (ivrLibaTemplateTag.getIsoperation() != null && ivrLibaTemplateTag.getIsoperation() == 3) {
+ //鍒犻櫎
+ if (ivrLibaTemplateTag.getId() == null) {
+ log.info("鍒犻櫎澶辫触,妯℃澘鎸囨爣id涓虹┖");
+ } else {
+ ivrLibaTemplateTagMapper.deleteIvrLibaTemplateTagById(ivrLibaTemplateTag.getId());
+ }
+ }
+ }
+ }
+
+ //瀵规ā鏉胯瘽鏈拰閫夐」杩涜澶勭悊锛堣瘽鏈〃涓庢寚鏍囪〃杩涜鍚堝苟浜嗭紝锛�
+ if (CollectionUtils.isNotEmpty(ivrLibaTemplateVO.getIvrLibaTemplateScriptVOList())) {
+ for (IvrLibaTemplateScriptVO ivrLibaTemplateScriptVO : ivrLibaTemplateVO.getIvrLibaTemplateScriptVOList()) {
+ if (ivrLibaTemplateScriptVO.getIsoperation() != null && ivrLibaTemplateScriptVO.getIsoperation() == 1) {
+ //鏂板
+ IvrLibaTemplateScript ivrLibaTemplateScript = DtoConversionUtils.sourceToTarget(ivrLibaTemplateScriptVO, IvrLibaTemplateScript.class);
+ ivrLibaTemplateScript.setTemplateID(ivrLibaTemplate.getID());
+ ivrLibaTemplateScriptMapper.insertIvrLibaTemplateScript(ivrLibaTemplateScript);
+ //瀵归�夐」鐩繘琛屽鐞�
+ dealOption(ivrLibaTemplateScriptVO.getIvrLibaTemplateTargetoptionList(), ivrLibaTemplateScript, ivrLibaTemplate.getID());
+
+ } else if (ivrLibaTemplateScriptVO.getIsoperation() != null && ivrLibaTemplateScriptVO.getIsoperation() == 2) {
+ //淇敼
+ IvrLibaTemplateScript ivrLibaTemplateScript = DtoConversionUtils.sourceToTarget(ivrLibaTemplateScriptVO, IvrLibaTemplateScript.class);
+ ivrLibaTemplateScript.setTemplateID(ivrLibaTemplate.getID());
+ ivrLibaTemplateScriptMapper.updateIvrLibaTemplateScript(ivrLibaTemplateScript);
+ //瀵归�夐」鐩繘琛屽鐞�
+ dealOption(ivrLibaTemplateScriptVO.getIvrLibaTemplateTargetoptionList(), ivrLibaTemplateScript, ivrLibaTemplate.getID());
+
+ } else if (ivrLibaTemplateScriptVO.getIsoperation() != null && ivrLibaTemplateScriptVO.getIsoperation() == 3) {
+ //鍒犻櫎
+ if (ivrLibaTemplateScriptVO.getID() == null) {
+ log.info("鍒犻櫎澶辫触,妯℃澘璇濇湳id涓虹┖");
+ } else {
+ ivrLibaTemplateTagMapper.deleteIvrLibaTemplateTagById(ivrLibaTemplateScriptVO.getID());
+ }
+ }
+ }
+ }
+
+ return i;
+ }
+
+ /**
+ * 閫夐」澶勭悊
+ *
+ * @param ivrLibaTemplateTargetoptionList
+ * @param ivrLibaTemplateScript
+ * @param tmpID
+ */
+ private void dealOption(List<IvrLibaTemplateTargetoption> ivrLibaTemplateTargetoptionList, IvrLibaTemplateScript ivrLibaTemplateScript, Long tmpID) {
+ //瀵规ā鏉挎寚鏍囬�夐」杩涜澶勭悊
+ if (CollectionUtils.isNotEmpty(ivrLibaTemplateTargetoptionList)) {
+ for (IvrLibaTemplateTargetoption ivrLibaTemplateTargetoption : ivrLibaTemplateTargetoptionList) {
+ if (ivrLibaTemplateTargetoption.getIsoperation() != null && ivrLibaTemplateTargetoption.getIsoperation() == 1) {
+ //鏂板
+ ivrLibaTemplateTargetoption.setTemplateID(tmpID);
+ ivrLibaTemplateTargetoption.setTargetid(ivrLibaTemplateScript.getTargetid());
+ ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScript.getScriptid());
+ ivrLibaTemplateTargetOptionMapper.insertIvrLibaTemplateTargetoption(ivrLibaTemplateTargetoption);
+ } else if (ivrLibaTemplateTargetoption.getIsoperation() != null && ivrLibaTemplateTargetoption.getIsoperation() == 2) {
+ //淇敼
+ ivrLibaTemplateTargetoption.setTemplateID(tmpID);
+ ivrLibaTemplateTargetoption.setTargetid(ivrLibaTemplateScript.getTargetid());
+ ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScript.getScriptid());
+ ivrLibaTemplateTargetOptionMapper.updateIvrLibaTemplateTargetoption(ivrLibaTemplateTargetoption);
+ } else if (ivrLibaTemplateTargetoption.getIsoperation() != null && ivrLibaTemplateTargetoption.getIsoperation() == 3) {
+ //鍒犻櫎
+ if (ivrLibaTemplateTargetoption.getId() == null) {
+ log.info("鍒犻櫎澶辫触,妯℃澘鎸囨爣閫夐」id涓虹┖");
+ } else {
+ ivrLibaTemplateTargetOptionMapper.deleteIvrLibaTemplateTargetoptionById(ivrLibaTemplateTargetoption.getId());
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * 鏌ヨ妯℃澘璇︽儏鏍规嵁鏉′欢
+ */
+ @Override
+ public IvrLibaTemplateVO selectInfoByCondition(IvrLibaTemplateVO ivrLibaTemplateVO) {
+ log.info("鏌ヨ妯℃澘璇︽儏鏍规嵁鏉′欢鐨勫叆鍙備负 : {}", ivrLibaTemplateVO);
+ //鍏堟牴鎹潯浠舵煡璇㈤棶棰樿〃淇℃伅
+ IvrLibaTemplate ivrLibaTemplate = DtoConversionUtils.sourceToTarget(ivrLibaTemplateVO, IvrLibaTemplate.class);
+ List<IvrLibaTemplate> ivrLibaTemplates = selectIvrLibaTemplateList(ivrLibaTemplate);
+ if (CollectionUtils.isEmpty(ivrLibaTemplates)) {
+ log.info("鎻愪緵鐨勬潯浠�,鏌ヨ妯℃澘璇︽儏鏁版嵁涓虹┖锛歿}", ivrLibaTemplates);
+ throw new BaseException("鎻愪緵鐨勬潯浠�,鏌ヨ妯℃澘璇︽儏鏁版嵁涓虹┖");
+ }
+
+ log.info("ivrLibaTemplates鐨勬煡璇㈢粨鏋滀负:{},鏁伴噺涓� : {}", ivrLibaTemplates.get(0), ivrLibaTemplates.size());
+ //瀹氫箟IvrLibaTemplateVO 鐢ㄤ簬杩斿弬
+ IvrLibaTemplateVO templateVO = DtoConversionUtils.sourceToTarget(ivrLibaTemplates.get(0), IvrLibaTemplateVO.class);
+
+ //鑾峰彇tag淇℃伅
+ IvrLibaTemplateTag ivrLibaTemplateTag = new IvrLibaTemplateTag();
+ ivrLibaTemplateTag.setTemplateid(ivrLibaTemplates.get(0).getID());
+ List<IvrLibaTemplateTag> ivrLibaTemplateTags = ivrLibaTemplateTagMapper.selectIvrLibaTemplateTagList(ivrLibaTemplateTag);
+
+ //鏌ヨ璇濇湳
+ IvrLibaTemplateScript ivrLibaTemplateScript = new IvrLibaTemplateScript();
+ ivrLibaTemplateScript.setTemplateID(ivrLibaTemplates.get(0).getID());
+ List<IvrLibaTemplateScript> ivrLibaTemplateScripts = ivrLibaTemplateScriptMapper.selectIvrLibaTemplateScriptList(ivrLibaTemplateScript);
+ List<IvrLibaTemplateScriptVO> ivrLibaTemplateScriptVOS = DtoConversionUtils.sourceToTarget(ivrLibaTemplateScripts, IvrLibaTemplateScriptVO.class);
+
+ //閫氳繃璇濇湳ID鑾峰彇閫夐」
+ for (IvrLibaTemplateScriptVO ivrLibaTemplateScriptVO : ivrLibaTemplateScriptVOS) {
+ log.info("ivrLibaTemplateScriptVO鐨勪富閿甶d涓猴細{}", ivrLibaTemplateScriptVO.getID());
+ IvrLibaTemplateTargetoption ivrLibaTemplateTargetoption = new IvrLibaTemplateTargetoption();
+ ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScriptVO.getID());
+ List<IvrLibaTemplateTargetoption> ivrLibaTemplateTargetoptions = ivrLibaTemplateTargetOptionMapper.selectIvrLibaTemplateTargetoptionList(ivrLibaTemplateTargetoption);
+ ivrLibaTemplateScriptVO.setIvrLibaTemplateTargetoptionList(ivrLibaTemplateTargetoptions);
+ }
+
+ //鏁版嵁缁勮
+ templateVO.setIvrLibaTemplateTagList(ivrLibaTemplateTags);
+ templateVO.setIvrLibaTemplateScriptVOList(ivrLibaTemplateScriptVOS);
+ return templateVO;
+ }
+
}
--
Gitblit v1.9.3