liusheng
2024-04-15 fdf1b9c1e4489a0c2615fa596268b2f71fad7b4c
smartor/src/main/java/com/smartor/service/impl/IvrLibaTemplateServiceImpl.java
@@ -1,8 +1,13 @@
package com.smartor.service.impl;
import com.alibaba.fastjson2.JSON;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
import com.ruoyi.common.utils.StringUtils;
import com.smartor.domain.*;
import com.smartor.mapper.*;
import com.smartor.service.IIvrLibaTemplateService;
@@ -11,8 +16,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.*;
/**
 * 模板库Service业务层处理
@@ -227,11 +231,19 @@
                    //新增
                    ivrLibaTemplateTargetoption.setTemplateID(tmpID);
                    ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScript.getID());
                    if (CollectionUtils.isNotEmpty(ivrLibaTemplateTargetoption.getDynamiccruxs()))
                        ivrLibaTemplateTargetoption.setDynamiccruxsJson(JSON.toJSONString(ivrLibaTemplateTargetoption.getDynamiccruxs()));
                    if (CollectionUtils.isNotEmpty(ivrLibaTemplateTargetoption.getNodynamiccruxs()))
                        ivrLibaTemplateTargetoption.setNodynamiccruxsJson(JSON.toJSONString(ivrLibaTemplateTargetoption.getNodynamiccruxs()));
                    ivrLibaTemplateTargetOptionMapper.insertIvrLibaTemplateTargetoption(ivrLibaTemplateTargetoption);
                } else if (ivrLibaTemplateTargetoption.getIsoperation() != null && ivrLibaTemplateTargetoption.getIsoperation() == 2) {
                    //修改
                    ivrLibaTemplateTargetoption.setTemplateID(tmpID);
                    ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScript.getID());
                    if (CollectionUtils.isNotEmpty(ivrLibaTemplateTargetoption.getDynamiccruxs()))
                        ivrLibaTemplateTargetoption.setDynamiccruxsJson(JSON.toJSONString(ivrLibaTemplateTargetoption.getDynamiccruxs()));
                    if (CollectionUtils.isNotEmpty(ivrLibaTemplateTargetoption.getNodynamiccruxs()))
                        ivrLibaTemplateTargetoption.setNodynamiccruxsJson(JSON.toJSONString(ivrLibaTemplateTargetoption.getNodynamiccruxs()));
                    ivrLibaTemplateTargetOptionMapper.updateIvrLibaTemplateTargetoption(ivrLibaTemplateTargetoption);
                } else if (ivrLibaTemplateTargetoption.getIsoperation() != null && ivrLibaTemplateTargetoption.getIsoperation() == 3) {
                    //删除
@@ -280,9 +292,28 @@
            IvrLibaTemplateTargetoption ivrLibaTemplateTargetoption = new IvrLibaTemplateTargetoption();
            ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScriptVO.getID());
            List<IvrLibaTemplateTargetoption> ivrLibaTemplateTargetoptions = ivrLibaTemplateTargetOptionMapper.selectIvrLibaTemplateTargetoptionList(ivrLibaTemplateTargetoption);
            for (IvrLibaTemplateTargetoption ivrLibaTemplateTargetoption1 : ivrLibaTemplateTargetoptions) {
                ObjectMapper mapper = new ObjectMapper();
                if (!StringUtils.isEmpty(ivrLibaTemplateTargetoption1.getDynamiccruxsJson())) {
                    try {
                        ivrLibaTemplateTargetoption1.setDynamiccruxs(mapper.readValue(ivrLibaTemplateTargetoption1.getDynamiccruxsJson(), List.class));
                    } catch (JsonProcessingException e) {
                        e.printStackTrace();
                    }
                }
                if (!StringUtils.isEmpty(ivrLibaTemplateTargetoption1.getNodynamiccruxsJson())) {
                    try {
                        ivrLibaTemplateTargetoption1.setNodynamiccruxs(mapper.readValue(ivrLibaTemplateTargetoption1.getNodynamiccruxsJson(), List.class));
                    } catch (JsonProcessingException e) {
                        e.printStackTrace();
                    }
                }
            }
            ivrLibaTemplateScriptVO.setIvrLibaScriptTargetoptionList(ivrLibaTemplateTargetoptions);
        }
        Collections.sort(ivrLibaTemplateScriptVOS, Comparator.comparing(IvrLibaTemplateScriptVO::getTargetid));
        //数据组装
        templateVO.setIvrLibaTemplateTagList(ivrLibaTemplateTags);
        templateVO.setIvrLibaTemplateScriptVOList(ivrLibaTemplateScriptVOS);