From f15170964e60cd578e54fe2516f9cf086a82c75e Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 06 二月 2026 17:16:04 +0800
Subject: [PATCH] patItem科室、病区数量不能超过10个
---
ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java | 81 ++++++++++++++++++++++++++--------------
1 files changed, 52 insertions(+), 29 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
index 6490734..8e272ab 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson2.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@@ -18,6 +19,7 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.http.HttpUtils;
import com.ruoyi.common.utils.sign.Md5Utils;
+import com.ruoyi.common.utils.sms.smsUtils;
import com.ruoyi.system.domain.SysConfig;
import com.ruoyi.system.service.ISysConfigService;
import com.smartor.common.LSHospTokenUtil;
@@ -332,6 +334,7 @@
// sendMagParam.setUrl(ip + ":" + req_path + "/outsideChainwt?param1=" + taskId + "¶m2=" + patid + "¶m3=" + URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()) + "¶m5=false");
sendMagParam.setPhone(serviceSubtask.getPhone());
sendMagParam.setUrl(ip + ":" + req_path + "/wt?p=" + format);
+ log.info("sendMagParam鐨勫�间负锛歿}", sendMagParam);
//濡傛灉type鏄闊抽殢璁跨殑璇濓紙璇存槑琛ュ伩鍙戦�佹柟寮忎腑鏈夌數璇濋殢璁跨殑鏂瑰紡锛岃繖閲岀殑澶栭摼灏卞湴鍧�鍙兘鐢�/sf锛�
if (serviceSubtask.getType().equals("1"))
sendMagParam.setUrl(ip + ":" + req_path + "/sf?p=" + format);
@@ -427,8 +430,16 @@
} else if (active.equals("sltd")) {
//鐪佺珛鍚屽痉鐨勭煭淇″彂閫佹柟寮�
String data = MessageSend.sendMsg(sendMagParam.getContent(), "6", sendMagParam.getPhone(), LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")));
- if (StringUtils.isNotEmpty(data) && data.contains("result=0")) {
- s = "true";
+ if (StringUtils.isNotEmpty(data)) {
+ ObjectMapper mapper = new ObjectMapper();
+ JsonNode root = mapper.readTree(data);
+ String status = root.get("result").get(0).get("status").asText();
+ if (status.equals("00000")) {
+ s = "true";
+ } else {
+ setFailPreachForm(serviceSubtask, sendPreachform, "鐭俊鍙戦�佸け璐�: " + data, "5");
+ throw new BaseException("鐭俊鍙戦�佸け璐�");
+ }
} else {
setFailPreachForm(serviceSubtask, sendPreachform, "鐭俊鍙戦�佸け璐�: " + data, "5");
throw new BaseException("鐭俊鍙戦�佸け璐�");
@@ -570,6 +581,7 @@
//鑾峰彇寰俊鍏紬鍙疯姹備俊鎭牴鎹満鏋処D
log.error("鑾峰彇寰俊鍏紬鍙疯姹備俊鎭牴鎹満鏋処D锛歿}", patArchive.getOrgid());
List<String> wxqqxx = WxGZHEnum.getDescByCode(patArchive.getOrgid());
+ //甯備竴鍖婚櫌 涓嶆牎楠�
if (CollectionUtils.isEmpty(wxqqxx) || wxqqxx.size() < 4) {
serviceSubtask.setCurrentPreachform(sendPreachform);
serviceSubtask.setVisitTime(getNextVisitTime(serviceSubtask.getId(), serviceSubtask.getTaskid(), serviceSubtask.getVisitTime(), serviceSubtask.getCurrentPreachform()));
@@ -579,31 +591,36 @@
setFailPreachForm(serviceSubtask, sendPreachform, "璇ユ満鏋勭殑鍏紬鍙烽厤缃俊鎭笉鍏紝鏃犳硶閫氳繃鍏紬鍙峰彂閫�", "5");
continue;
}
-
- String wxCode = getWXCode(serviceSubtask.getSfzh(), url, serviceSubtask.getTaskName(), serviceSubtask.getTaskName(), patArchive.getTelcode(), patArchive.getName(), patArchive.getPatidHis(), wxqqxx);
- log.error("wxCode鐨勫�间负:{}", wxCode);
- Map<String, Object> map = JSONObject.parseObject(wxCode, Map.class);
- log.error("map鐨勫�间负:{}", map);
- if (!map.isEmpty()) {
- serviceSubtask.setResult("success");
- serviceSubtask.setSendstate(3L);
- log.error("aBoolean鐨勫�间负:{}", aBoolean);
- if (map.get("succ").toString().equals("true")) {
- aBoolean = true;
- }
- if (aBoolean == false) {
- ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord();
- serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString());
- serviceSubtaskRecord.setSubtaskId(serviceSubtask.getId());
- serviceSubtaskRecord.setUuid(UUID.randomUUID().toString());
- serviceSubtaskRecord.setTasktype(serviceSubtask.getType());
- serviceSubtaskRecord.setPreachform("5");
- serviceSubtaskRecord.setStartTime(System.currentTimeMillis());
- serviceSubtaskRecord.setRemark(ObjectUtils.isNotEmpty(map.get("msg")) ? map.get("msg").toString() : null);
- serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord);
- //鍦ㄥ瓙浠诲姟琛ㄩ噷璁板綍涓�涓�
- setFailPreachForm(serviceSubtask, sendPreachform, "鍏紬鍙峰彂閫佸け璐�", "5");
- continue;
+ String wxCode = "";
+ if (active.equals("hzszlyy")) {
+ wxCode = smsUtils.sendChat(url, patArchive.getTelcode(), serviceSubtask.getSfzh());
+ log.info(wxCode);
+ } else {
+ wxCode = getWXCode(serviceSubtask.getSfzh(), url, serviceSubtask.getTaskName(), serviceSubtask.getTaskName(), patArchive.getTelcode(), patArchive.getName(), patArchive.getPatidHis(), wxqqxx);
+ log.error("wxCode鐨勫�间负:{}", wxCode);
+ Map<String, Object> map = JSONObject.parseObject(wxCode, Map.class);
+ log.error("map鐨勫�间负:{}", map);
+ if (!map.isEmpty()) {
+ serviceSubtask.setResult("success");
+ serviceSubtask.setSendstate(3L);
+ log.error("aBoolean鐨勫�间负:{}", aBoolean);
+ if (map.get("succ").toString().equals("true")) {
+ aBoolean = true;
+ }
+ if (aBoolean == false) {
+ ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord();
+ serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString());
+ serviceSubtaskRecord.setSubtaskId(serviceSubtask.getId());
+ serviceSubtaskRecord.setUuid(UUID.randomUUID().toString());
+ serviceSubtaskRecord.setTasktype(serviceSubtask.getType());
+ serviceSubtaskRecord.setPreachform("5");
+ serviceSubtaskRecord.setStartTime(System.currentTimeMillis());
+ serviceSubtaskRecord.setRemark(ObjectUtils.isNotEmpty(map.get("msg")) ? map.get("msg").toString() : null);
+ serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord);
+ //鍦ㄥ瓙浠诲姟琛ㄩ噷璁板綍涓�涓�
+ setFailPreachForm(serviceSubtask, sendPreachform, "鍏紬鍙峰彂閫佸け璐�", "5");
+ continue;
+ }
}
}
} catch (Exception e) {
@@ -703,10 +720,13 @@
serviceSubtaskPreachforms = serviceSubtaskPreachformList;
}
-
// 鎯呭喌1锛歝urrentPreachform涓虹┖锛屽彇sort涓�1鐨刾reachform
if (StringUtils.isEmpty(serviceSubtask.getCurrentPreachform())) {
- return serviceSubtaskPreachforms.stream().filter(item -> item.getSort() == 1L).map(ServiceSubtaskPreachform::getPreachform).findFirst().orElse(null);
+ String firstPreachform = serviceSubtaskPreachforms.stream().filter(item -> item.getSort() == 1L).map(ServiceSubtaskPreachform::getPreachform).findFirst().orElse(null);
+ serviceSubtaskPreachform.setPreachform(firstPreachform);
+ serviceSubtaskPreachform.setCurrentSendTime(new Date());
+ serviceSubtaskPreachformMapper.updateSSPByCondition(serviceSubtaskPreachform);
+ return firstPreachform;
}
// 鎯呭喌2锛歝urrentPreachform涓嶄负绌猴紝鎵句笅涓�涓猻ort
@@ -721,6 +741,7 @@
if (allSendStateNot1AndNot9) {
//璇存槑鍏ㄥ彂閫佸け璐ヤ簡
serviceSubtask.setSendstate(5L);
+ serviceSubtask.setRemark("-----getSendPreachform,鍙戦�佹柟寮忓叏閮ㄥけ璐�");
serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
}
return "-1";
@@ -782,6 +803,7 @@
serviceSubtaskPreachform.setTaskid(serviceSubtask.getTaskid());
serviceSubtaskPreachform.setOrgid(serviceSubtask.getOrgid());
serviceSubtaskPreachform.setSendstate(failSendstate);
+ serviceSubtaskPreachform.setCurrentSendTime(new Date());
if (serviceSubtask.getType().equals("3") || serviceSubtask.getType().equals("4")) {
//濡傛灉鏄鏁欐垨閫氱煡锛屽苟涓斿彂閫佹垚鍔燂紝鐩存帴灏嗗彂閫佺姸鎬佹敼鎴�9
if (failSendstate.equals("2")) serviceSubtaskPreachform.setSendstate("9");
@@ -825,6 +847,7 @@
if (failSendstate.equals("4") || failSendstate.equals("5")) {
serviceSubtask.setCurrentPreachform(preachform);
serviceSubtask.setSendstate(5L);
+ serviceSubtask.setRemark("setFailPreachForm鏂规硶 褰撳墠鐨刾reachform宸茬粡鏄渶鍚庝竴涓簡锛屽叏閮ㄦ墽琛屽け璐�");
serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
return true;
}
--
Gitblit v1.9.3