瀏覽代碼

修复设备日志时间戳错误问题

zhou-hao 4 年之前
父節點
當前提交
105679893b

+ 13 - 1
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/entity/DeviceOperationLogEntity.java

@@ -2,6 +2,8 @@ package org.jetlinks.community.device.entity;
 
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.annotation.JSONField;
 import com.alibaba.fastjson.annotation.JSONField;
+import io.swagger.v3.oas.annotations.Hidden;
+import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.AllArgsConstructor;
 import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Builder;
 import lombok.Data;
 import lombok.Data;
@@ -21,20 +23,30 @@ import java.util.Map;
 @Builder
 @Builder
 public class DeviceOperationLogEntity {
 public class DeviceOperationLogEntity {
 
 
+    @Schema(description = "日志ID")
     private String id;
     private String id;
 
 
+    @Schema(description = "设备ID")
     private String deviceId;
     private String deviceId;
 
 
+    @Schema(description = "产品ID")
     private String productId;
     private String productId;
 
 
+    @Schema(description = "日志类型")
     private DeviceLogType type;
     private DeviceLogType type;
 
 
-    private Long createTime;
+    @Schema(description = "创建时间")
+    private long createTime;
 
 
+    @Schema(description = "日志内容")
     private Object content;
     private Object content;
 
 
+    @Hidden
     private String orgId;
     private String orgId;
 
 
+    @Schema(description = "数据时间")
+    private long timestamp;
+
     public Map<String, Object> toSimpleMap() {
     public Map<String, Object> toSimpleMap() {
         Map<String, Object> result = (Map) JSON.toJSON(this);
         Map<String, Object> result = (Map) JSON.toJSON(this);
         result.put("type", type.getValue());
         result.put("type", type.getValue());

+ 2 - 1
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/service/data/AbstractDeviceDataStoragePolicy.java

@@ -125,7 +125,8 @@ public abstract class AbstractDeviceDataStoragePolicy implements DeviceDataStora
         DeviceOperationLogEntity operationLog = new DeviceOperationLogEntity();
         DeviceOperationLogEntity operationLog = new DeviceOperationLogEntity();
         operationLog.setId(IDGenerator.SNOW_FLAKE_STRING.generate());
         operationLog.setId(IDGenerator.SNOW_FLAKE_STRING.generate());
         operationLog.setDeviceId(message.getDeviceId());
         operationLog.setDeviceId(message.getDeviceId());
-        operationLog.setCreateTime(message.getTimestamp());
+        operationLog.setTimestamp(message.getTimestamp());
+        operationLog.setCreateTime(System.currentTimeMillis());
         operationLog.setProductId(productId);
         operationLog.setProductId(productId);
         operationLog.setType(DeviceLogType.of(message));
         operationLog.setType(DeviceLogType.of(message));
 
 

+ 7 - 0
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/timeseries/DeviceLogTimeSeriesMetadata.java

@@ -76,6 +76,13 @@ class DeviceLogTimeSeriesMetadata implements TimeSeriesMetadata {
             property.setName("创建事件");
             property.setName("创建事件");
             metadata.add(property);
             metadata.add(property);
         }
         }
+        {
+            SimplePropertyMetadata property = new SimplePropertyMetadata();
+            property.setId("timestamp");
+            property.setValueType(DateTimeType.GLOBAL);
+            property.setName("数据时间");
+            metadata.add(property);
+        }
     }
     }
 
 
     @Override
     @Override