From 85ce52a4573ea2bdfc82876aa92365d0359e8483 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期四, 29 十月 2026 16:07:18 +0800
Subject: [PATCH] 【丽水】丽水中模板读取报错

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java |   65 +++++++++++++++++++++++++++++++-
 1 files changed, 63 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 8892d10..a1fceaf 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
@@ -1,11 +1,16 @@
 package com.ruoyi.web.controller.common;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.gson.Gson;
 import com.ruoyi.common.annotation.AddOrgId;
+import com.ruoyi.common.annotation.Anonymous;
+import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.dx.MessageSend;
+import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.utils.HttpUtil;
 import com.ruoyi.common.utils.RSAPublicKeyExample;
 import com.ruoyi.common.utils.StringUtils;
@@ -277,11 +282,67 @@
     @AddOrgId
     @PostMapping("/sendYunMasSms")
     public AjaxResult sendYunMasSms(@RequestBody smsVO vo) throws Exception {
-//        String yunMasConfig = configService.selectConfigByKey("ls.msg.yunmas",vo.getOrgid());
-        SmsUtils.YunMasConfig yunMasConfig = new SmsUtils.YunMasConfig();
+        String yunMasConfigJson = configService.selectConfigByKey("ls.msg.yunmas", vo.getOrgid());
+        SmsUtils.YunMasConfig yunMasConfig = SmsUtils.YunMasConfig.of(yunMasConfigJson);
         SmsUtils.SmsResult smsResult = SmsUtils.sendYunMasSms(yunMasConfig, vo.getPhone(), vo.getContent());
         return AjaxResult.success(smsResult);
     }
 
+    /**
+     * 涓芥按濡囧辜 寰俊娑堟伅鍙戦��
+     * <p>
+     * 澶栭儴绯荤粺浼犲叆鎮h�呬俊鎭拰閫氱煡鍐呭锛岀敱鏈郴缁熺粺涓�鑾峰彇 token銆佽В鏋愭ā鏉垮苟璋冪敤涓芥按寰俊 sendMessage 鎺ュ彛銆�
+     *
+     * @param request 寰俊娑堟伅璇锋眰
+     * @return 鍙戦�佺粨鏋�
+     */
+    @Anonymous
+    @ApiOperation(value = "涓芥按濡囧辜 寰俊娑堟伅鍙戦��", notes = "渚涗附姘村競濡囧辜淇濆仴闄㈠閮ㄨ皟鐢�")
+    @Log(title = "涓芥按濡囧辜寰俊娑堟伅鍙戦��", businessType = BusinessType.OTHER)
+    @PostMapping("/sendChatFuyou")
+    public AjaxResult sendChatFuyou(@RequestBody LishuiFuyouWxChatRequest request) {
+        if (request == null) {
+            return AjaxResult.error("璇锋眰鍙傛暟涓嶈兘涓虹┖");
+        }
+        try {
+            SmsUtils.LsWxConfig config = SmsUtils.LsWxConfig.defaultLishui();
+
+            SmsUtils.LsWxMessage message = new SmsUtils.LsWxMessage();
+            message.setId(request.getTemplateId());
+            message.setPatientId(request.getPatientId());
+            message.setPatientName(request.getPatientName());
+            message.setIdCard(request.getIdCard());
+            message.setMobile(request.getMobile());
+            message.setMedCardNo(request.getMedCardNo());
+            message.setTitleName(request.getTitleName());
+            message.setContent(request.getContent());
+            message.setUrl(request.getUrl());
+
+            log.info("銆愪附姘村骞煎井淇°�戞敹鍒板閮ㄨ皟鐢紝鎵嬫満鍙凤細{}锛屾ā鏉縄D锛歿}",
+                    request.getMobile(), request.getTemplateId());
+            String resp = SmsUtils.sendChatLs(config, message);
+            log.info("銆愪附姘村骞煎井淇°�戝閮ㄨ皟鐢ㄧ粨鏋滐細{}", resp);
+
+            JSONObject result;
+            try {
+                result = JSON.parseObject(resp);
+            } catch (Exception e) {
+                log.error("銆愪附姘村骞煎井淇°�戠涓夋柟鍝嶅簲涓嶆槸鍚堟硶JSON锛歿}", resp, e);
+                return AjaxResult.error("涓芥按濡囧辜寰俊鍙戦�佸け璐ワ細绗笁鏂瑰搷搴斿紓甯�", resp);
+            }
+            if (result == null) {
+                return AjaxResult.error("涓芥按濡囧辜寰俊鍙戦�佸け璐ワ細绗笁鏂瑰搷搴斾负绌�", resp);
+            }
+            if (result.getIntValue("code") != 0) {
+                String msg = result.getString("msg");
+                return AjaxResult.error("涓芥按濡囧辜寰俊鍙戦�佸け璐ワ細"
+                        + (StringUtils.isEmpty(msg) ? "绗笁鏂规帴鍙h繑鍥炲け璐�" : msg), result);
+            }
+            return AjaxResult.success("鍙戦�佹垚鍔�", result);
+        } catch (Exception e) {
+            log.error("銆愪附姘村骞煎井淇°�戝閮ㄨ皟鐢ㄥ紓甯革紝鎵嬫満鍙凤細{}", request.getMobile(), e);
+            return AjaxResult.error("涓芥按濡囧辜寰俊鍙戦�佸紓甯革細" + e.getMessage());
+        }
+    }
 
 }

--
Gitblit v1.9.3