liusheng
12 小时以前 e180e3a496d6f29d3a3b34016400de9d997c6bd9
ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
@@ -118,9 +118,6 @@
    @Autowired
    private ISysConfigService configService;
    // 创建固定大小的线程池
    private static final ExecutorService executorService = Executors.newFixedThreadPool(10);
    public RedisMqReceiver(RedisMessageListenerContainer listenerContainer) {
        super(listenerContainer);
    }
@@ -152,12 +149,12 @@
            ServiceTask serviceTask = new ServiceTask();
            serviceTask.setTaskid(Long.valueOf(commonTaskcallMQ.getTaskid()));
            //在问卷中,选中某个选项要进行服务补偿时,只是借用该服务的外壳,不对该服务有任务影响
            if (commonTaskcallMQ.getUpdateSendstate() == null || commonTaskcallMQ.getUpdateSendstate() == 1) {
                serviceTask.setSendState(5L);
                serviceTask.setFail(1L);
                serviceTaskMapper.updateServiceTask(serviceTask);
            }
//            //在问卷中,选中某个选项要进行服务补偿时,只是借用该服务的外壳,不对该服务有任务影响
//            if (commonTaskcallMQ.getUpdateSendstate() == null || commonTaskcallMQ.getUpdateSendstate() == 1) {
//                serviceTask.setSendState(5L);
//                serviceTask.setFail(1L);
//                serviceTaskMapper.updateServiceTask(serviceTask);
//            }
        } catch (Exception e) {
            Integer integer = redisCache.getCacheObject(commonTaskcallMQ.getTaskid().toString());
            if (integer != null && integer == 3) {
@@ -654,7 +651,7 @@
                serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord);
            } else if (descByCode.equals("人工")) {
                setFailPreachForm(serviceSubtask, sendPreachform, "人工待执行", "2");
                setFailPreachForm(serviceSubtask, sendPreachform, "人工超时", "7");
            } else if (descByCode.equals("微信小程序")) {
                setFailPreachForm(serviceSubtask, sendPreachform, "微信小程序待执行", "2");
            }
@@ -849,6 +846,11 @@
                        serviceSubtask.setCurrentPreachform(preachform);
                        serviceSubtask.setSendstate(5L);
                        serviceSubtask.setRemark("setFailPreachForm方法 当前的preachform已经是最后一个了,全部执行失败");
                        //人工发送超时
                        if(ObjectUtils.isNotEmpty(preachform) && preachform.equals("1") && failSendstate.equals("7")){
                            serviceSubtask.setSendstate(7L);
                            serviceSubtask.setRemark("人工发送超时");
                        }
                        serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
                        return true;
                    }
@@ -862,6 +864,11 @@
        serviceSubtask.setCurrentPreachform(preachform);
        serviceSubtask.setVisitTime(getNextVisitTime(serviceSubtask.getId(), serviceSubtask.getTaskid(), serviceSubtask.getVisitTime(), serviceSubtask.getCurrentPreachform()));
        serviceSubtask.setSendstate(3L);
        //人工发送超时
        if(ObjectUtils.isNotEmpty(preachform) && preachform.equals("1") && failSendstate.equals("7")){
            serviceSubtask.setSendstate(7L);
            serviceSubtask.setRemark("人工发送超时");
        }
        if (serviceSubtask.getType().equals("3") || serviceSubtask.getType().equals("4")) {
            //如果是宣教或通知,并且发送成功,则直接将serviceSubtask状态改成6L(这个患者是没有题做的,不会再触发接口进行状态修改)
            if (failSendstate.equals("2")) {