liusheng
2 天以前 6393d6ba70099f1b47f4124e06426f016fb28052
ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
@@ -104,7 +104,7 @@
    public void onMessage(Message message, byte[] pattern) {
        log.info("监听Redis key过期,key:{},channel:{}", message.toString(), new String(pattern));
        String ip = localIP;
        log.error("本机的网络IP为:{}", ip);
        log.info("本机的网络IP为:{}", ip);
        String content = message.toString();
        //判断是不是任务信息,如果不是,直接返回,不需要执行
        if (!content.contains("taskid") || !port.equals("8095")) {
@@ -154,7 +154,7 @@
     * @param commonTaskcallMQ
     */
    public void tsakHandle(CommonTaskcallMQ commonTaskcallMQ, String ip, Integer type) {
        log.error("进任务了吗?{}", commonTaskcallMQ);
        log.info("进任务了吗?{}", commonTaskcallMQ);
        //判断一下commonTaskcallMQ中的stopstate是否与ivr_task中的一致,不一致,则说明是暂停了
        ServiceTask ivrTask1 = ivrTaskMapper.selectServiceTaskByTaskid(commonTaskcallMQ.getTaskid());
@@ -166,7 +166,7 @@
        if (StringUtils.isNotEmpty(commonTaskcallMQ.getPreachform())) {
            //如何任务发送方式不为空
            String[] split = commonTaskcallMQ.getPreachform().split(",");
            log.error("split的值为:{}", split);
            log.info("split的值为:{}", split);
            //定义一个集合,用与存没有执行的子任务ID
            List<Long> subIds = new ArrayList<>();
@@ -211,13 +211,13 @@
                                //说明是立即发送
                                ServiceSubtaskVO serviceSubtask1 = new ServiceSubtaskVO();
                                serviceSubtask1.setTaskid(commonTaskcallMQ.getTaskid());
                                log.error("缓存中serviceSubtask1的值为:{}", serviceSubtask1);
                                log.info("缓存中serviceSubtask1的值为:{}", serviceSubtask1);
                                List<String> list = new ArrayList<>();
                                List<ServiceSubtask> selectServiceSubtaskList1 = ivrTaskcallMapper.selectServiceSubtaskList(serviceSubtask1);
                                for (ServiceSubtask serviceSubtask2 : selectServiceSubtaskList1) {
                                    list.add(serviceSubtask2.getId().toString());
                                }
                                log.error("缓存中cache-0的值为:{}", list);
                                log.info("缓存中cache-0的值为:{}", list);
//                                redisCache.setCacheListLeft("cache-0", list);
                                redisCache.setCacheListLeftAndDistinct("cache-0", list);
                            } else {
@@ -275,13 +275,16 @@
                    subIds.clear();
                    subIds.addAll(lssubIds);
                    lssubIds.clear();
                } else if (descByCode.equals("多媒体")) {
                }
                else if (descByCode.equals("多媒体")) {
                    //多媒体
                    continue;
                } else if (descByCode.equals("纸质")) {
                }
                else if (descByCode.equals("纸质")) {
                    //纸质
                    continue;
                } else if (descByCode.equals("短信")) {
                }
                else if (descByCode.equals("短信")) {
                    //短信
                    //对url中两个参数加密
                    RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
@@ -381,14 +384,14 @@
                                //丽水的短信发送方式
                                Map<String, String> map = MsgLSEnum.getAddressByCode(serviceSubtask.getOrgid());
                                String token = LSHospTokenUtil.getToken(serviceSubtask.getOrgid());
                                log.error("-----------token的值为:{}", token);
                                log.info("-----------token的值为:{}", token);
                                if (ObjectUtils.isNotEmpty(map) && StringUtils.isEmpty(map.get("address"))) {
                                    ServiceSubtask ss = new ServiceSubtask();
                                    ss.setResult("error");
                                    ss.setRemark("短信发送失败,该机构没有配置短信地址");
                                    ss.setSendstate(5L);
                                    ss.setId(serviceSubtask.getId());
                                    ss.setFinishtime(new Date());
//                                    ss.setFinishtime(new Date());
                                    serviceSubtaskMapper.updateServiceSubtask(ss);
                                    continue;
                                }
@@ -454,7 +457,8 @@
                    subIds.clear();
                    subIds.addAll(lssubIds);
                    lssubIds.clear();
                } else if (descByCode.equals("公众号")) {
                }
                else if (descByCode.equals("公众号")) {
                    //公众号
                    RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
                    String taskId = rsaPublicKeyExample.encryptedData(ivrTask1.getTaskid().toString(), pub_key);
@@ -512,7 +516,7 @@
                                ss.setRemark("公众号发送失败,his系统的患者id为空");
                                ss.setSendstate(5L);
                                ss.setId(serviceSubtask.getId());
                                ss.setFinishtime(new Date());
//                                ss.setFinishtime(new Date());
                                serviceSubtaskMapper.updateServiceSubtask(ss);
                                continue;
                            }
@@ -526,7 +530,7 @@
                                ss.setRemark("该机构的公众号配置信息不全,无法通过公众号发送");
                                ss.setSendstate(5L);
                                ss.setId(serviceSubtask.getId());
                                ss.setFinishtime(new Date());
//                                ss.setFinishtime(new Date());
                                serviceSubtaskMapper.updateServiceSubtask(ss);
                                continue;
                            }
@@ -611,7 +615,7 @@
                    serviceSubtask.setRemark("发送失败");
                    serviceSubtask.setSendstate(5L);
                    serviceSubtask.setId(id);
                    serviceSubtask.setFinishtime(new Date());
//                    serviceSubtask.setFinishtime(new Date());
                    serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
                }
            }