陈昶聿
4 天以前 b44db60114b159cd438a0fe0259b9ddc94a16ba3
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
140
141
package com.smartor.service.impl;
 
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
import com.ruoyi.common.utils.StringUtils;
import com.smartor.domain.IvrLibaTemplateScriptVO;
import com.smartor.domain.SvyTaskTemplateScript;
import com.smartor.domain.SvyTaskTemplateScriptVO;
import com.smartor.domain.SvyTaskTemplateTargetoption;
import com.smartor.mapper.SvyTaskTemplateScriptMapper;
import com.smartor.mapper.SvyTaskTemplateTargetoptionMapper;
import com.smartor.service.ISvyTaskTemplateScriptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
 
/**
 * 问卷任务模版问题话术库Service业务层处理
 *
 * @author ruoyi
 * @date 2024-06-19
 */
@Service
public class SvyTaskTemplateScriptServiceImpl implements ISvyTaskTemplateScriptService
{
    @Autowired
    private SvyTaskTemplateScriptMapper svyTaskTemplateScriptMapper;
 
    @Autowired
    private SvyTaskTemplateTargetoptionMapper svyTaskTemplateTargetoptionMapper;
 
    /**
     * 查询问卷任务模版问题话术库
     *
     * @param ID 问卷任务模版问题话术库主键
     * @return 问卷任务模版问题话术库
     */
    @Override
    public SvyTaskTemplateScript selectSvyTaskTemplateScriptByID(Long ID)
    {
        return svyTaskTemplateScriptMapper.selectSvyTaskTemplateScriptByID(ID);
    }
 
    /**
     * 查询问卷任务模版问题话术库列表
     *
     * @param svyTaskTemplateScript 问卷任务模版问题话术库
     * @return 问卷任务模版问题话术库
     */
    @Override
    public List<SvyTaskTemplateScript> selectSvyTaskTemplateScriptList(SvyTaskTemplateScript svyTaskTemplateScript)
    {
        return svyTaskTemplateScriptMapper.selectSvyTaskTemplateScriptList(svyTaskTemplateScript);
    }
 
    /**
     * 新增问卷任务模版问题话术库
     *
     * @param svyTaskTemplateScript 问卷任务模版问题话术库
     * @return 结果
     */
    @Override
    public int insertSvyTaskTemplateScript(SvyTaskTemplateScript svyTaskTemplateScript)
    {
        svyTaskTemplateScript.setCreateTime(DateUtils.getNowDate());
        return svyTaskTemplateScriptMapper.insertSvyTaskTemplateScript(svyTaskTemplateScript);
    }
 
    /**
     * 修改问卷任务模版问题话术库
     *
     * @param svyTaskTemplateScript 问卷任务模版问题话术库
     * @return 结果
     */
    @Override
    public int updateSvyTaskTemplateScript(SvyTaskTemplateScript svyTaskTemplateScript)
    {
        svyTaskTemplateScript.setUpdateTime(DateUtils.getNowDate());
        return svyTaskTemplateScriptMapper.updateSvyTaskTemplateScript(svyTaskTemplateScript);
    }
 
    /**
     * 批量删除问卷任务模版问题话术库
     *
     * @param IDs 需要删除的问卷任务模版问题话术库主键
     * @return 结果
     */
    @Override
    public int deleteSvyTaskTemplateScriptByIDs(Long[] IDs)
    {
        return svyTaskTemplateScriptMapper.deleteSvyTaskTemplateScriptByIDs(IDs);
    }
 
    /**
     * 删除问卷任务模版问题话术库信息
     *
     * @param ID 问卷任务模版问题话术库主键
     * @return 结果
     */
    @Override
    public int deleteSvyTaskTemplateScriptByID(Long ID)
    {
        return svyTaskTemplateScriptMapper.deleteSvyTaskTemplateScriptByID(ID);
    }
 
    @Override
    public SvyTaskTemplateScriptVO selectInfoByCondition(SvyTaskTemplateScriptVO svyTaskTemplateScriptVO){
 
        SvyTaskTemplateTargetoption svyTaskTemplateTargetoption = new SvyTaskTemplateTargetoption();
        svyTaskTemplateTargetoption.setScriptid(svyTaskTemplateScriptVO.getId());
        svyTaskTemplateTargetoption.setOrgid(svyTaskTemplateScriptVO.getOrgid());
        List<SvyTaskTemplateTargetoption> svyTaskTemplateTargetoptions = svyTaskTemplateTargetoptionMapper.selectSvyTaskTemplateTargetoptionList(svyTaskTemplateTargetoption);
        for (SvyTaskTemplateTargetoption svyTaskTemplateTargetoption1 : svyTaskTemplateTargetoptions) {
            ObjectMapper mapper = new ObjectMapper();
            if (!StringUtils.isEmpty(svyTaskTemplateTargetoption1.getDynamiccruxs())) {
                try {
                    svyTaskTemplateTargetoption1.setDynamiccruxs(mapper.readValue(svyTaskTemplateTargetoption1.getDynamiccruxsJson(), List.class));
                } catch (JsonProcessingException e) {
                    e.printStackTrace();
                }
            }
            if (!StringUtils.isEmpty(svyTaskTemplateTargetoption1.getNodynamiccruxs())) {
                try {
                    svyTaskTemplateTargetoption1.setNodynamiccruxs(mapper.readValue(svyTaskTemplateTargetoption1.getNodynamiccruxsJson(), List.class));
                } catch (JsonProcessingException e) {
                    e.printStackTrace();
                }
            }
        }
        //根据序号进行排序
//        Collections.sort(svyTaskTemplateTargetoptions, Comparator.comparing(SvyTaskTemplateTargetoption::getId));
 
        svyTaskTemplateScriptVO.setSvyTaskTemplateTargetoptions(svyTaskTemplateTargetoptions);
        return svyTaskTemplateScriptVO;
    }
}