From b24f66e36a71946c5a9ece70a910f9ffbfdb8154 Mon Sep 17 00:00:00 2001 From: bgy Date: Fri, 30 Oct 2026 16:10:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=9C=A8=E7=A6=BB=E7=BA=BF?= =?UTF-8?q?=E5=8F=91=E9=80=81=E9=82=AE=E4=BB=B6=E9=85=8D=E7=BD=AE=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/topsail/scheduletask/pojo/FocusDeviceOnline.java | 4 ++++ .../java/com/topsail/scheduletask/task/CheckRabbitMqScheduleTask.java | 4 +++- .../com/topsail/scheduletask/mapper/TopsailTransmitLogMapper.xml | 3 ++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/topsail/scheduletask/pojo/FocusDeviceOnline.java b/src/main/java/com/topsail/scheduletask/pojo/FocusDeviceOnline.java index 82e2a2a..44c5641 100644 --- a/src/main/java/com/topsail/scheduletask/pojo/FocusDeviceOnline.java +++ b/src/main/java/com/topsail/scheduletask/pojo/FocusDeviceOnline.java @@ -40,5 +40,9 @@ public class FocusDeviceOnline { * 告警接收的邮箱 */ private String sendMails; + /** + * 离线数阈值,超过该数量才发送邮件提醒 + */ + private Integer offlineCount; } diff --git a/src/main/java/com/topsail/scheduletask/task/CheckRabbitMqScheduleTask.java b/src/main/java/com/topsail/scheduletask/task/CheckRabbitMqScheduleTask.java index 5328976..d15e49e 100644 --- a/src/main/java/com/topsail/scheduletask/task/CheckRabbitMqScheduleTask.java +++ b/src/main/java/com/topsail/scheduletask/task/CheckRabbitMqScheduleTask.java @@ -126,7 +126,9 @@ public class CheckRabbitMqScheduleTask { } //2.查询设备离线数量 List offlineDevices = topsailTransmitLogDao.getOfflineDevice(imeiList, focusDeviceOnline.getProjectId()); - if (offlineDevices != null && offlineDevices.size() > 2) { + //离线数阈值,超过该数量才发送邮件提醒,未配置时默认为2 + int offlineCountThreshold = focusDeviceOnline.getOfflineCount() != null ? focusDeviceOnline.getOfflineCount() : 2; + if (offlineDevices != null && offlineDevices.size() > offlineCountThreshold) { //将离线的设备号码转成json字符串 Map offlineDeviceMap = offlineDevices.stream() .collect(Collectors.toMap(DeviceOnlineInfo::getImei, DeviceOnlineInfo::getOfflineTime)); diff --git a/src/main/resources/com/topsail/scheduletask/mapper/TopsailTransmitLogMapper.xml b/src/main/resources/com/topsail/scheduletask/mapper/TopsailTransmitLogMapper.xml index aa01503..3f3a1d7 100644 --- a/src/main/resources/com/topsail/scheduletask/mapper/TopsailTransmitLogMapper.xml +++ b/src/main/resources/com/topsail/scheduletask/mapper/TopsailTransmitLogMapper.xml @@ -62,7 +62,8 @@ project_id projectId, focus_imeis focusImeis, is_focus isFocus, - send_mails sendMails + send_mails sendMails, + offline_count offlineCount FROM focus_device_online WHERE is_focus = #{isFocus}