| | |
| | | package com.ruoyi.web.component; |
| | | |
| | | import afu.org.checkerframework.checker.oigj.qual.O; |
| | | import com.alibaba.fastjson2.JSONObject; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import com.google.gson.Gson; |
| | |
| | | import com.smartor.service.IBaseSmsaccountService; |
| | | import com.smartor.service.IServiceOutPathService; |
| | | import com.smartor.service.IServiceSubtaskRecordService; |
| | | import com.sun.org.apache.bcel.internal.generic.NEW; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.ObjectUtils; |
| | |
| | | import java.util.concurrent.Executors; |
| | | import java.util.concurrent.TimeUnit; |
| | | |
| | | import static cn.hutool.core.convert.Convert.numberToWord; |
| | | import static cn.hutool.core.convert.Convert.toHex; |
| | | |
| | | @Slf4j |
| | |
| | | @Value("${visitHosp}") |
| | | private Integer visitHosp; |
| | | |
| | | @Value("${server.port}") |
| | | private String port; |
| | | |
| | | // 创建固定大小的线程池 |
| | | private static final ExecutorService executorService = Executors.newFixedThreadPool(10); |
| | | |
| | |
| | | log.error("本机的网络IP为:{}", ip); |
| | | String content = message.toString(); |
| | | //判断是不是任务信息,如果不是,直接返回,不需要执行 |
| | | if (!content.contains("taskid")) { |
| | | if (!content.contains("taskid") || !port.equals("8095")) { |
| | | log.error("不是任务信息"); |
| | | return; |
| | | } |
| | |
| | | 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(); |
| | |
| | | iServiceOutPathService.updateServiceOutPath(serviceOutPath); |
| | | sendMagParam.setPhone(serviceSubtask.getPhone()); |
| | | sendMagParam.setUrl(ip + ":" + req_path + "/sf?p=" + format); |
| | | if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) { |
| | | sendMagParam.setContent("【景宁畲族自治县人民医院】您好,邀请您填写出院宣教调查表,请点击" + sendMagParam.getUrl() + "查看。感谢您配合!"); |
| | | } else if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) { |
| | | sendMagParam.setContent("【丽水中医院】您好,邀请您填写出院宣教调查表,请点击" + sendMagParam.getUrl() + "查看。感谢您配合!"); |
| | | } else |
| | | if (visitHosp == 2) { |
| | | sendMagParam.setContent("您好,邀请您填写出院宣教调查表,请点击" + sendMagParam.getUrl() + "查看。感谢您配合!"); |
| | | } else if (visitHosp == 1) { |
| | | sendMagParam.setContent("【新华医院】您好,邀请您填写出院随访调查表,请点击" + sendMagParam.getUrl() + "填写。感谢您配合!"); |
| | | } |
| | | |
| | | } else if (type == 2) { |
| | | //问券(问题) |
| | |
| | | ss.setRemark("短信发送失败,该机构没有配置短信地址"); |
| | | ss.setSendstate(5L); |
| | | ss.setId(serviceSubtask.getId()); |
| | | ss.setFinishtime(new Date()); |
| | | // ss.setFinishtime(new Date()); |
| | | serviceSubtaskMapper.updateServiceSubtask(ss); |
| | | continue; |
| | | } |
| | |
| | | } |
| | | if (s.equals("true")) { |
| | | //在子任务表里记录一下 |
| | | log.error("serviceSubtask保存成功了吗?:{}",s); |
| | | log.error("serviceSubtask保存成功了吗?:{}", s); |
| | | String uuid = UUID.randomUUID().toString(); |
| | | serviceSubtask.setResult("success"); |
| | | serviceSubtask.setRemark("短信发送成功"); |
| | |
| | | serviceSubtaskRecord.setResult("success"); |
| | | serviceSubtaskRecord.setRemark("短信发送成功"); |
| | | serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); |
| | | log.error("serviceSubtaskRecord保存成功了吗?:{}",serviceSubtaskRecord); |
| | | log.error("serviceSubtaskRecord保存成功了吗?:{}", serviceSubtaskRecord); |
| | | } |
| | | } catch (Exception e) { |
| | | ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); |
| | |
| | | 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); |
| | |
| | | ss.setRemark("公众号发送失败,his系统的患者id为空"); |
| | | ss.setSendstate(5L); |
| | | ss.setId(serviceSubtask.getId()); |
| | | ss.setFinishtime(new Date()); |
| | | // ss.setFinishtime(new Date()); |
| | | serviceSubtaskMapper.updateServiceSubtask(ss); |
| | | continue; |
| | | } |
| | |
| | | ss.setRemark("该机构的公众号配置信息不全,无法通过公众号发送"); |
| | | ss.setSendstate(5L); |
| | | ss.setId(serviceSubtask.getId()); |
| | | ss.setFinishtime(new Date()); |
| | | // ss.setFinishtime(new Date()); |
| | | serviceSubtaskMapper.updateServiceSubtask(ss); |
| | | continue; |
| | | } |
| | |
| | | serviceSubtask.setRemark("发送失败"); |
| | | serviceSubtask.setSendstate(5L); |
| | | serviceSubtask.setId(id); |
| | | serviceSubtask.setFinishtime(new Date()); |
| | | // serviceSubtask.setFinishtime(new Date()); |
| | | serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); |
| | | } |
| | | } |