liusheng
2024-09-18 907641e56c2085aaa81f267946dc3e3e9fca73e7
smartor/src/main/java/com/smartor/service/impl/SvyTaskTemplateServiceImpl.java
@@ -135,38 +135,15 @@
        if (CollectionUtils.isNotEmpty(svyTaskTemplateVO.getSvyTaskTemplateScriptVOS())) {
            log.error("ivrTaskTemplateVO.getIvrTaskTemplateScriptVOList()是否有数据哈:{}", svyTaskTemplateVO.getSvyTaskTemplateScriptVOS());
            for (SvyTaskTemplateScriptVO svyTaskTemplateScriptVO : svyTaskTemplateVO.getSvyTaskTemplateScriptVOS()) {
                if (svyTaskTemplateScriptVO.getIsoperation() != null && svyTaskTemplateScriptVO.getIsoperation() == 1 || svyTaskTemplateScriptVO.getIsoperation() == null && svyTaskTemplateScriptVO.getIsoperation() == 1) {
                    //新增
                    SvyTaskTemplateScript svyTaskTemplateScript = DtoConversionUtils.sourceToTarget(svyTaskTemplateScriptVO, SvyTaskTemplateScript.class);
                    svyTaskTemplateScript.setTemplateID(svyTaskTemplate.getId());
                    svyTaskTemplateScript.setCreateTime(new Date());
                    svyTaskTemplateScriptMapper.insertSvyTaskTemplateScript(svyTaskTemplateScript);
                    svyTaskTemplateScript.setIsoperation(1);
                    //对选项目进行处理
                    dealOption(svyTaskTemplateScriptVO.getSvyTaskTemplateTargetoptions(), svyTaskTemplateScript, svyTaskTemplate.getId());
                } else if (svyTaskTemplateScriptVO.getIsoperation() != null && svyTaskTemplateScriptVO.getIsoperation() == 2) {
                    //修改
                    SvyTaskTemplateScript svyTaskTemplateScript = DtoConversionUtils.sourceToTarget(svyTaskTemplateScriptVO, SvyTaskTemplateScript.class);
                    svyTaskTemplateScript.setTemplateID(svyTaskTemplate.getId());
                    svyTaskTemplateScript.setUpdateTime(new Date());
                    svyTaskTemplateScriptMapper.updateSvyTaskTemplateScript(svyTaskTemplateScript);
                    svyTaskTemplateScript.setIsoperation(2);
                    //对选项目进行处理
                    dealOption(svyTaskTemplateScriptVO.getSvyTaskTemplateTargetoptions(), svyTaskTemplateScript, svyTaskTemplate.getId());
                } else if (svyTaskTemplateScriptVO.getIsoperation() != null && svyTaskTemplateScriptVO.getIsoperation() == 3) {
                    //删除
                    if (svyTaskTemplateScriptVO.getID() == null) {
                        log.info("删除失败,模板话术id为空");
                    } else {
                        svyTaskTemplateScriptVO.setUpdateTime(new Date());
                        svyTaskTemplateScriptMapper.deleteSvyTaskTemplateScriptByID(svyTaskTemplateScriptVO.getID());
                    }
                if (svyTaskTemplateScriptVO.getIsoperation() != null) {
                    SvyTaskTemplateScript svyTaskTemplateScript = scriptHandle(svyTaskTemplate, svyTaskTemplateScriptVO, svyTaskTemplateScriptVO.getIsoperation());
                    dealOption(svyTaskTemplateScriptVO.getSvyTaskTemplateTargetoptions(), svyTaskTemplateScript, svyTaskTemplate.getId(), svyTaskTemplateScriptVO.getIsoperation());
                } else {
                    SvyTaskTemplateScript svyTaskTemplateScript = scriptHandle(svyTaskTemplate, svyTaskTemplateScriptVO, svyTaskTemplateVO.getIsoperation());
                    dealOption(svyTaskTemplateScriptVO.getSvyTaskTemplateTargetoptions(), svyTaskTemplateScript, svyTaskTemplate.getId(), svyTaskTemplateVO.getIsoperation());
                }
            }
        }
        return i;
    }
@@ -197,9 +174,9 @@
        //通过话术ID获取选项
        for (SvyTaskTemplateScriptVO svyTaskTemplateScriptVO : svyTaskTemplateScriptVOS) {
            log.info("svyLibaTemplateScriptVO的主键id为:{}", svyTaskTemplateScriptVO.getID());
            log.info("svyLibaTemplateScriptVO的主键id为:{}", svyTaskTemplateScriptVO.getId());
            SvyTaskTemplateTargetoption svyTaskTemplateTargetoption = new SvyTaskTemplateTargetoption();
            svyTaskTemplateTargetoption.setScriptid(svyTaskTemplateScriptVO.getID());
            svyTaskTemplateTargetoption.setScriptid(svyTaskTemplateScriptVO.getId());
            List<SvyTaskTemplateTargetoption> svyTaskTemplateTargetoptions = svyTaskTemplateTargetoptionMapper.selectSvyTaskTemplateTargetoptionList(svyTaskTemplateTargetoption);
            for (SvyTaskTemplateTargetoption svyTaskTemplateTargetoption1 : svyTaskTemplateTargetoptions) {
                ObjectMapper mapper = new ObjectMapper();
@@ -229,30 +206,62 @@
    }
    private void dealOption(List<SvyTaskTemplateTargetoption> svyTaskTemplateTargetoptions, SvyTaskTemplateScript svyTaskTemplateScript, Long tmpID) {
    private SvyTaskTemplateScript scriptHandle(SvyTaskTemplate svyTaskTemplate, SvyTaskTemplateScriptVO svyTaskTemplateScriptVO, Integer isoperation) {
        SvyTaskTemplateScript svyTaskTemplateScript = DtoConversionUtils.sourceToTarget(svyTaskTemplateScriptVO, SvyTaskTemplateScript.class);
        if (isoperation == 1) {
            //新增
            svyTaskTemplateScript.setTemplateID(svyTaskTemplate.getId());
            svyTaskTemplateScript.setCreateTime(new Date());
            svyTaskTemplateScriptMapper.insertSvyTaskTemplateScript(svyTaskTemplateScript);
            svyTaskTemplateScript.setIsoperation(1);
        } else if (isoperation == 2) {
            //修改
            svyTaskTemplateScript.setTemplateID(svyTaskTemplate.getId());
            svyTaskTemplateScript.setUpdateTime(new Date());
            svyTaskTemplateScriptMapper.updateSvyTaskTemplateScript(svyTaskTemplateScript);
            svyTaskTemplateScript.setIsoperation(2);
        } else if (isoperation == 3) {
            if (svyTaskTemplateScriptVO.getId() == null) {
                log.info("删除失败,模板话术id为空");
            } else {
                svyTaskTemplateScriptVO.setUpdateTime(new Date());
                svyTaskTemplateScriptMapper.deleteSvyTaskTemplateScriptByID(svyTaskTemplateScriptVO.getId());
            }
        }
        return svyTaskTemplateScript;
    }
    private void dealOption(List<SvyTaskTemplateTargetoption> svyTaskTemplateTargetoptions, SvyTaskTemplateScript svyTaskTemplateScript, Long tmpID, Integer isoperation) {
        log.info("svyTaskTemplateScript的值为:{}", svyTaskTemplateScript);
        Integer lsIsoperation = isoperation;
        //对模板指标选项进行处理
        if (CollectionUtils.isNotEmpty(svyTaskTemplateTargetoptions)) {
            for (SvyTaskTemplateTargetoption svyTaskTemplateTargetoption : svyTaskTemplateTargetoptions) {
                if (svyTaskTemplateTargetoption.getIsoperation() != null && svyTaskTemplateTargetoption.getIsoperation() == 1 || svyTaskTemplateTargetoption.getIsoperation() == null && svyTaskTemplateTargetoption.getIsoperation() == 1) {
                // 如果选项本身的operation不为空,就用自己的;不然,就用传过来的
                if (svyTaskTemplateTargetoption.getIsoperation() != null) {
                    isoperation = svyTaskTemplateTargetoption.getIsoperation();
                } else {
                    isoperation = lsIsoperation;
                }
                if (isoperation == 1) {
                    //新增
                    svyTaskTemplateTargetoption.setTemplateID(tmpID);
                    svyTaskTemplateTargetoption.setScriptid(svyTaskTemplateScript.getID());
                    svyTaskTemplateTargetoption.setScriptid(svyTaskTemplateScript.getId());
                    if (CollectionUtils.isNotEmpty(svyTaskTemplateTargetoption.getDynamiccruxs()))
                        svyTaskTemplateTargetoption.setDynamiccruxsJson(JSON.toJSONString(svyTaskTemplateTargetoption.getDynamiccruxs()));
                    if (CollectionUtils.isNotEmpty(svyTaskTemplateTargetoption.getNodynamiccruxs()))
                        svyTaskTemplateTargetoption.setNodynamiccruxsJson(JSON.toJSONString(svyTaskTemplateTargetoption.getNodynamiccruxs()));
                    svyTaskTemplateTargetoptionMapper.insertSvyTaskTemplateTargetoption(svyTaskTemplateTargetoption);
                } else if (svyTaskTemplateTargetoption.getIsoperation() != null && svyTaskTemplateTargetoption.getIsoperation() == 2) {
                } else if (isoperation == 2) {
                    //修改
                    svyTaskTemplateTargetoption.setTemplateID(tmpID);
                    svyTaskTemplateTargetoption.setScriptid(svyTaskTemplateScript.getID());
                    svyTaskTemplateTargetoption.setScriptid(svyTaskTemplateScript.getId());
                    if (CollectionUtils.isNotEmpty(svyTaskTemplateTargetoption.getDynamiccruxs()))
                        svyTaskTemplateTargetoption.setDynamiccruxsJson(JSON.toJSONString(svyTaskTemplateTargetoption.getDynamiccruxs()));
                    if (CollectionUtils.isNotEmpty(svyTaskTemplateTargetoption.getNodynamiccruxs()))
                        svyTaskTemplateTargetoption.setNodynamiccruxsJson(JSON.toJSONString(svyTaskTemplateTargetoption.getNodynamiccruxs()));
                    svyTaskTemplateTargetoptionMapper.updateSvyTaskTemplateTargetoption(svyTaskTemplateTargetoption);
                } else if (svyTaskTemplateTargetoption.getIsoperation() != null && svyTaskTemplateTargetoption.getIsoperation() == 3) {
                } else if (isoperation == 3) {
                    //删除
                    if (svyTaskTemplateTargetoption.getId() == null) {
                        log.info("删除失败,模板指标选项id为空");