From f37340d34e42ded944304ad0601d3f3abc9d55bd Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 30 四月 2025 17:55:05 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java |   73 +++++++++++++++++++++++++++++++++---
 1 files changed, 67 insertions(+), 6 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
index 1717887..af1e109 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
@@ -1,11 +1,14 @@
 package com.ruoyi.web.component;
 
+import afu.org.checkerframework.checker.oigj.qual.O;
 import com.alibaba.fastjson2.JSONObject;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.gson.Gson;
 import com.ruoyi.common.core.redis.RedisCache;
+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.RSAPublicKeyExample;
 import com.ruoyi.common.utils.StringUtils;
@@ -17,6 +20,7 @@
 import com.smartor.service.IBaseSmsaccountService;
 import com.smartor.service.IServiceOutPathService;
 import com.smartor.service.IServiceSubtaskRecordService;
+import com.sun.org.apache.bcel.internal.generic.NEW;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -32,6 +36,7 @@
 import java.util.concurrent.Executors;
 import java.util.concurrent.TimeUnit;
 
+import static cn.hutool.core.convert.Convert.numberToWord;
 import static cn.hutool.core.convert.Convert.toHex;
 
 @Slf4j
@@ -79,6 +84,9 @@
 
     @Value("${xhsmsPath}")
     private String xhsmsPath;
+
+    @Value("${visitHosp}")
+    private Integer visitHosp;
 
     // 鍒涘缓鍥哄畾澶у皬鐨勭嚎绋嬫睜
     private static final ExecutorService executorService = Executors.newFixedThreadPool(10);
@@ -342,10 +350,37 @@
                                 sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�");
                             }
                             //鐭俊杩橀渶瑕佹ā鏉�
-                            Map<String, String> req = new HashMap<>();
-                            req.put("phone", sendMagParam.getPhone());
-                            req.put("content", sendMagParam.getContent());
-                            String s = HttpUtil.postJsonRequest(xhsmsPath, new Gson().toJson(req));
+                            String s = null;
+                            if (visitHosp == 1) {
+                                //鏂板崕鐨勭煭淇″彂閫佹柟寮�
+                                Map<String, String> req = new HashMap<>();
+                                req.put("phone", sendMagParam.getPhone());
+                                req.put("content", sendMagParam.getContent());
+                                s = HttpUtil.postJsonRequest(xhsmsPath, new Gson().toJson(req));
+                            } else if (visitHosp == 2) {
+                                //涓芥按鐨勭煭淇″彂閫佹柟寮�
+                                String address = MsgLSEnum.getAddressByCode(serviceSubtask.getOrgid());
+                                if (StringUtils.isEmpty(address)) {
+                                    ServiceSubtask ss = new ServiceSubtask();
+                                    ss.setResult("error");
+                                    ss.setRemark("鐭俊鍙戦�佸け璐�,璇ユ満鏋勬病鏈夐厤缃煭淇″湴鍧�");
+                                    ss.setSendstate(5L);
+                                    ss.setId(serviceSubtask.getId());
+                                    ss.setFinishtime(new Date());
+                                    serviceSubtaskMapper.updateServiceSubtask(ss);
+                                    continue;
+                                }
+                                String dxCode = getDXCode(address, sendMagParam.getPhone(), sendMagParam.getContent(), "", "", MsgLSEnum.getHeaderByCode(serviceSubtask.getOrgid()));
+                                log.error("---------涓芥按鐭俊鍙戦�佺粨鏋滐細{}-------", dxCode);
+                                ObjectMapper objectMapper = new ObjectMapper();
+                                Map<String, Object> textParam = objectMapper.readValue(dxCode, Map.class);
+                                String code = textParam.get("code").toString();
+                                if (code.equals("0")) {
+                                    s = "true";
+                                } else {
+                                    throw new BaseException(null);
+                                }
+                            }
                             if (s.equals("true")) {
                                 ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord();
                                 serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString());
@@ -499,7 +534,7 @@
                             }
 
 
-                            String wxCode = getWXCode(serviceSubtask.getSfzh(), url, serviceSubtask.getTaskName(), serviceSubtask.getTaskDesc(), patArchive.getTelcode(), patArchive.getName(), patArchive.getPatidHis(),wxqqxx);
+                            String wxCode = getWXCode(serviceSubtask.getSfzh(), url, serviceSubtask.getTaskName(), serviceSubtask.getTaskDesc(), patArchive.getTelcode(), patArchive.getName(), patArchive.getPatidHis(), wxqqxx);
                             Map<String, Object> map = JSONObject.parseObject(wxCode, Map.class);
                             if (!map.isEmpty()) {
                                 serviceSubtask.setResult("success");
@@ -643,7 +678,7 @@
         return key;
     }
 
-    private String getWXCode(String idcard, String url, String taskName, String taskDesc, String phone, String patientname, String setPatientid,List<String> wxqqxx) {
+    private String getWXCode(String idcard, String url, String taskName, String taskDesc, String phone, String patientname, String setPatientid, List<String> wxqqxx) {
         XinHuaWXReq xinHuaWXReq = new XinHuaWXReq();
         xinHuaWXReq.setIdcard(idcard);
         xinHuaWXReq.setUrl(url);
@@ -668,6 +703,32 @@
         return code;
     }
 
+
+    private String getDXCode(String address, String ShouJiHM, String FaSongNR, String FaSongRID, String FaSongRXM, Map<String, Object> headerMap) {
+        Map<String, Object> map = new LinkedHashMap<>();
+
+        Map<String, Object> YeWuXX = new LinkedHashMap<>();
+        Map<String, Object> DuanXinXX = new LinkedHashMap<>();
+        DuanXinXX.put("ShouJiHM", ShouJiHM);
+        DuanXinXX.put("FaSongNR", FaSongNR);
+        DuanXinXX.put("FaSongRID", FaSongRID);
+        DuanXinXX.put("FaSongRXM", FaSongRXM);
+        YeWuXX.put("DuanXinXX", DuanXinXX);
+
+        map.put("XiaoXiTou", headerMap);
+        map.put("DuanXinXX", DuanXinXX);
+
+        String body = new Gson().toJson(map);
+
+        String result = HttpUtils.sendPost(address, body);
+        log.error("--------result鐨勫�间负锛歿}-----", result);
+
+        JSONObject jsonObject = JSONObject.parseObject(result);
+        String code = (String) jsonObject.toString();
+        return code;
+    }
+
+
     public String encode(String arg) {
         if (arg == null) {
             arg = "";

--
Gitblit v1.9.3