From 847a7773ef1a8ad418c6934d35b5f205a97c04d0 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期六, 06 十二月 2025 17:03:24 +0800
Subject: [PATCH] fix:在任务状态更新时,需要更新日志到旧系统
---
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/VehicleGpsSegmentMileageServiceImpl.java | 40 +++++++++++++++++++++++++++++++---------
1 files changed, 31 insertions(+), 9 deletions(-)
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/VehicleGpsSegmentMileageServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/VehicleGpsSegmentMileageServiceImpl.java
index 08beb40..fbeede2 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/VehicleGpsSegmentMileageServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/VehicleGpsSegmentMileageServiceImpl.java
@@ -96,33 +96,55 @@
@Override
public int batchCalculateSegmentMileage(Date startTime, Date endTime) {
try {
- // 鏌ヨ鎵�鏈夋椿璺冭溅杈�
- List<Long> vehicleIds = vehicleGpsMapper.selectActiveVehicleIds();
+ logger.info("寮�濮嬫壒閲忚绠桮PS鍒嗘閲岀▼ - 鏃堕棿鑼冨洿: {} 鍒� {}", startTime, endTime);
+
+ // 鏌ヨ鍦ㄦ寚瀹氭椂闂磋寖鍥村唴鏈塆PS鏁版嵁鐨勬墍鏈夎溅杈�
+ List<Long> vehicleIds = vehicleGpsMapper.selectActiveVehicleIds(startTime);
if (vehicleIds == null || vehicleIds.isEmpty()) {
logger.info("娌℃湁鎵惧埌娲昏穬杞﹁締");
return 0;
}
+ logger.info("鎵惧埌 {} 杈嗘椿璺冭溅杈嗭紝寮�濮嬮�愯締璁$畻...", vehicleIds.size());
+
int successCount = 0;
- for (Long vehicleId : vehicleIds) {
+ int failedCount = 0;
+
+ // 閫愯締璁$畻锛屽寘鍚敊璇鐞嗗拰閲嶈瘯鏈哄埗
+ for (int i = 0; i < vehicleIds.size(); i++) {
+ Long vehicleId = vehicleIds.get(i);
try {
+ logger.info("姝e湪澶勭悊杞﹁締 {} ({}/{})", vehicleId, i + 1, vehicleIds.size());
+
int segmentCount = calculateVehicleSegmentMileage(vehicleId, startTime, endTime);
if (segmentCount > 0) {
successCount++;
+ logger.info("杞﹁締 {} 璁$畻鎴愬姛锛岀敓鎴� {} 涓垎娈佃褰�", vehicleId, segmentCount);
+ } else {
+ logger.debug("杞﹁締 {} 鏃犳湁鏂扮殑GPS鍒嗘鏁版嵁", vehicleId);
}
} catch (Exception e) {
- logger.error("璁$畻杞﹁締 {} 鐨勫垎娈甸噷绋嬪け璐�", vehicleId, e);
+ failedCount++;
+ logger.error("璁$畻杞﹁締 {} 鐨勫垎娈甸噷绋嬪け璐� ({}/{})", vehicleId, i + 1, vehicleIds.size(), e);
+
+ // 涓嶄腑鏂暣涓壒澶勭悊锛岀户缁鐞嗕笅涓�杈嗚溅
+ }
+
+ // 姣忓鐞�10杈嗚溅杈撳嚭涓�娆¤繘搴�
+ if ((i + 1) % 10 == 0) {
+ logger.info("鎵归噺璁$畻杩涘害: {}/{}, 鎴愬姛: {}, 澶辫触: {}",
+ i + 1, vehicleIds.size(), successCount, failedCount);
}
}
- logger.info("鎵归噺鍒嗘閲岀▼璁$畻瀹屾垚 - 鏃堕棿鑼冨洿: {} 鍒� {}, 鎬昏溅杈嗘暟: {}, 鎴愬姛: {}",
- startTime, endTime, vehicleIds.size(), successCount);
+ logger.info("鎵归噺鍒嗘閲岀▼璁$畻瀹屾垚 - 鏃堕棿鑼冨洿: {} 鍒� {}, 鎬昏溅杈嗘暟: {}, 鎴愬姛: {}, 澶辫触: {}",
+ startTime, endTime, vehicleIds.size(), successCount, failedCount);
return successCount;
} catch (Exception e) {
- logger.error("鎵归噺璁$畻鍒嗘閲岀▼澶辫触", e);
- throw new RuntimeException("鎵归噺璁$畻澶辫触: " + e.getMessage());
+ logger.error("鎵归噺璁$畻鍒嗘閲岀▼澶辫触 - 鏃堕棿鑼冨洿: {} 鍒� {}", startTime, endTime, e);
+ throw new RuntimeException("鎵归噺璁$畻澶辫触: " + e.getMessage(), e);
}
}
@@ -138,7 +160,7 @@
logger.info("寮�濮嬭ˉ鍋胯绠� - 鍥炴函澶╂暟: {}, 鏃堕棿鑼冨洿: {} 鍒� {}", lookbackDays, startTime, endTime);
// 鏌ヨ鎵�鏈夋椿璺冭溅杈�
- List<Long> vehicleIds = vehicleGpsMapper.selectActiveVehicleIds();
+ List<Long> vehicleIds = vehicleGpsMapper.selectActiveVehicleIds(startTime);
if (vehicleIds == null || vehicleIds.isEmpty()) {
logger.info("娌℃湁鎵惧埌娲昏穬杞﹁締");
--
Gitblit v1.9.1