From 02e4e3a9fcfbe2a366fc75868dfa019145cea9d2 Mon Sep 17 00:00:00 2001 From: sinake <sinake1@qq.com> Date: 星期一, 20 十月 2025 15:05:18 +0800 Subject: [PATCH] 市一短信和微信问卷及orgid过滤优化 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java | 97 +++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 95 insertions(+), 2 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 7353768..c0310e5 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 @@ -2,14 +2,21 @@ import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.core.domain.AjaxResult; +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.mapper.UtilsMapper; +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; @@ -17,10 +24,16 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.Date; +import java.util.List; @RestController @Api(description = "鐭ヤ俊鎺ュ彛") @RequestMapping("/sms") +@Slf4j public class SmsController { @Value("${xhsmsPath}") private String xhsmsPath; @@ -31,16 +44,96 @@ @Value("${xhsmsPwd}") private String xhsmsPwd; + @Value("${localIP}") + private String ip; + + @Value("${req_path}") + private String req_path; + + @Value("${pub_key}") + private String pub_key; + + @Autowired + private IServiceOutPathService iServiceOutPathService; + + @Autowired + private UtilsMapper utilsMapper; + + /** + * @param + * @return + */ + @ApiOperation("鐭俊鍙戦��") + @PostMapping("/sendTest") + public AjaxResult send(@RequestBody smsVO vo) { + String sendMsg=smsUtils.sendSms(xhsmsPath,xhsmsAccount,xhsmsPwd,vo.getPhone(),vo.getContent()); + return AjaxResult.success(sendMsg); + } /** * @param * @return */ @ApiOperation("鐭俊鍙戦��") @PostMapping("/send") - public AjaxResult send(@RequestBody smsVO vo) { - String sendMsg=smsUtils.sendSms(xhsmsPath,xhsmsAccount,xhsmsPwd,vo.getPhone(),vo.getContent()); + public AjaxResult sendAsk(@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 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()); + 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 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()); + iServiceOutPathService.insertServiceOutPath(serviceOutPath); + String url = ip + ":" + req_path + "/wt?p=" + format; + + + String sendMsg = smsUtils.sendChat(url,vo.getPhone(),vo.getIdCard()); + return AjaxResult.success(sendMsg); + } } -- Gitblit v1.9.3