liusheng
8 天以前 f0a09ee996ab2605869844d6a3d812709e2bf0fa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
package com.ruoyi.template.service.impl;
 
import com.alibaba.fastjson2.JSON;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.template.domain.IvrLibaExtemplatescript;
import com.ruoyi.template.mapper.IvrLibaExtemplatescriptMapper;
import com.ruoyi.template.service.IIvrLibaExtemplatescriptService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.List;
 
/**
 * 通用模板话术Service业务层处理
 *
 * @author ruoyi
 * @date 2023-12-27
 */
@Service
public class IvrLibaExtemplatescriptServiceImpl implements IIvrLibaExtemplatescriptService {
    @Autowired
    private IvrLibaExtemplatescriptMapper ivrLibaExtemplatescriptMapper;
 
    /**
     * 查询通用模板话术
     *
     * @param ID 通用模板话术主键
     * @return 通用模板话术
     */
    @Override
    public IvrLibaExtemplatescript selectIvrLibaExtemplatescriptByID(String ID) {
        return ivrLibaExtemplatescriptMapper.selectIvrLibaExtemplatescriptByID(ID);
    }
 
    /**
     * 查询通用模板话术列表
     *
     * @param ivrLibaExtemplatescript 通用模板话术
     * @return 通用模板话术
     */
    @Override
    public List<IvrLibaExtemplatescript> selectIvrLibaExtemplatescriptList(IvrLibaExtemplatescript ivrLibaExtemplatescript) {
        List<IvrLibaExtemplatescript> ivrLibaExtemplatescripts = ivrLibaExtemplatescriptMapper.selectIvrLibaExtemplatescriptList(ivrLibaExtemplatescript);
        ObjectMapper mapper = new ObjectMapper();
        for (IvrLibaExtemplatescript ivrLibaExtemplatescript1 : ivrLibaExtemplatescripts) {
            if (!StringUtils.isEmpty(ivrLibaExtemplatescript1.getDynamiccruxsJson())) {
                try {
                    ivrLibaExtemplatescript1.setDynamiccruxs(mapper.readValue(ivrLibaExtemplatescript1.getDynamiccruxsJson(), List.class));
                } catch (JsonProcessingException e) {
                    e.printStackTrace();
                }
            }
 
            if (!StringUtils.isEmpty(ivrLibaExtemplatescript1.getNodynamiccruxsJson())) {
                try {
                    ivrLibaExtemplatescript1.setNodynamiccruxs(mapper.readValue(ivrLibaExtemplatescript1.getNodynamiccruxsJson(), List.class));
                } catch (JsonProcessingException e) {
                    e.printStackTrace();
                }
            }
        }
        return ivrLibaExtemplatescripts;
    }
 
    /**
     * 按 extID 集合查询通用模板话术列表
     * <p>
     * 与 Mapper 原样一致:不做 dynamiccruxs/nodynamiccruxs 的 JSON 反序列化
     * (调用方 {@code ruoyi-phone} 只用到 selfRegex / selfRegex2 / switchText / switchWav / isEnd)。
     *
     * @param IDs extID 集合
     * @return 通用模板话术集合
     */
    @Override
    public List<IvrLibaExtemplatescript> queryIvrLibaExtemplatescriptList(List<Long> IDs) {
        if (CollectionUtils.isEmpty(IDs)) {
            return new java.util.ArrayList<>();
        }
        return ivrLibaExtemplatescriptMapper.queryIvrLibaExtemplatescriptList(IDs);
    }
 
    /**
     * 新增通用模板话术
     *
     * @param ivrLibaExtemplatescript 通用模板话术
     * @return 结果
     */
    @Override
    public int insertIvrLibaExtemplatescript(IvrLibaExtemplatescript ivrLibaExtemplatescript) {
        if (CollectionUtils.isNotEmpty(ivrLibaExtemplatescript.getDynamiccruxs()))
            ivrLibaExtemplatescript.setDynamiccruxsJson(JSON.toJSONString(ivrLibaExtemplatescript.getDynamiccruxs()));
        if (CollectionUtils.isNotEmpty(ivrLibaExtemplatescript.getNodynamiccruxs()))
            ivrLibaExtemplatescript.setNodynamiccruxsJson(JSON.toJSONString(ivrLibaExtemplatescript.getNodynamiccruxs()));
        ivrLibaExtemplatescript.setCreateTime(DateUtils.getNowDate());
        return ivrLibaExtemplatescriptMapper.insertIvrLibaExtemplatescript(ivrLibaExtemplatescript);
    }
 
    /**
     * 修改通用模板话术
     *
     * @param ivrLibaExtemplatescript 通用模板话术
     * @return 结果
     */
    @Override
    public int updateIvrLibaExtemplatescript(IvrLibaExtemplatescript ivrLibaExtemplatescript) {
        ivrLibaExtemplatescript.setUpdateTime(DateUtils.getNowDate());
        if (CollectionUtils.isNotEmpty(ivrLibaExtemplatescript.getDynamiccruxs()))
            ivrLibaExtemplatescript.setDynamiccruxsJson(JSON.toJSONString(ivrLibaExtemplatescript.getDynamiccruxs()));
        if (CollectionUtils.isNotEmpty(ivrLibaExtemplatescript.getNodynamiccruxs()))
            ivrLibaExtemplatescript.setNodynamiccruxsJson(JSON.toJSONString(ivrLibaExtemplatescript.getNodynamiccruxs()));
        return ivrLibaExtemplatescriptMapper.updateIvrLibaExtemplatescript(ivrLibaExtemplatescript);
    }
 
    /**
     * 批量删除通用模板话术
     *
     * @param IDs 需要删除的通用模板话术主键
     * @return 结果
     */
    @Override
    public int deleteIvrLibaExtemplatescriptByIDs(Long[] IDs) {
        return ivrLibaExtemplatescriptMapper.deleteIvrLibaExtemplatescriptByIDs(IDs);
    }
 
    /**
     * 删除通用模板话术信息
     *
     * @param ID 通用模板话术主键
     * @return 结果
     */
    @Override
    public int deleteIvrLibaExtemplatescriptByID(Long ID) {
        return ivrLibaExtemplatescriptMapper.deleteIvrLibaExtemplatescriptByID(ID);
    }
}