From 1ccb709f723a759597dcdc7239d8885cef84d3ce Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 04 十二月 2024 17:56:19 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java |  145 ++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 134 insertions(+), 11 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 32064d9..3d8dfb0 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
@@ -24,6 +24,7 @@
 import com.smartor.service.*;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
@@ -43,6 +44,7 @@
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.time.LocalTime;
 import java.time.ZoneId;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
@@ -69,6 +71,9 @@
 
     @Autowired
     private IServiceSubtaskService iServiceSubtaskService;
+
+    @Autowired
+    private IServicePatientTempService iServicePatientTempService;
 
     @Autowired
     private PlatformTransactionManager transactionManager;
@@ -117,6 +122,9 @@
 
     @Autowired
     ISvyTaskTemplateService svyTaskTemplateService;
+
+    @Autowired
+    IIvrTaskTemplateService iIvrTaskTemplateService;
 
     @Value("${hosp_info_url}")
     private String hospInfoUrl;
@@ -187,8 +195,13 @@
         //灏嗘偅鑰呬俊鎭�佸嚭闄€�侀棬璇婃暟鎹叏閮ㄩ噰闆�
         // 鑾峰彇褰撳墠鏃ユ湡鍜屾椂闂�
         LocalDateTime endTime = LocalDateTime.now();
+        endTime = endTime.with(LocalTime.MIN);
+//        String dateStr = "2024/11/30 00:00:00";
+//        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");
+//        LocalDateTime endTime = LocalDateTime.parse(dateStr, formatter);
         // 鑾峰彇鍓嶄竴澶╃殑鏃ユ湡鍜屾椂闂�
         LocalDateTime startTime = endTime.minusDays(1);
+        startTime = startTime.with(LocalTime.MIN);
         getInHospInfo("0", startTime, endTime);
         getInHospInfo("1", startTime, endTime);
 
@@ -224,8 +237,102 @@
         iPatMedInhospService.dealOutHospInfo();
     }
 
+//    /**
+//     * 澶勭悊鎮h�呬俊鎭紝杩涘叆瀛愪换鍔¤〃(寰俊灏忕▼搴�)
+//     */
+//    public void dealOutHospInfoXHC() {
+//        PatMedInhosp patMedInhosp = new PatMedInhosp();
+//        //鑾峰彇鏈鐞嗙殑鏁版嵁
+//        List<ServicePatientTemp> servicePatientTemps = iServicePatientTempService.selectServicePatientTempList(new ServicePatientTemp());
+//
+//        for (ServicePatientTemp servicePatientTemp : servicePatientTemps) {
+//            Long tid = null;
+//            if (servicePatientTemp.getType() != null && servicePatientTemp.getType() == 1) {
+//                IvrTaskTemplate ivrTaskTemplate = iIvrTaskTemplateService.selectIvrTaskTemplateByID(servicePatientTemp.getTempId());
+//                tid = ivrTaskTemplate.getTaskid();
+//            } else if (servicePatientTemp.getType() != null && servicePatientTemp.getType() == 2) {
+//                SvyTaskTemplate svyTaskTemplate = svyTaskTemplateService.selectSvyTaskTemplateBySvyid(servicePatientTemp.getTempId());
+//                tid = svyTaskTemplate.getTaskid();
+//            }
+//
+//            ServiceTask serviceTask = serviceTaskMapper.selectServiceTaskByTaskid(tid);
+//            ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(serviceTask, ServiceSubtask.class);
+//            serviceSubtask.setTaskid(serviceTask.getTaskid());
+//            serviceSubtask.setTemplateid(servicePatientTemp.getTempId());
+//            serviceSubtask.setTemplatename(stt.getTemplateName());
+//            serviceSubtask.setPatid(patArchive.getId());
+//            serviceSubtask.setSendname(patArchive.getName());
+//            serviceSubtask.setSfzh(patArchive.getIdcardno());
+//            serviceSubtask.setPhone(patArchive.getTelcode());
+//            serviceSubtask.setSex(patArchive.getSex());
+//            serviceSubtask.setAge(patArchive.getAge());
+//            serviceSubtask.setSendstate(2L);
+//            serviceSubtask.setStarttime(patMedInhosp1.getStarttime());
+//            serviceSubtask.setEndtime(patMedInhosp1.getEndtime());
+//            serviceSubtask.setServiceType("2");
+//            serviceSubtask.setPreachform(serviceTask.getPreachform());
+//            serviceSubtask.setHospType("2");
+//            serviceSubtask.setCreateTime(new Date());
+//            serviceSubtask.setUpdateTime(new Date());
+//            serviceSubtask.setCreateBy(patMedInhosp1.getNurseName());
+//            serviceSubtask.setLeavehospitaldistrictcode(patMedInhosp1.getLeavehospitaldistrictcode());
+//            serviceSubtask.setLeavehospitaldistrictname(patMedInhosp1.getLeavehospitaldistrictname());
+//            //璁剧疆鍙戦�佹椂闂�
+//            Date newDate = addDays(patMedInhosp1.getEndtime(), stt.getSendDay());
+//            serviceSubtask.setLongSendTime(newDate);
+//            //鎮h�呭彂閫佹椂闂�
+//            if (StringUtils.isNotEmpty(patArchive.getNotrequiredFlag()) && patArchive.getNotrequiredFlag().equals("1")) {
+//                remark = patArchive.getNotrequiredreason();
+//                serviceSubtask.setRemark(remark);
+//                serviceSubtask.setResult("error");
+//                serviceSubtask.setFinishtime(new Date());
+//                //涓嶆墽琛�
+//                serviceSubtask.setSendstate(4L);
+//            }
+//
+//            //鍦ㄦ柊澧炰箣鍓嶏紝鍏堥�氳繃鎮h�匢D锛宻endstate=2鏌ヨ涓�涓嬶紝鍦ㄦ墍鏈夐暱鏈熶换鍔′腑锛屾槸涓嶆槸杩樻湁璇ユ偅鑰呭緟鎵ц鐨勪换鍔★紝鏈夌殑璇�,姣旇緝涔嬪墠鐨別ndtime鏄惁灏忎簬褰撳墠鐨別ndtaime,濡傛灉涔嬪墠鐨勫皬浜庣幇鍦ㄧ殑锛屽垯鐩存帴灏嗕箣鍓嶇殑鍋滄帀锛堝師鍥犲啀鍏ラ櫌锛�
+//            ServiceSubtaskVO subtask = new ServiceSubtaskVO();
+//            subtask.setPatid(patArchive.getId());
+//            subtask.setSendstate(2L);
+//            List<ServiceSubtask> selectServiceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(subtask);
+//            log.error("璇ユ偅鑰呭緟鎵ц鐨勪换鍔�:{}", selectServiceSubtaskList);
+//            if (CollectionUtils.isNotEmpty(selectServiceSubtaskList) && selectServiceSubtaskList.size() > 0) {
+//                for (ServiceSubtask serviceSubtask1 : selectServiceSubtaskList) {
+//                    if (Objects.isNull(serviceSubtask1.getLongSendTime())) {
+//                        //涓嶆槸闀挎湡浠诲姟锛屼笉澶勭悊
+//                        continue;
+//                    }
+//                    if (serviceSubtask1.getEndtime().before(serviceSubtask.getEndtime())) {
+//                        //濡傛灉褰撳墠寰幆鐨勫瓙浠诲姟鐨勫嚭闄㈡椂闂村湪鈥滃噯澶囨柊澧炵殑瀛愪换鍔♀�濈殑鍑洪櫌鏃堕棿涔嬪墠锛屽垯灏嗗惊鐜殑瀛愪换鍔″仠鎺�
+//                        serviceSubtask1.setSendstate(4L);
+//                        serviceSubtask1.setRemark("鎮h�呭啀鍏ラ櫌");
+//                        serviceSubtask1.setResult("error");
+//                        serviceSubtask1.setFinishtime(new Date());
+//                        serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1);
+//                    } else {
+//                        //鐩稿弽,鍒欏皢褰撴湁鐨勬暟鎹仠鎺�
+//                        serviceSubtask.setResult("error");
+//                        serviceSubtask.setFinishtime(new Date());
+//                        serviceSubtask.setSendstate(4L);
+//                        serviceSubtask.setRemark("鎮h�呭啀鍏ラ櫌");
+//                    }
+//                }
+//            }
+//
+//            serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
+//            //灏哻heck_flag鏀规垚1锛堝凡澶勭悊锛�
+//            PatMedInhosp patMedInhosp2 = new PatMedInhosp();
+//            patMedInhosp2.setInhospid(patMedInhosp1.getInhospid());
+//            patMedInhosp2.setCheckFlag("1");
+//            patMedInhospMapper.updatePatMedInhosp(patMedInhosp2);
+//        }
+//
+//        return 1;
+//    }
+
+
     /**
-     * 闀挎湡浠诲姟鎵ц
+     * 闀挎湡浠诲姟鎵ц锛堢數璇濓級
      */
     public void longTaskSend() {
         //鑾峰彇浠诲姟淇℃伅
@@ -302,12 +409,12 @@
 //                                serviceSubtask1.setTaskid(ivrTask.getTaskid());
 //                                List<ServiceSubtask> selectServiceSubtaskList1 = iServiceSubtaskService.selectServiceSubtaskList(serviceSubtask1);
 //                                for (ServiceSubtask serviceSubtask2 : selectServiceSubtaskList1) {
-                                    if (StringUtils.isEmpty(value)) {
-                                        value = "," + serviceSubtask.getId().toString() + ",";
-                                    } else {
-                                        if (!value.contains("," + serviceSubtask.getId().toString()))
-                                            value = value + "," + serviceSubtask.getId().toString() + ",";
-                                    }
+                                if (StringUtils.isEmpty(value)) {
+                                    value = "," + serviceSubtask.getId().toString() + ",";
+                                } else {
+                                    if (!value.contains("," + serviceSubtask.getId().toString()))
+                                        value = value + "," + serviceSubtask.getId().toString() + ",";
+                                }
 //                                }
                             } catch (Exception e) {
                                 String guid = UUID.randomUUID().toString();
@@ -355,6 +462,13 @@
                     //澶氬獟浣�
                 } else if (descByCode.equals("绾歌川")) {
                     //绾歌川
+                } else if (descByCode.equals("寰俊灏忕▼搴�")) {
+                    //寰俊灏忕▼搴�
+                    for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) {
+                        log.error("寰俊灏忕▼搴忔湡浠诲姟鍙戦��---------杩涙潵浜嗗悧锛焮}", serviceSubtask);
+
+
+                    }
                 } else if (descByCode.equals("鐭俊")) {
                     RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
                     String taskId = rsaPublicKeyExample.encryptedData(ivrTask1.getTaskid().toString(), pub_key);
@@ -507,8 +621,8 @@
         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S");
         Map<String, String> req = new HashMap<>();
         if (cry.equals("1")) {
-            req.put("startTime", startTime.format(formatter));
-            req.put("endTime", endTime.format(formatter));
+            req.put("cashStartDate", startTime.format(formatter));
+            req.put("cashEndDate", endTime.format(formatter));
             req.put("currStatus", "4");
         } else if (cry.equals("0")) {
             req.put("admissStartDate", startTime.format(formatter));
@@ -631,8 +745,8 @@
                     e.printStackTrace();
                 }
                 try {
-                    if (StringUtils.isNotEmpty(thiedInhospInfo.getOutDate()))
-                        patMedInhosp.setEndtime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(thiedInhospInfo.getOutDate()));
+                    if (StringUtils.isNotEmpty(thiedInhospInfo.getCashDate()))
+                        patMedInhosp.setEndtime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(thiedInhospInfo.getCashDate()));
                 } catch (ParseException e) {
                     e.printStackTrace();
                 }
@@ -667,8 +781,10 @@
                 log.error("鏄惁闇�瑕佹洿鏂帮細{}", patMedInhosps.size());
                 if (CollectionUtils.isNotEmpty(patMedInhosps)) {
                     patMedInhosp.setInhospid(patMedInhosps.get(0).getInhospid());
+                    log.error("------鎮h�呭嚭鍏ラ櫌淇敼淇℃伅锛歿}",patMedInhosp);
                     patMedInhospService.updatePatMedInhosp(patMedInhosp);
                 } else {
+                    log.error("----鎮h�呭嚭鍏ラ櫌鏂板淇℃伅锛歿}",patMedInhosp);
                     patMedInhospService.insertPatMedInhosp(patMedInhosp);
                 }
 
@@ -720,4 +836,11 @@
 //        String code = (String) jsonObject.get("code");
         return jsonObject.toString();
     }
+
+//    public static void main(String[] args) {
+//        LocalDateTime originalDateTime = LocalDateTime.now();
+//        LocalDateTime startOfDay = originalDateTime.with(LocalTime.MIN);
+//        System.out.println("Original DateTime: " + originalDateTime);
+//        System.out.println("Start of Day: " + startOfDay);
+//    }
 }

--
Gitblit v1.9.3