From 4e6ba796be67ccbefb8e0f8f61bbfa12d8e0df6d Mon Sep 17 00:00:00 2001
From: huangzhen <867217663@qq.com>
Date: 星期四, 04 一月 2024 09:53:51 +0800
Subject: [PATCH] 新增功能

---
 src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/DataReceiveServiceImpl.java |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/DataReceiveServiceImpl.java b/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/DataReceiveServiceImpl.java
index 6890cd6..5ed0334 100644
--- a/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/DataReceiveServiceImpl.java
+++ b/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/DataReceiveServiceImpl.java
@@ -115,6 +115,10 @@
 
     private static final String warnContentFormat = "【气体监测预警提示】{0} {1}气体浓度连续超标系统判断为{2},请相关负责人及时检查处置。";
 
+    private static final String deviceExcLogFormat = "【设备预警提示】{0} 硬件设备离线。";
+
+    private static final DateTimeFormatter deviceExcLogFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss");
+
     private static final DateTimeFormatter warnLogFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss");
 
 
@@ -180,7 +184,7 @@
             throw new DataReceiveException(this.getClass(), ForeignResultCode.PARAM_ERROR_NULL.getCode(),"通量数据状态不能为空");
         Boolean push = false;
         List<String> descs = new ArrayList<>();
-        if (reqDTO.getHardwareState().size() > 1){
+        if (!(reqDTO.getHardwareState().size() == 1 && reqDTO.getHardwareState().get(0) == 0)){
             push = true;
             for (int i = 0; i < reqDTO.getHardwareState().size(); i++) {
                 descs.add(HardwareStateEnum.getValue(reqDTO.getHardwareState().get(i)));
@@ -212,7 +216,10 @@
             String execInfo = JSON.toJSONString(descs);
             logger.info("【警告】设备异常,异常原因: "+ execInfo);
             DeviceExceptionLog log = new DeviceExceptionLog();
-            log.setTime(LocalDateTime.now());
+            LocalDateTime now = LocalDateTime.now();
+            String content  = MessageFormat.format(deviceExcLogFormat,deviceExcLogFormatter.format(now));
+            log.setContent(content);
+            log.setTime(now);
             log.setExecDesc(execInfo);
             DeviceExceptionLog save =  deviceExceptionLogService.save(log);
             if (save == null)

--
Gitblit v1.9.2