liusheng
2024-11-29 8d913e5594f45ca2a4ce656ea9feb99ffe715913
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,7 +102,12 @@
    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);
@@ -128,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);
    }
@@ -174,9 +213,9 @@
        //通过话术ID获取选项
        for (IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO : ivrTaskTemplateScriptVOS) {
            log.info("ivrLibaTemplateScriptVO的主键id为:{}", ivrTaskTemplateScriptVO.getID());
            log.info("ivrLibaTemplateScriptVO的主键id为:{}", 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();
@@ -224,11 +263,11 @@
        } else if (isoperation == 3) {
            //删除
            if (ivrTaskTemplateScriptVO.getID() == null) {
            if (ivrTaskTemplateScriptVO.getId() == null) {
                log.info("删除失败,模板话术id为空");
            } else {
                ivrTaskTemplateScriptVO.setUpdateTime(new Date());
                ivrTaskTemplateScriptMapper.deleteIvrTaskTemplateScriptByID(ivrTaskTemplateScriptVO.getID());
                ivrTaskTemplateScriptMapper.deleteIvrTaskTemplateScriptByID(ivrTaskTemplateScriptVO.getId());
            }
        }
        return ivrTaskTemplateScript;