From 8249bbcc710c42f89c69fb0bd575094acd2e418d Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 17 四月 2026 16:33:27 +0800
Subject: [PATCH] 南华附一上线、首页问题、定时任务问题处理

---
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java |  111 +++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 75 insertions(+), 36 deletions(-)

diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
index ddb0a57..6f8b1b9 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -11,6 +11,7 @@
 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.*;
 import com.ruoyi.common.utils.http.HttpUtils;
 import com.ruoyi.common.utils.sms.smsUtils;
@@ -19,6 +20,7 @@
 import com.ruoyi.system.domain.SysConfig;
 import com.ruoyi.system.service.ISysConfigService;
 import com.smartor.common.LSHospTokenUtil;
+import com.smartor.common.MtSubmitSmUtil;
 import com.smartor.domain.*;
 import com.smartor.domain.entity.ServiceSubtaskEntity;
 import com.smartor.mapper.*;
@@ -162,6 +164,8 @@
     @Value("${server.port}")
     private String port;
 
+    @Autowired
+    private MtSubmitSmUtil mtSubmitSmUtil;
 
     @Value("${spring.profiles.active}")
     private String active;
@@ -264,7 +268,9 @@
             } catch (Exception e) {
                 log.error("銆恉ealHisData銆戞渤鍗楁暟鎹噰闆嗗紓甯�", e);
             }
-        } else if (active.trim().equals("sltd")) {
+        } else if (active.trim().equals("sltd") || active.trim().equals("nhfy")) {
+            //鐪佺珛鍚屽痉涓庡崕鍗楅檮涓�鐢ㄥ悓涓�濂楅噰闆嗘柟娉曪紙閮芥槸鏉ユ湭鏉ユ彁渚涳級
+
             try {
                 //鑾峰彇鏄惁闇�瑕侀噰闆嗙敤鎴枫�侀儴闂ㄤ俊鎭�
                 SysConfig config = new SysConfig();
@@ -319,7 +325,6 @@
                     serviceSLTDInhospReqVO.setEncounterTimeStart(nowTime);
                     serviceSLTDInhospReqVO.setEncounterTimeEnd(nowTime);
                     List<String> list = new ArrayList<>();
-//                    list.add("FH0108.02");
                     list.add("FH0109.22");
                     list.add("FH0109.23");
                     list.add("FH0109.53");
@@ -342,19 +347,38 @@
                     serviceSLTDHealthcareRecordService.queryHealthcareRecordList(serviceSLTDInhospReqVO);
                     log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滃叆闄⑩�濈祼鏉熼噰闆嗘暟鎹紝闄㈠尯锛歿}", cid);
 
-//                    log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濆紑濮嬮噰闆嗘暟鎹紝闄㈠尯锛歿}", cid);
-//                    serviceSLTDInhospReqVO.setStartHeadTime(null);
-//                    serviceSLTDInhospReqVO.setStartTailTime(null);
-//                    serviceSLTDInhospReqVO.setEncounterTimeStart(nowTime);
-//                    serviceSLTDInhospReqVO.setEncounterTimeEnd(nowTime);
-//                    serviceSLTDInhospReqVO.setStatusList(null);
-//                    List<String> list1 = new ArrayList<>();
-//                    list1.add("FH0108.01");
-//                    list1.add("FH0108.03");
-//                    serviceSLTDInhospReqVO.setHealthcareRecordTypeList(list1);
-//                    log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濋噰闆嗘暟鎹叆鍙傦細{}", serviceSLTDInhospReqVO);
-//                    serviceSLTDHealthcareRecordService.queryHealthcareRecordList(serviceSLTDInhospReqVO);
-//                    log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濇潫閲囬泦鏁版嵁锛岄櫌鍖猴細{}", cid);
+                    // 闂ㄦ�ヨ瘖鍒嗛〉閲囬泦锛氭瘡椤�1000鏉★紝鐩村埌鏃犳暟鎹负姝�
+                    log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濆紑濮嬪垎椤甸噰闆嗘暟鎹紝闄㈠尯锛歿}", cid);
+                    serviceSLTDInhospReqVO.setStartHeadTime(null);
+                    serviceSLTDInhospReqVO.setStartTailTime(null);
+                    serviceSLTDInhospReqVO.setEncounterTimeStart(nowTime);
+                    serviceSLTDInhospReqVO.setEncounterTimeEnd(nowTime);
+                    serviceSLTDInhospReqVO.setStatusList(null);
+                    List<String> list1 = new ArrayList<>();
+                    list1.add("FH0108.01");
+                    list1.add("FH0108.03");
+                    serviceSLTDInhospReqVO.setHealthcareRecordTypeList(list1);
+                    long outpPage = 1L;
+                    final long OUTP_PAGE_SIZE = 1000L;
+                    while (true) {
+                        serviceSLTDInhospReqVO.setCurrent(outpPage);
+                        serviceSLTDInhospReqVO.setSize(OUTP_PAGE_SIZE);
+                        log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濋噰闆嗙{}椤垫暟鎹紝闄㈠尯锛歿}", outpPage, cid);
+                        List<ServiceSLTDInhospResDTO> outpResult = serviceSLTDHealthcareRecordService.queryHealthcareRecordList(serviceSLTDInhospReqVO);
+                        if (CollectionUtils.isEmpty(outpResult)) {
+                            log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濈{}椤垫棤鏁版嵁锛岄噰闆嗙粨鏉燂紝闄㈠尯锛歿}", outpPage, cid);
+                            break;
+                        }
+                        log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濈{}椤甸噰闆唟}鏉★紝闄㈠尯锛歿}", outpPage, outpResult.size(), cid);
+                        if (outpResult.size() < OUTP_PAGE_SIZE) {
+                            break;
+                        }
+                        outpPage++;
+                    }
+                    // 娓呴櫎鍒嗛〉鍙傛暟锛岄伩鍏嶅奖鍝嶅悗缁嚭鍏ラ櫌鏌ヨ
+                    serviceSLTDInhospReqVO.setCurrent(null);
+                    serviceSLTDInhospReqVO.setSize(null);
+                    log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濆垎椤甸噰闆嗗畬鎴愶紝闄㈠尯锛歿}", cid);
 
                     log.debug("銆恉ealHisData銆戠渷绔嬪悓寰封�滃嚭闄⑩�濆紑濮嬮噰闆嗘暟鎹紝闄㈠尯锛歿}", cid);
                     serviceSLTDInhospReqVO.setStartHeadTime(null);
@@ -558,20 +582,20 @@
                 //2鍒ゆ柇涓�涓嬶紝褰撳墠鐨剆ort鏄笉鏄瓑浜庨渶瑕佹墽琛岀殑鎬讳釜鏁帮紝濡傛灉绛変簬鐨勮瘽锛岃鏄庢槸鏈�鍚庝竴涓紝鐩存帴灏唖ervuce_subtask鐨勭姸鎬佹敼鎴�5锛屾墽琛屽け璐ュ氨琛屼簡
                 Long cs = currentSort.get();
                 if (cs.equals(serviceSubtaskPreachforms.size())) {
-                    if(serviceSubtask.getPreachform().equals("1")){
+                    if (serviceSubtask.getPreachform().equals("1")) {
                         serviceSubtask.setSendstate(7L);
                         serviceSubtask.setRemark("澶勭悊琛ュ伩浠诲姟,褰撳墠澶勭悊鏈�鍚庤ˉ鍋� 浜哄伐瓒呮椂");
-                    }else {
+                    } else {
                         serviceSubtask.setSendstate(5L);
                         serviceSubtask.setRemark("澶勭悊琛ュ伩浠诲姟,褰撳墠澶勭悊鏈�鍚庤ˉ鍋匡紝鍏ㄩ儴鎵ц澶辫触");
                     }
 
                     serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
                     //淇敼鍙戦�佹柟寮忕殑鐘舵�佷负澶辫触
-                    if(serviceSubtaskPreachform.getPreachform().equals("1")){
+                    if (serviceSubtaskPreachform.getPreachform().equals("1")) {
                         serviceSubtaskPreachform.setSendstate("7");
                         serviceSubtaskPreachform.setId(id.get());
-                    }else {
+                    } else {
                         serviceSubtaskPreachform.setSendstate("5");
                         serviceSubtaskPreachform.setId(id.get());
                     }
@@ -740,7 +764,7 @@
                         if (heLibrary.getHetype().equals("1")) {
                             sendMagParam.setPhone(serviceSubtask.getPhone());
                             sendMagParam.setUrl(localIP + ":" + req_path + "/xj?p=" + format);
-                            if (active.equals("ls") || active.equals("sltd")) {
+                            if (active.equals("ls") || active.equals("sltd") || active.equals("nhfy")) {
                                 sendMagParam.setContent("鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�");
                             } else if (active.equals("xh")) {
                                 sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�");
@@ -792,15 +816,22 @@
                         if (code.equals("0")) {
                             isSuccess = "true";
                         }
-                    } else if (active.equals("sltd")) {
+                    } else if (active.equals("sltd") || active.equals("nhfy")) {
                         log.info("sltd杩涙潵浜嗗悧锛焮}   ,---sendMagParam.getContent()鐨勫弬鏁颁负锛歿}", active, sendMagParam.getContent());
-                        //鐪佺珛鍚屽痉鐨勭煭淇″彂閫佹柟寮�
-                        String data = MessageSend.sendMsg(sendMagParam.getContent(), "6", sendMagParam.getPhone(), LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")));
-                        if (StringUtils.isNotEmpty(data)) {
-                            ObjectMapper mapper = new ObjectMapper();
-                            JsonNode root = mapper.readTree(data);
-                            String status = root.get("result").get(0).get("status").asText();
-                            if (status.equals("00000")) {
+                        if (active.equals("sltd")) {
+                            //鐪佺珛鍚屽痉鐨勭煭淇″彂閫佹柟寮�
+                            String data = MessageSend.sendMsg(sendMagParam.getContent(), "6", sendMagParam.getPhone(), LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")));
+                            if (StringUtils.isNotEmpty(data)) {
+                                ObjectMapper mapper = new ObjectMapper();
+                                JsonNode root = mapper.readTree(data);
+                                String status = root.get("result").get(0).get("status").asText();
+                                if (status.equals("00000")) {
+                                    isSuccess = "true";
+                                }
+                            }
+                        } else if (active.equals("nhfy")) {
+                            Map<String, Object> smsResult = mtSubmitSmUtil.submitSm(sendMagParam.getPhone(), sendMagParam.getContent());
+                            if (smsResult != null && smsResult.get("result") != null && smsResult.get("result").toString().equals("0")) {
                                 isSuccess = "true";
                             }
                         }
@@ -905,7 +936,12 @@
                     Boolean wxCodeSuccess = false;
                     if (active.equals("hzszlyy")) {
                         if (!map.isEmpty() && map.get("success") != null) {
-                            wxCodeSuccess = (boolean) map.get("success");
+                            Integer wxCodeSuccessShiyi = (Integer) map.get("success");
+                            if (ObjectUtils.isNotEmpty(wxCodeSuccessShiyi) && wxCodeSuccessShiyi == 1) {
+                                wxCodeSuccess = true;
+                            } else {
+                                wxCodeSuccess = false;
+                            }
                         }
                     } else {
                         if (!map.isEmpty() && map.get("succ") != null) {
@@ -999,8 +1035,9 @@
                     //璇存槑鍏ㄥ彂閫佸け璐ヤ簡
                     serviceSubtask.setSendstate(5L);
                     log.error("getSendPreachform鏂规硶 妫�鏌ユ槸鍚︽墍鏈塻endstate涓嶇瓑浜�9, 鍏ㄥけ璐ヤ簡");
+                    serviceSubtask.setRemark("鎵�鏈夊彂閫佹柟寮忓潎鏈幏鍙栫粨鏋滐紝浠诲姟澶辫触");
                     //浜哄伐鍙戦�佽秴鏃�
-                    if(ObjectUtils.isNotEmpty(serviceSubtask.getCurrentPreachform()) && serviceSubtask.getCurrentPreachform().equals("1")){
+                    if (ObjectUtils.isNotEmpty(serviceSubtask.getCurrentPreachform()) && serviceSubtask.getCurrentPreachform().equals("1")) {
                         serviceSubtask.setSendstate(7L);
                         serviceSubtask.setRemark("浜哄伐鍙戦�佽秴鏃�");
                     }
@@ -1086,7 +1123,7 @@
             subtaskPreachform.setSendstate("5");
             subtaskPreachform.setId(id.get());
             //浜哄伐鍙戦�佽秴鏃�
-            if(ObjectUtils.isNotEmpty(serviceSubtask.getCurrentPreachform()) && serviceSubtask.getCurrentPreachform().equals("1")){
+            if (ObjectUtils.isNotEmpty(serviceSubtask.getCurrentPreachform()) && serviceSubtask.getCurrentPreachform().equals("1")) {
                 subtaskPreachform.setSendstate("7");
                 subtaskPreachform.setRemark("浜哄伐鍙戦�佽秴鏃�");
             }
@@ -1214,7 +1251,7 @@
                 if (failSendstate.equals("2")) serviceSubtaskPreachform1.setSendstate("9");
             }
             serviceSubtaskPreachform1.setRemark(remark);
-            if(ObjectUtils.isNotEmpty(preachform) && preachform.equals("1")){
+            if (ObjectUtils.isNotEmpty(preachform) && preachform.equals("1")) {
                 serviceSubtaskPreachform1.setSendstate("7");
                 serviceSubtaskPreachform1.setRemark("浜哄伐鍙戦�佽秴鏃�");
             }
@@ -1222,16 +1259,18 @@
 
             //濡傛灉褰撳墠鐨刾reachform宸茬粡鏄渶鍚庝竴涓簡锛岄偅鐩存帴灏唖erviceSubtask鐨剆endstate鐘舵�佹敼鎴�5灏辫浜�(鍏ㄥけ璐ヤ簡)
             if (serviceSubtaskPreachform1.getSort() == sspCount.size()) {
-                if(ObjectUtils.isNotEmpty(preachform) && preachform.equals("1")){
+                if (ObjectUtils.isNotEmpty(preachform) && preachform.equals("1")) {
                     serviceSubtask.setCurrentPreachform(preachform);
                     serviceSubtask.setSendstate(7L);
                     serviceSubtask.setRemark("浜哄伐鍙戦�佽秴鏃�");
                     serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
                     return true;
-                }else {
+                } else {
                     if (failSendstate.equals("4") || failSendstate.equals("5")) {
                         serviceSubtask.setCurrentPreachform(preachform);
                         serviceSubtask.setSendstate(5L);
+                        log.error("setSuccessPreachForm鏂规硶锛屽綋鍓嶇殑preachform宸茬粡鏄渶鍚庝竴涓簡锛屽叏閮ㄦ墽琛屽け璐�");
+                        serviceSubtask.setRemark("鎵�鏈夊彂閫佹柟寮忓潎鏈幏鍙栫粨鏋滐紝浠诲姟澶辫触");
                         //serviceSubtask.setRemark("setSuccessPreachForm鏂规硶锛屽綋鍓嶇殑preachform宸茬粡鏄渶鍚庝竴涓簡锛屽叏閮ㄦ墽琛屽け璐�");
                         serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
                         return true;
@@ -1246,10 +1285,10 @@
         //灏嗕笅涓�娆$殑闅忚鏃堕棿涓庡綋鍓嶆墽琛屾柟寮忚褰曚竴涓�
         serviceSubtask.setVisitTime(getNextVisitTime(serviceSubtask.getId(), serviceSubtask.getTaskid(), serviceSubtask.getVisitTime()));
         serviceSubtask.setCurrentPreachform(preachform);
-        if(ObjectUtils.isNotEmpty(preachform) && preachform.equals("1")){
+        if (ObjectUtils.isNotEmpty(preachform) && preachform.equals("1")) {
             serviceSubtask.setSendstate(7L);
             serviceSubtask.setRemark("浜哄伐鍙戦�佽秴鏃�");
-        }else {
+        } else {
             serviceSubtask.setSendstate(3L);
         }
         if (serviceSubtask.getType().equals("3") || serviceSubtask.getType().equals("4")) {

--
Gitblit v1.9.3