From e1b933c0c344494afe86bae9162dca9bdc34fd56 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期三, 22 七月 2026 17:04:14 +0800
Subject: [PATCH] 【丽水】扫码生成外链
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java | 92 +++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 87 insertions(+), 5 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java
index 115081f..6e53314 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java
@@ -8,9 +8,13 @@
import com.ruoyi.common.utils.HttpUtil;
import com.ruoyi.common.utils.RSAPublicKeyExample;
import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.http.HttpUtils;
import com.ruoyi.common.utils.sms.smsUtils;
import com.smartor.common.MtSubmitSmUtil;
+import com.smartor.common.ShiyiSmsUtil;
import com.smartor.domain.ServiceOutPath;
+import com.smartor.domain.ShiyiSmsRequest;
+import com.smartor.domain.ShiyiSmsResponse;
import com.smartor.domain.smsVO;
import com.smartor.mapper.UtilsMapper;
import com.smartor.service.IServiceOutPathService;
@@ -26,6 +30,7 @@
import org.springframework.web.bind.annotation.RestController;
import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Date;
@@ -43,11 +48,17 @@
@Autowired
private MtSubmitSmUtil mtSubmitSmUtil;
+ @Autowired
+ private ShiyiSmsUtil shiyiSmsUtil;
+
@Value("${xhsmsAccount}")
private String xhsmsAccount;
@Value("${xhsmsPwd}")
private String xhsmsPwd;
+ // 铏氭嫙鎺ュ叆鐮�
+ @Value("${xhsmsjrm}")
+ private String xhsmsjrm;
@Value("${localIP}")
private String ip;
@@ -75,6 +86,18 @@
return AjaxResult.success(sendMsg);
}
+ @ApiOperation("甯備竴HIS鐭俊XML娴嬭瘯")
+ @PostMapping("/sendShiyiTest")
+ public AjaxResult sendShiyiTest(@RequestBody ShiyiSmsRequest request) {
+ try {
+ ShiyiSmsResponse response = shiyiSmsUtil.sendSms(request);
+ return AjaxResult.success(response);
+ } catch (Exception e) {
+ log.error("甯備竴HIS鐭俊XML娴嬭瘯澶辫触", e);
+ return AjaxResult.error("甯備竴HIS鐭俊XML娴嬭瘯澶辫触: " + e.getMessage());
+ }
+ }
+
/**
* @param
* @return
@@ -97,9 +120,11 @@
serviceOutPath.setParam6(subId);
serviceOutPath.setRadix(format);
serviceOutPath.setCreateTime(new Date());
- iServiceOutPathService.insertServiceOutPath(serviceOutPath);
+ serviceOutPath.setOrgid(vo.getOrgid());
String url = ip + ":" + req_path + "/wt?p=" + format;
content = "鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + url + "濉啓銆傛劅璋㈡偍閰嶅悎锛�";
+ serviceOutPath.setUrl(url);
+ iServiceOutPathService.insertServiceOutPath(serviceOutPath);
}
if (ObjectUtils.isNotEmpty(vo.getContent())) content = vo.getContent();
@@ -124,10 +149,33 @@
}
}
} else if (active.equals("xh")) {
- Map<String, String> req = new HashMap<>();
- req.put("phone", vo.getPhone());
- req.put("content", vo.getContent());
- sendMsg = HttpUtil.postJsonRequest(xhsmsPath, new Gson().toJson(req));
+// Map<String, String> req = new HashMap<>();
+// req.put("phone", vo.getPhone());
+// req.put("content", vo.getContent());
+// Boolean result = HttpUtil.postJsonRequest(xhsmsPath, new Gson().toJson(req));
+ Map<String, String> map2 = new HashMap<String, String>();
+ map2.put("action", "send");
+ map2.put("account", xhsmsAccount);
+ map2.put("password", xhsmsPwd);
+ map2.put("mobile", vo.getPhone());
+ map2.put("content", vo.getContent());
+ map2.put("extno", xhsmsjrm);
+ map2.put("rt", "json");
+ StringBuilder encodedParams = new StringBuilder();
+
+ for (Map.Entry<String, String> entry : map2.entrySet()) {
+ if (encodedParams.length() > 0) {
+ encodedParams.append("&");
+ }
+ // 瀵归敭鍜屽�艰繘琛孶RL缂栫爜
+ String encodedKey = URLEncoder.encode(entry.getKey(), "UTF-8");
+ String encodedValue = URLEncoder.encode(entry.getValue(), "UTF-8");
+ encodedParams.append(encodedKey).append("=").append(encodedValue);
+ }
+ Boolean result = HttpUtils.sendPost(xhsmsPath, encodedParams.toString());
+ if (result) {
+ sendMsg = "true";
+ }
} else if (active.equals("ls")) {
//涓芥按13瀹跺尰闄紝鏈夌偣涓嶆柟渚匡紝鏈夌┖鍐嶆帴
return AjaxResult.error("璇ョ煭淇″姛鑳借繕鏈紑閫�");
@@ -161,10 +209,44 @@
serviceOutPath.setParam6(subId);
serviceOutPath.setRadix(format);
serviceOutPath.setCreateTime(new Date());
+ serviceOutPath.setOrgid(vo.getOrgid());
iServiceOutPathService.insertServiceOutPath(serviceOutPath);
String url = ip + ":" + req_path + "/wt?p=" + format;
sendMsg = smsUtils.sendChat(url, vo.getPhone(), vo.getIdCard());
}
return AjaxResult.success(sendMsg);
}
+
+ /**
+ * @param
+ * @return
+ */
+ @ApiOperation("鐢熸垚澶栭摼")
+ @PostMapping("/getUrl")
+ public AjaxResult getUrl(@RequestBody smsVO vo) throws UnsupportedEncodingException {
+ String content = "";
+ if (StringUtils.isNotEmpty(vo.getTaskId()) && StringUtils.isNotEmpty(vo.getPatId()) && StringUtils.isNotEmpty(vo.getSubId())) {
+ RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
+ String taskId = rsaPublicKeyExample.encryptedData(vo.getTaskId().toString(), pub_key);
+ String patid = rsaPublicKeyExample.encryptedData(vo.getPatId().toString(), pub_key);
+ String subId = rsaPublicKeyExample.encryptedData(vo.getSubId().toString(), pub_key);
+ Integer radix = iServiceOutPathService.selectAutoId();
+ String format = String.format("%03X", radix);
+ ServiceOutPath serviceOutPath = new ServiceOutPath();
+ serviceOutPath.setParam1(taskId);
+ serviceOutPath.setParam2(patid);
+ serviceOutPath.setParam3(vo.getTaskName());
+ serviceOutPath.setParam6(subId);
+ serviceOutPath.setRadix(format);
+ serviceOutPath.setCreateTime(new Date());
+ serviceOutPath.setOrgid(vo.getOrgid());
+ String url = ip + ":" + req_path + "/wt?p=" + format;
+// content = "鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + url + "濉啓銆傛劅璋㈡偍閰嶅悎锛�";
+ content = url;
+ serviceOutPath.setUrl(url);
+ iServiceOutPathService.insertServiceOutPath(serviceOutPath);
+ }
+ return AjaxResult.success(content);
+ }
+
}
--
Gitblit v1.9.3