From 0b9cdc31a4cf076c7267da5b061a1b16ad13499f Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期三, 15 十月 2025 14:52:08 +0800
Subject: [PATCH] 市一短信和微信问卷

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java |   72 ++++++++++++++++++++++++++++++++---
 1 files changed, 65 insertions(+), 7 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 42758b8..5a8093a 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
@@ -5,12 +5,17 @@
 import com.ruoyi.common.utils.RSAPublicKeyExample;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.file.FileUtils;
+import com.ruoyi.common.utils.http.HttpUtils;
 import com.ruoyi.common.utils.sms.smsUtils;
 import com.ruoyi.framework.config.ServerConfig;
 import com.smartor.domain.HtmlContentVO;
+import com.smartor.domain.ServiceOutPath;
 import com.smartor.domain.smsVO;
+import com.smartor.service.IServiceOutPathService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.MediaType;
@@ -21,10 +26,12 @@
 import java.io.UnsupportedEncodingException;
 import java.net.URLEncoder;
 import java.nio.charset.StandardCharsets;
+import java.util.Date;
 
 @RestController
 @Api(description = "鐭ヤ俊鎺ュ彛")
 @RequestMapping("/sms")
+@Slf4j
 public class SmsController {
     @Value("${xhsmsPath}")
     private String xhsmsPath;
@@ -44,13 +51,16 @@
     @Value("${pub_key}")
     private String pub_key;
 
+    @Autowired
+    private IServiceOutPathService iServiceOutPathService;
+
 
     /**
      * @param
      * @return
      */
     @ApiOperation("鐭俊鍙戦��")
-    @PostMapping("/send")
+    @PostMapping("/sendTest")
     public AjaxResult send(@RequestBody smsVO vo) {
         String sendMsg=smsUtils.sendSms(xhsmsPath,xhsmsAccount,xhsmsPwd,vo.getPhone(),vo.getContent());
         return AjaxResult.success(sendMsg);
@@ -60,19 +70,67 @@
      * @return
      */
     @ApiOperation("鐭俊鍙戦��")
-    @PostMapping("/sendAsk")
+    @PostMapping("/send")
     public AjaxResult sendAsk(@RequestBody smsVO vo) throws UnsupportedEncodingException {
-//        String format = String.format("%03X", vo.getId());
-//        String url=ip + ":" + req_path + "/wt?p=" + format;
         RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
         String taskId = rsaPublicKeyExample.encryptedData(vo.getTaskId().toString(), pub_key);
         String patid = rsaPublicKeyExample.encryptedData(vo.getPatId().toString(), pub_key);
-        String url = null;
-        url = ip + ":" + req_path + "/outsideChainwt?param1=" + taskId + "&param2=" + patid + "&param3=" + URLEncoder.encode(vo.getTaskName(), StandardCharsets.UTF_8.toString()) + "&param5=false";
+        String subId = rsaPublicKeyExample.encryptedData(vo.getSubId().toString(), pub_key);
+        ServiceOutPath serviceOutPath = new ServiceOutPath();
+        serviceOutPath.setParam1(taskId);
+        serviceOutPath.setParam2(patid);
+        serviceOutPath.setParam3(vo.getTaskName());
+        serviceOutPath.setParam6(subId);
+        serviceOutPath.setCreateTime(new Date());
+        String format ="";
+        if(ObjectUtils.isNotEmpty(vo.getSubId())) {
+            format = String.format("%03X", Integer.parseInt(vo.getSubId()));
+            serviceOutPath.setRadix(format);
+        }
+        iServiceOutPathService.insertServiceOutPath(serviceOutPath);
+
+        String url=ip + ":" + req_path + "/wt?p=" + format;
+
+        String content="鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + url + "濉啓銆傛劅璋㈡偍閰嶅悎锛�";
+        if(ObjectUtils.isNotEmpty(vo.getContent()))
+            content=vo.getContent();
+        else
+            sendChat(vo);
+        String sendMsg="";
+        try{
+            sendMsg=smsUtils.sendSms(xhsmsPath,xhsmsAccount,xhsmsPwd,vo.getPhone(),content);
+            log.info(sendMsg);
+        }catch (Exception ex){
+            log.error(ex.getMessage());
+        }
+        return AjaxResult.success(sendMsg);
+    }
+
+    /**
+     * @param
+     * @return
+     */
+    @ApiOperation("寰俊鍙戦��")
+    @PostMapping("/sendChat")
+    public AjaxResult sendChat(@RequestBody smsVO vo) throws UnsupportedEncodingException {
+        RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
+        String taskId = rsaPublicKeyExample.encryptedData(vo.getTaskId().toString(), pub_key);
+        String patid = rsaPublicKeyExample.encryptedData(vo.getPatId().toString(), pub_key);
+        String url = ip + ":" + req_path + "/outsideChainwt?param1=" + taskId + "&param2=" + patid
+                + "&param3=" + URLEncoder.encode(vo.getTaskName(), StandardCharsets.UTF_8.toString()) + "&param5=false";
 
         String content="鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + url + "濉啓銆傛劅璋㈡偍閰嶅悎锛�";
 
-        String sendMsg=smsUtils.sendSms(xhsmsPath,xhsmsAccount,xhsmsPwd,vo.getPhone(),content);
+        String urlTemp="http://192.200.54.14:5003/sfjk/SendMessage?sfzh="+vo.getIdCard()
+                +"&title=鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑诲~鍐欍��&content="+content+"&phone="+vo.getPhone()
+                +"&url="+url+"&key=ff76f8904f5f32b5ee1739e8ea46e60g";
+        String sendMsg= "";
+        try{
+            sendMsg= HttpUtils.sendGet(urlTemp);
+            log.info(sendMsg);
+        }catch (Exception ex){
+            log.error(ex.getMessage());
+        }
         return AjaxResult.success(sendMsg);
     }
 }

--
Gitblit v1.9.3