From 394e00dfbe5adf153dce53c34615874a9ea9273f Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 15 一月 2026 15:08:22 +0800
Subject: [PATCH] 给宣教内容做通配符替换
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 92 ++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 81 insertions(+), 11 deletions(-)
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
index c67a2ab..25cd045 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -11,6 +11,7 @@
import com.ruoyi.common.enums.MsgLSEnum;
import com.ruoyi.common.enums.ServiceFromEnum;
import com.ruoyi.common.enums.WxGZHEnum;
+import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.HttpUtil;
import com.ruoyi.common.utils.OkHttpExample;
import com.ruoyi.common.utils.RSAPublicKeyExample;
@@ -472,11 +473,11 @@
* 澶勭悊琛ュ伩浠诲姟
*/
public void compensateTask() {
- //鑾峰彇鍒皊endstate=3 骞朵笖 visit_time涓轰粖澶╃殑subtask
+ //鑾峰彇鍒皊endstate=3 骞朵笖 visit_time涓哄皬浜庣瓑浜庝粖澶╃殑subtask
ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
serviceSubtaskVO.setSendstate(3L);
serviceSubtaskVO.setVisitTime(new Date());
- List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+ List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.getCompensateServiceSubtaskList(serviceSubtaskVO);
for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
//鏍规嵁褰撳墠鐨勬墽琛屾柟寮忥紝鑾峰彇涓嬩竴绉嶆墽琛屾柟寮�
ServiceSubtaskPreachform serviceSubtaskPreachform = new ServiceSubtaskPreachform();
@@ -668,7 +669,9 @@
} else if (heLibrary.getHetype().equals("2")) {
//閫氱煡
sendMagParam.setPhone(serviceSubtask.getPhone());
- sendMagParam.setContent(heLibrary.getPreachcontent());
+ // 鏇挎崲鏂囨湰鍐呭涓殑鍙橀噺
+ String content = getObject(serviceSubtask, heLibrary.getPreachcontent());
+ sendMagParam.setContent(content);
}
}
@@ -698,7 +701,7 @@
log.info("-----------map鐨勫�间负锛歿}", msgInfo);
String token = LSHospTokenUtil.getToken(serviceSubtask.getOrgid(), msgInfo.get("tokenUrl"));
if (ObjectUtils.isNotEmpty(msgInfo) && StringUtils.isEmpty(msgInfo.get("address"))) {
- setSuccessPreachForm(serviceSubtask, sendPreachform, "鐭俊鍙戦�佸け璐�,璇ユ満鏋勬病鏈夐厤缃煭淇″湴鍧�, 鏃堕棿:" + now , "5");
+ setSuccessPreachForm(serviceSubtask, sendPreachform, "鐭俊鍙戦�佸け璐�,璇ユ満鏋勬病鏈夐厤缃煭淇″湴鍧�, 鏃堕棿:" + now, "5");
return;
}
log.info("銆恠fHandlle銆戜附姘寸煭淇″彂閫侊紝鍦板潃锛歿}锛屽弬鏁帮細{}锛屾満鏋処D锛歿}", msgInfo.get("address"), sendMagParam, serviceSubtask.getOrgid());
@@ -714,8 +717,13 @@
log.info("sltd杩涙潵浜嗗悧锛焮} ,---sendMagParam.getContent()鐨勫弬鏁颁负锛歿}", active, sendMagParam.getContent());
//鐪佺珛鍚屽痉鐨勭煭淇″彂閫佹柟寮�
String data = MessageSend.sendMsg(sendMagParam.getContent(), "6", sendMagParam.getPhone(), LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")));
- if (StringUtils.isNotEmpty(data) && data.contains("result=0")) {
- isSuccess = "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")) {
+ isSuccess = "true";
+ }
}
} else if (active.equals("hzszlyy")) {//甯備竴鍖婚櫌
String content = sendMagParam.getContent().replace("銆愭柊鍗庡尰闄€��", "");
@@ -742,11 +750,11 @@
serviceSubtask.setSendstate(3L);
if (StringUtils.isNotEmpty(isSuccess) && isSuccess.equals("true")) {
serviceSubtask.setResult("success");
- serviceSubtask.setRemark("鐭俊鍙戦�佹垚鍔�");
+ serviceSubtask.setRemark(serviceSubtask.getRemark() + "," + "鐭俊鍙戦�佹垚鍔�");
setSuccessPreachForm(serviceSubtask, sendPreachform, "鐭俊鍙戦�佹垚鍔�", "2");
} else {
serviceSubtask.setResult("error");
- serviceSubtask.setRemark("鐭俊鍙戦�佸け璐�" + now);
+ serviceSubtask.setRemark(serviceSubtask.getRemark() + "," +"鐭俊鍙戦�佸け璐�" + now);
setSuccessPreachForm(serviceSubtask, sendPreachform, "鐭俊鍙戦�佸け璐�" + now, "5");
}
} catch (Exception e) {
@@ -770,6 +778,8 @@
//鑾峰彇寰俊鍏紬鍙疯姹備俊鎭牴鎹満鏋処D
List<String> wxqqxx = WxGZHEnum.getDescByCode(patArchive.getOrgid());
+ //甯備竴鍖婚櫌 涓嶆牎楠�
+
if (CollectionUtils.isEmpty(wxqqxx) || wxqqxx.size() < 4) {
setSuccessPreachForm(serviceSubtask, sendPreachform, "銆愬叕浼楀彿銆戣鏈烘瀯鐨勫叕浼楀彿閰嶇疆淇℃伅涓嶅叏锛屾棤娉曢�氳繃鍏紬鍙峰彂閫�", "4");
return;
@@ -780,9 +790,26 @@
return;
}
String wxCode = "";
- if (active.equals("hzszlyy")) {//甯備竴鍖婚櫌
- String urlTemp = "http://192.200.54.14:5003/sfjk/SendMessage?sfzh=" + serviceSubtask.getSfzh() + "&title=鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑诲~鍐欍��&content=鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑诲~鍐欍��&phone=" + patArchive.getTelcode() + "&url=" + url + "&key=ff76f8904f5f32b5ee1739e8ea46e60g";
- HttpUtils.sendGet(urlTemp);
+ //甯備竴鍖婚櫌
+ if (active.equals("hzszlyy")) {
+ //澶勭悊涓枃涔辩爜闂
+ /**String title = URLEncoder.encode("鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑诲~鍐欍��", StandardCharsets.UTF_8.toString());
+ String content = URLEncoder.encode("鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑诲~鍐欍��", StandardCharsets.UTF_8.toString());
+ String encodedUrl = URLEncoder.encode(url, StandardCharsets.UTF_8.toString());
+ String urlTemp = "http://192.200.54.14:5003/sfjk/SendMessage?sfzh=" + serviceSubtask.getSfzh() +
+ "&title=" + title +
+ "&content=" + content +
+ "&phone=" + patArchive.getTelcode() +
+ "&url=" + encodedUrl +
+ "&key=ff76f8904f5f32b5ee1739e8ea46e60g";
+ // HttpUtils.sendGet(urlTemp);
+ String sendMsg = "";
+ sendMsg = HttpUtils.sendPost(urlTemp);
+ log.info(sendMsg); **/
+
+ wxCode = smsUtils.sendChat(url, patArchive.getTelcode(), serviceSubtask.getSfzh());
+ log.info(wxCode);
+
} else {
wxCode = getWXCode(serviceSubtask.getSfzh(), url, serviceSubtask.getTaskName(), serviceSubtask.getTaskDesc(), patArchive.getTelcode(), serviceSubtask.getSendname(), patArchive.getPatidHis(), wxqqxx);
}
@@ -1084,4 +1111,47 @@
serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
return true;
}
+
+ /**
+ * 閫氶厤绗﹀彉閲忔浛鎹�
+ *
+ * @param serviceSubtask
+ * @param scriptContent
+ * @return
+ */
+ private String getObject(ServiceSubtask serviceSubtask, String scriptContent) {
+ Map<String, Map<String, String>> param = getParam(serviceSubtask.getTaskid());
+ for (Map<String, String> map : param.values()) {
+ for (String key : map.keySet()) {
+ scriptContent = scriptContent.replace(key, StringUtils.isNotEmpty(map.get(key)) ? map.get(key) : "");
+ }
+ }
+ if (StringUtils.isEmpty(scriptContent)) {
+ return scriptContent;
+ }
+ scriptContent = scriptContent.replace("${name}", StringUtils.isNotEmpty(serviceSubtask.getSendname()) ? serviceSubtask.getSendname() : "");
+ scriptContent = scriptContent.replace("${dzz}", StringUtils.isNotEmpty(serviceSubtask.getAddr()) ? serviceSubtask.getAddr() : "");
+ scriptContent = scriptContent.replace("${phone}", StringUtils.isNotEmpty(serviceSubtask.getTelcode()) ? serviceSubtask.getTelcode() : "");
+
+ return scriptContent;
+ }
+
+ /**
+ * 鑾峰彇浠诲姟閲岀殑閫氶厤绗�
+ *
+ * @param taskId
+ * @return
+ */
+ private Map<String, Map<String, String>> getParam(Long taskId) {
+ ServiceTask serviceTask = serviceTaskMapper.selectServiceTaskByTaskid(taskId);
+ ObjectMapper objectMapper = new ObjectMapper();
+ Map<String, Map<String, String>> serviceTaskMap = null;
+ try {
+ serviceTaskMap = objectMapper.readValue(serviceTask.getTextParam(), Map.class);
+ } catch (JsonProcessingException e) {
+ e.printStackTrace();
+ }
+ return serviceTaskMap;
+ }
+
}
--
Gitblit v1.9.3