温度上下限告警处理
parent
213fcd1fb8
commit
10ce0cf94a
|
|
@ -93,6 +93,7 @@ public class AgriStatusTask {
|
||||||
agriStatusManager.asyncBatchPushMqtt(statusMap);
|
agriStatusManager.asyncBatchPushMqtt(statusMap);
|
||||||
// 4. 离线设备
|
// 4. 离线设备
|
||||||
List<SysAgriInfo> offlineDevices = findOfflineDevices(agriInfos, statusMap);
|
List<SysAgriInfo> offlineDevices = findOfflineDevices(agriInfos, statusMap);
|
||||||
|
if (offlineDevices.isEmpty()) return;
|
||||||
// 5. 保存消息中心
|
// 5. 保存消息中心
|
||||||
List<SysMessage> messages = agriService.saveMessage(offlineDevices);
|
List<SysMessage> messages = agriService.saveMessage(offlineDevices);
|
||||||
// 6. 发送告警消息
|
// 6. 发送告警消息
|
||||||
|
|
@ -120,9 +121,10 @@ public class AgriStatusTask {
|
||||||
offlineMap.put(map.getKey(), map.getValue());
|
offlineMap.put(map.getKey(), map.getValue());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (offlineMap.isEmpty()) return new ArrayList<>();
|
||||||
List<SysAgriInfo> offlineDevices = new ArrayList<>();
|
List<SysAgriInfo> offlineDevices = new ArrayList<>();
|
||||||
for (SysAgriInfo agriInfo : agriInfos) {
|
for (SysAgriInfo agriInfo : agriInfos) {
|
||||||
if (!offlineMap.containsKey(agriInfo.getImei())) {
|
if (offlineMap.containsKey(agriInfo.getImei())) {
|
||||||
agriInfo.setTitle("设备离线告警");
|
agriInfo.setTitle("设备离线告警");
|
||||||
agriInfo.setMsg("怀疑设备离线!请及时检查");
|
agriInfo.setMsg("怀疑设备离线!请及时检查");
|
||||||
offlineDevices.add(agriInfo);
|
offlineDevices.add(agriInfo);
|
||||||
|
|
|
||||||
|
|
@ -58,6 +58,8 @@ public class AgriTempTask {
|
||||||
}
|
}
|
||||||
Map<String, Object> latestDataMap = queryLatestDtuData(imeiList);
|
Map<String, Object> latestDataMap = queryLatestDtuData(imeiList);
|
||||||
List<SysAgriInfo> offlineDevices = findOfflineDevices(agriInfos, latestDataMap);
|
List<SysAgriInfo> offlineDevices = findOfflineDevices(agriInfos, latestDataMap);
|
||||||
|
if (CollectionUtils.isEmpty(offlineDevices)) return;
|
||||||
|
|
||||||
List<SysMessage> messages = agriService.saveMessage(offlineDevices);
|
List<SysMessage> messages = agriService.saveMessage(offlineDevices);
|
||||||
// 推送离线告警
|
// 推送离线告警
|
||||||
frontendControlHandler.sendAlarmMessage(messages);
|
frontendControlHandler.sendAlarmMessage(messages);
|
||||||
|
|
@ -107,6 +109,9 @@ public class AgriTempTask {
|
||||||
// 查找离线设备
|
// 查找离线设备
|
||||||
private List<SysAgriInfo> findOfflineDevices(List<SysAgriInfo> agriInfos,
|
private List<SysAgriInfo> findOfflineDevices(List<SysAgriInfo> agriInfos,
|
||||||
Map<String, Object> latestDataMap) {
|
Map<String, Object> latestDataMap) {
|
||||||
|
if (CollectionUtils.isEmpty(agriInfos)) {
|
||||||
|
return agriInfos;
|
||||||
|
}
|
||||||
List<SysAgriInfo> offlineList = new ArrayList<>();
|
List<SysAgriInfo> offlineList = new ArrayList<>();
|
||||||
for (SysAgriInfo agriInfo : agriInfos) {
|
for (SysAgriInfo agriInfo : agriInfos) {
|
||||||
if (!latestDataMap.containsKey(agriInfo.getImei())) {
|
if (!latestDataMap.containsKey(agriInfo.getImei())) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue