liusheng
2024-07-29 75cb81f0b88f313857ea431b46b929bef95d7cc8
ruoyi-admin/src/main/java/com/ruoyi/web/task/PhoneTask.java
@@ -18,7 +18,7 @@
import java.util.concurrent.TimeUnit;
public class PhoneTask implements Runnable {
    private IvrTaskSingle ivrTaskSingle;
    private ServiceSubtask ivrTaskSingle;
    private List<IvrTaskTemplateScriptVO> ivrTaskTemplateScriptVO;
    private RedisCache redisCache;
    private IvrTaskTemplateVO ivrTaskTemplateVO;
@@ -27,8 +27,8 @@
    private RobotPhoneUtils robotPhoneUtils;
    public PhoneTask(IvrTaskSingle ivrTaskSingle, IvrTaskTemplateVO ivrTaskTemplateVO, RedisCache redisCache, SendService sendService, String phonePath, RobotPhoneUtils robotPhoneUtils) {
        this.ivrTaskSingle = DtoConversionUtils.sourceToTarget(ivrTaskSingle, IvrTaskSingle.class);
    public PhoneTask(ServiceSubtask ivrTaskSingle, IvrTaskTemplateVO ivrTaskTemplateVO, RedisCache redisCache, SendService sendService, String phonePath, RobotPhoneUtils robotPhoneUtils) {
        this.ivrTaskSingle = DtoConversionUtils.sourceToTarget(ivrTaskSingle, ServiceSubtask.class);
        this.ivrTaskTemplateScriptVO = DtoConversionUtils.sourceToTarget(ivrTaskTemplateVO.getIvrTaskTemplateScriptVOList(), IvrTaskTemplateScriptVO.class);
        this.ivrTaskTemplateVO = DtoConversionUtils.sourceToTarget(ivrTaskTemplateVO, IvrTaskTemplateVO.class);
        this.redisCache = redisCache;
@@ -57,7 +57,7 @@
                    for (IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO : ivrTaskTemplateScriptVO) {
                        for (Map<String, String> map : mapList) {
                            for (String key : map.keySet()) {
                                ivrTaskTemplateScriptVO.setQuestionText(ivrTaskTemplateScriptVO.getQuestionText().replace(key, map.get(key)));
                                ivrTaskTemplateScriptVO.setScriptContent(ivrTaskTemplateScriptVO.getScriptContent().replace(key, map.get(key)));
                            }
                        }
                    }
@@ -81,11 +81,11 @@
                redisCache.setCacheObject(uuid + "returnQues", returnQues, 120, TimeUnit.MINUTES);
                redisCache.setCacheObject(uuid + "ivrTaskTemplateVO", ivrTaskTemplateVO, 120, TimeUnit.MINUTES);
                System.out.println("----------------uuID为 :" + uuid + "       " + ivrTaskSingle.getSendname() + "       " + returnQues.getNowQuestion().getQuestionText() + "     " + ivrTaskSingle.getPhone());
                System.out.println("----------------uuID为 :" + uuid + "       " + ivrTaskSingle.getSendname() + "       " + returnQues.getNowQuestion().getScriptContent() + "     " + ivrTaskSingle.getPhone());
                //先将话术放到ob_queue队列中
                IvrTaskcallPhoneMQ ivrTaskcallPhoneMQ = new IvrTaskcallPhoneMQ();
                ivrTaskcallPhoneMQ.setScript(ivrTaskTemplateVO.getRevisitBefore() + returnQues.getNowQuestion().getQuestionText());
                ivrTaskcallPhoneMQ.setScript(ivrTaskTemplateVO.getRevisitBefore() + returnQues.getNowQuestion().getScriptContent());
                ivrTaskcallPhoneMQ.setType("1");
                ivrTaskcallPhoneMQ.setUuid(uuid);
                String data = JSON.toJSONString(ivrTaskcallPhoneMQ);
@@ -93,7 +93,7 @@
                //调用机器人电话,开始电话
                String ob = phoneUtils.ob("", "", "", "", "", "", "", ivrTaskSingle.getPhone(), uuid, true);
                System.out.println("----------------uuID为 :" + uuid + "       " + ivrTaskSingle.getSendname() + "       " + returnQues.getNowQuestion().getQuestionText() + "     " + ivrTaskSingle.getPhone() + "----------已经拨打");
                System.out.println("----------------uuID为 :" + uuid + "       " + ivrTaskSingle.getSendname() + "       " + returnQues.getNowQuestion().getScriptContent() + "     " + ivrTaskSingle.getPhone() + "----------已经拨打");
                Map<String, String> obMap = objectMapper.readValue(ob, Map.class);
                Thread.sleep(1000);
                redisCache.setCacheObject(uuid + "state_id", "0", 10, TimeUnit.MINUTES);