From 6b29bd596f8b48485d3506bfba4a1e0ea6c7df99 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期二, 14 四月 2026 22:45:40 +0800
Subject: [PATCH] feat: 优化统计及告急处理
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/VehicleAbnormalAlertTask.java | 35 ++++++++++++++++++-----------------
1 files changed, 18 insertions(+), 17 deletions(-)
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/VehicleAbnormalAlertTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/VehicleAbnormalAlertTask.java
index 8576d4d..ed5f3f6 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/VehicleAbnormalAlertTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/VehicleAbnormalAlertTask.java
@@ -81,7 +81,7 @@
// 鏌ヨ鎵�鏈夋椿璺冭溅杈�
List<VehicleInfo> vehicles = vehicleInfoMapper.selectVehicleInfoList(new VehicleInfo());
if (vehicles == null || vehicles.isEmpty()) {
- log.debug("娌℃湁鎵惧埌闇�瑕佺洃鎺х殑杞﹁締");
+ log.info("娌℃湁鎵惧埌闇�瑕佺洃鎺х殑杞﹁締");
return;
}
@@ -118,14 +118,14 @@
// 鑾峰彇璇ヨ溅杈嗙殑閰嶇疆锛堜紭鍏堢骇锛氳溅杈� > 閮ㄩ棬 > 鍏ㄥ眬锛�
AlertConfig config = getVehicleAlertConfig(vehicleId, deptId, globalConfig);
if (config == null) {
- log.debug("杞﹁締 {} 鏈壘鍒版湁鏁堥厤缃紝璺宠繃鐩戞帶", vehicleNo);
+// log.info("杞﹁締 {} 鏈壘鍒版湁鏁堥厤缃紝璺宠繃鐩戞帶", vehicleNo);
return false;
}
// 1. 鏌ヨ杞﹁締鍦ㄦ椂闂寸獥鍙e唴鐨勬�昏繍琛岄噷绋�
BigDecimal totalMileage = calculateVehicleMileage(vehicleId, startTime, endTime);
if (totalMileage == null || totalMileage.compareTo(BigDecimal.ZERO) == 0) {
- log.debug("杞﹁締 {} 鍦ㄧ洃鎺х獥鍙e唴鏃犺繍琛岄噷绋�", vehicleNo);
+// log.info("杞﹁締 {} 鍦ㄧ洃鎺х獥鍙e唴鏃犺繍琛岄噷绋�", vehicleNo);
return false;
}
@@ -138,23 +138,23 @@
// 3. 璁$畻闈炰换鍔$姸鎬佷笅鐨勮繍琛岄噷绋�
BigDecimal nonTaskMileage = totalMileage.subtract(taskMileage);
if (nonTaskMileage.compareTo(BigDecimal.ZERO) <= 0) {
- log.debug("杞﹁締 {} 鍦ㄧ洃鎺х獥鍙e唴鏃犻潪浠诲姟閲岀▼", vehicleNo);
+// log.info("杞﹁締 {} 鍦ㄧ洃鎺х獥鍙e唴鏃犻潪浠诲姟閲岀▼", vehicleNo);
return false;
}
- log.debug("杞﹁締 {} 鎬婚噷绋�: {}km, 浠诲姟閲岀▼: {}km, 闈炰换鍔¢噷绋�: {}km",
- vehicleNo, totalMileage, taskMileage, nonTaskMileage);
+// log.info("杞﹁締 {} 鎬婚噷绋�: {}km, 浠诲姟閲岀▼: {}km, 闈炰换鍔¢噷绋�: {}km",
+// vehicleNo, totalMileage, taskMileage, nonTaskMileage);
// 4. 妫�鏌ラ潪浠诲姟閲岀▼鏄惁瓒呰繃鍏噷鏁伴槇鍊�
if (nonTaskMileage.compareTo(config.mileageThreshold) <= 0) {
- log.debug("杞﹁締 {} 闈炰换鍔¤繍琛岄噷绋� {}km 鏈秴杩囬槇鍊� {}km",
- vehicleNo, nonTaskMileage, config.mileageThreshold);
+// log.info("杞﹁締 {} 闈炰换鍔¤繍琛岄噷绋� {}km 鏈秴杩囬槇鍊� {}km",
+// vehicleNo, nonTaskMileage, config.mileageThreshold);
return false;
}
// 5. 妫�鏌ュ憡璀﹂鐜囬檺鍒�
if (!checkAlertFrequency(vehicleId, config)) {
- log.debug("杞﹁締 {} 宸茶揪鍒板憡璀﹂鐜囬檺鍒�", vehicleNo);
+// log.info("杞﹁締 {} 宸茶揪鍒板憡璀﹂鐜囬檺鍒�", vehicleNo);
return false;
}
@@ -338,13 +338,14 @@
vehicleId, vehicleNo, mileage, startTime, endTime, deptId, deptName);
if (!created) {
+// log.info("杞﹁締 {} 浠婃棩宸插瓨鍦ㄧ浉鍚岀被鍨嬬殑鍛婅锛屼笉鍐嶅垱寤�", vehicleNo);
return false;
}
- log.info("杞﹁締 {} 浜х敓寮傚父鍛婅锛氭棤浠诲姟杩愯 {}km锛屾椂闂� {} 鑷� {}",
- vehicleNo, mileage,
- DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, startTime),
- DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, endTime));
+// log.info("杞﹁締 {} 浜х敓寮傚父鍛婅锛氭棤浠诲姟杩愯 {}km锛屾椂闂� {} 鑷� {}",
+// vehicleNo, mileage,
+// DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, startTime),
+// DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, endTime));
// 鍙戦�侀�氱煡
sendAlertNotification(vehicle, mileage, deptId, config);
@@ -424,8 +425,8 @@
userService.selectUserByUserName(dept.getLeader());
if (leaderUser != null) {
userIds.add(leaderUser.getUserId());
- log.info("浣跨敤閮ㄩ棬 {} 璐熻矗浜�: {} (ID: {})",
- dept.getDeptName(), dept.getLeader(), leaderUser.getUserId());
+// log.info("浣跨敤閮ㄩ棬 {} 璐熻矗浜�: {} (ID: {})",
+// dept.getDeptName(), dept.getLeader(), leaderUser.getUserId());
} else {
log.warn("閮ㄩ棬 {} 璐熻矗浜� {} 鏈壘鍒板搴旂敤鎴�",
dept.getDeptName(), dept.getLeader());
@@ -524,8 +525,8 @@
// 閫氱煡鐢ㄦ埛鍒楄〃
config.notifyUsers = configService.selectConfigByKey("vehicle.alert.notify.users");
- log.debug("鍛婅閰嶇疆: 闃堝��={}km, 姣忔棩闄愬埗={}娆�, 闂撮殧={}鍒嗛挓, 鏃堕棿绐楀彛={}鍒嗛挓",
- config.mileageThreshold, config.dailyLimit, config.alertInterval, config.timeWindow);
+// log.debug("鍛婅閰嶇疆: 闃堝��={}km, 姣忔棩闄愬埗={}娆�, 闂撮殧={}鍒嗛挓, 鏃堕棿绐楀彛={}鍒嗛挓",
+// config.mileageThreshold, config.dailyLimit, config.alertInterval, config.timeWindow);
} catch (Exception e) {
log.error("鍔犺浇鍛婅閰嶇疆澶辫触锛屼娇鐢ㄩ粯璁ゅ��", e);
--
Gitblit v1.9.1