Browse Source

代码提交 修改设备最后一次上报时间

jingyuanchao 1 năm trước cách đây
mục cha
commit
9761fe9089

+ 15 - 14
soc-modules/soc-modules-host/src/main/java/com/xunmei/host/iot/service/impl/IotDeviceStatusServiceImpl.java

@@ -41,6 +41,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.time.LocalDateTime;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -195,20 +196,15 @@ public class IotDeviceStatusServiceImpl extends ServiceImpl<IotDeviceStatusMappe
             iotAlarmData.setOrgId(sysOrg.getId());
             iotAlarmData.setDeviceId(String.valueOf(deviceInfo.getId()));
             final String sourceType = SensorType.getCodeByProduct(dataReq.getProductType());
-            try {
-                fieldList.stream()
-                        .filter(r -> ObjectUtil.equal(String.valueOf(r.getSourceType()), sourceType))
-                        .filter(r -> ObjectUtil.equal(r.getPropertyName(), dataReq.getProductProperty()))
-                        .findAny()
-                        .ifPresent(r -> {
-                            iotAlarmData.setSourceType(r.getSourceType());
-                            iotAlarmData.setSourceTypeDes(r.getSourceTypeDes());
-                            iotAlarmData.setFieldCode(r.getSysFieldCode());
-                        });
-            } catch (Exception e) {
-
-                e.printStackTrace();
-            }
+            fieldList.stream()
+                    .filter(r -> ObjectUtil.equal(String.valueOf(r.getSourceType()), sourceType))
+                    .filter(r -> ObjectUtil.equal(r.getPropertyName(), dataReq.getProductProperty()))
+                    .findAny()
+                    .ifPresent(r -> {
+                        iotAlarmData.setSourceType(r.getSourceType());
+                        iotAlarmData.setSourceTypeDes(r.getSourceTypeDes());
+                        iotAlarmData.setFieldCode(r.getSysFieldCode());
+                    });
             iotAlarmDataService.saveOrUpdate(iotAlarmData);
             // 发生报警
             if(ObjectUtil.isNotNull(dataReq.getStartTime())&&ObjectUtil.isNull(dataReq.getEndTime())){
@@ -254,6 +250,7 @@ public class IotDeviceStatusServiceImpl extends ServiceImpl<IotDeviceStatusMappe
         List<IotAlarmSystemField> fieldList = alarmSystemFieldMapper.selectList(new LambdaQueryWrapper<>());
         final JSONArray array = dealStatusData(data, fieldList, deviceType);
         IotDeviceStatus status = getByDeviceId(code.getId());
+        final LocalDateTime now = LocalDateTime.now();
         if (status == null) {
             status = new IotDeviceStatus();
             BeanUtils.copyProperties(code, status, "id");
@@ -262,9 +259,13 @@ public class IotDeviceStatusServiceImpl extends ServiceImpl<IotDeviceStatusMappe
             status.setUniqueCode();
             status.setDeviceType(deviceType);
             status.setInfo(JSON.toJSONString(array));
+            status.setStateUpdateTime(now);
+            status.setStateStartTime(now);
             save(status);
         } else {
             status.setInfo(JSON.toJSONString(array));
+            status.setStateStartTime(now);
+            status.setStateUpdateTime(now);
             updateById(status);
         }
         deviceStatusLogService.saveLog(status);

+ 3 - 3
soc-modules/soc-modules-mediator/src/main/java/com/xunmei/mediator/websocket/utils/WebSocketUtils.java

@@ -136,7 +136,7 @@ public class WebSocketUtils {
         }
         final Map<String, WebSocketSession> USER_SESSION_MAP = WebSocketSessionHolder.map();
         if (ObjectUtil.isEmpty(USER_SESSION_MAP)) {
-            LogUtils.WEBSOCKET_MSG.error("消息广播失败,没有Iot服务在线,消息内容:{}", message);
+            LogUtils.WEBSOCKET_MSG.error("消息广播失败,没有主机服务在线,消息内容:{}", message);
             return;
         }
         try {
@@ -154,11 +154,11 @@ public class WebSocketUtils {
         WebSocketSession webSocketSession = USER_SESSION_MAP.get(token);
         try {
             if (null == webSocketSession) {
-                LogUtils.WEBSOCKET_MSG.error("消息发送失败,未找到对应在线的iot服务,iot服务:{},消息内容:{}", token, message);
+                LogUtils.WEBSOCKET_MSG.error("消息发送失败,未找到对应在线的主机服务,主机服务:{},消息内容:{}", token, message);
                 return false;
             }
             if (ObjectUtil.isEmpty(message)) {
-                LogUtils.WEBSOCKET_MSG.error("消息发送失败,消息内容为空,iot服务:{}", token);
+                LogUtils.WEBSOCKET_MSG.error("消息发送失败,消息内容为空,主机服务:{}", token);
                 return false;
             }
             webSocketSession.sendMessage(new TextMessage(message));