From 45d90d1e7ba86286e998d1ac4d2cba8e98cd059b Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期一, 12 一月 2026 20:52:30 +0800
Subject: [PATCH] feat: 优化内存

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java |   24 +++++++++++++++++-------
 1 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java
index 42962b5..77bca76 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java
@@ -88,9 +88,10 @@
             // 璁$畻鏃ユ湡鑼冨洿
             Date startDate = DateUtils.addDays(new Date(), -daysAgo);
             String startDateStr = DateUtils.parseDateToStr("yyyy-MM-dd", startDate);
+            String endDateStr = DateUtils.parseDateToStr("yyyy-MM-dd", new Date());
             
             // 浠嶴QL Server鏌ヨ杞繍鍗曟暟鎹�
-            List<Map<String, Object>> transferOrders = legacyTransferSyncMapper.selectTransferOrders(startDateStr);
+            List<Map<String, Object>> transferOrders = legacyTransferSyncMapper.selectTransferOrders(startDateStr, endDateStr);
             
             if (transferOrders == null || transferOrders.isEmpty()) {
                 log.info("鏈煡璇㈠埌{}澶╁墠鐨勮浆杩愬崟鏁版嵁", daysAgo);
@@ -504,11 +505,20 @@
                 }
             }
             createTaskVo.setPatient(patientInfo);
-            //1000鍏噷锛屾彁鍙栨暟瀛�
+            //1000鍏噷锛屾彁鍙栨暟瀛楋紙鏀寔灏忔暟锛�
             String ServiceOrdTraDistance=MapValueUtils.getStringValue(order, "ServiceOrdTraDistance");
             if(ServiceOrdTraDistance!=null){
-                ServiceOrdTraDistance=ServiceOrdTraDistance.replaceAll("[^0-9]", "");
-                createTaskVo.setDistance(new BigDecimal(ServiceOrdTraDistance));
+                // 淇濈暀鏁板瓧鍜屽皬鏁扮偣锛岀Щ闄ゅ叾浠栧瓧绗�
+                ServiceOrdTraDistance=ServiceOrdTraDistance.replaceAll("[^0-9.]", "");
+                // 澶勭悊澶氫釜灏忔暟鐐圭殑鎯呭喌锛屽彧淇濈暀绗竴涓�
+                int firstDotIndex = ServiceOrdTraDistance.indexOf('.');
+                if (firstDotIndex != -1) {
+                    ServiceOrdTraDistance = ServiceOrdTraDistance.substring(0, firstDotIndex + 1) 
+                        + ServiceOrdTraDistance.substring(firstDotIndex + 1).replace(".", "");
+                }
+                if (!ServiceOrdTraDistance.isEmpty() && !ServiceOrdTraDistance.equals(".")) {
+                    createTaskVo.setTransferDistance(new BigDecimal(ServiceOrdTraDistance));
+                }
             }
 
             
@@ -619,7 +629,7 @@
                                 List<Long> vehicleIds = new ArrayList<>();
                                 vehicleIds.add(vehicleInfo.getVehicleId());
                                 createTaskVo.setVehicleIds(vehicleIds);
-                                log.debug("杞繍浠诲姟,ServiceOrdID:{} 閫氳繃杞︾墝鍙锋壘鍒拌溅杈嗕俊鎭�: vehicle_id={}, vehicle_no={}",serviceOrdID, vehicleInfo.getVehicleId(), vehicleInfo.getVehicleNo());
+//                                log.debug("杞繍浠诲姟,ServiceOrdID:{} 閫氳繃杞︾墝鍙锋壘鍒拌溅杈嗕俊鎭�: vehicle_id={}, vehicle_no={}",serviceOrdID, vehicleInfo.getVehicleId(), vehicleInfo.getVehicleNo());
                             } else {
                                 log.warn("杞繍浠诲姟,ServiceOrdID:{} 鏈壘鍒板搴旂殑杞﹁締淇℃伅: car_id={}, vehicle_no={}",serviceOrdID, carID, carLicense);
                             }
@@ -632,7 +642,7 @@
                             List<Long> vehicleIds = new ArrayList<>();
                             vehicleIds.add(vehicleInfo.getVehicleId());
                             createTaskVo.setVehicleIds(vehicleIds);
-                            log.debug("閫氳繃杞︾墝鍙锋壘鍒拌溅杈嗕俊鎭�: vehicle_id={}, vehicle_no={}", vehicleInfo.getVehicleId(), vehicleInfo.getVehicleNo());
+//                            log.debug("閫氳繃杞︾墝鍙锋壘鍒拌溅杈嗕俊鎭�: vehicle_id={}, vehicle_no={}", vehicleInfo.getVehicleId(), vehicleInfo.getVehicleNo());
                         } else {
                             log.warn("鏈壘鍒板搴旂殑杞﹁締淇℃伅: vehicle_no={}", carLicense);
                         }
@@ -829,7 +839,7 @@
                 return String.join(",", diseaseIds);
             }
             
-            log.info("鏌ヨ鍒扮梾鎯呬俊鎭紝鏈嶅姟鍗旾D: {}, 鐥呮儏鏁伴噺: {}", serviceOrdID, diseaseIds != null ? diseaseIds.size() : 0);
+//            log.info("鏌ヨ鍒扮梾鎯呬俊鎭紝鏈嶅姟鍗旾D: {}, 鐥呮儏鏁伴噺: {}", serviceOrdID, diseaseIds != null ? diseaseIds.size() : 0);
             return null;
         } catch (Exception e) {
             log.error("鏌ヨ鐥呮儏淇℃伅寮傚父锛屾湇鍔″崟ID: {}", serviceOrdID, e);

--
Gitblit v1.9.1