TRX vor 1 Jahr
Ursprung
Commit
3f251d1f5f

+ 70 - 0
OneCardIotClient/src/main/java/com/zhongshu/iot/client/model/device/IotDeviceDataModel.java

@@ -0,0 +1,70 @@
+package com.zhongshu.iot.client.model.device;
+
+import com.github.microservice.busInfoModel.device.DeviceInfoSimpleModel;
+import com.github.microservice.models.baseParam.SuperModel;
+import com.github.microservice.types.FunctionType;
+import com.github.microservice.types.deviceUse.IotDeviceDataType;
+import com.zhongshu.iot.client.model.iot.IotMainSimpleModel;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @author TRX
+ * @date 2024/7/16
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class IotDeviceDataModel extends SuperModel {
+
+    @Schema(description = "关联的属性、事件、方法")
+    private IotMainSimpleModel iotMain;
+
+    @Schema(description = "所属模版ID")
+    private String iotTemplateId;
+
+    @Schema(description = "关联物模型信息")
+    private String iotThingId;
+
+    @Schema(description = "设备信息")
+    private DeviceInfoSimpleModel deviceInfo;
+
+    @Schema(description = "关联的设备")
+    private String deviceId;
+
+    @Schema(description = "功能类型,属性 事件 服务")
+    private FunctionType functionType;
+
+    @Schema(description = "功能名称")
+    private String iotName;
+
+    @Schema(description = "标识符")
+    private String identifier;
+
+    @Schema(description = "所属分组code")
+    private String projectCode;
+
+    @Schema(description = "属性名称,如:name、age、temperature")
+    private String property;
+
+    @Schema(description = "对应的值")
+    private Object value;
+
+    @Schema(description = "数据类型,如:当前数据,历史数据")
+    private IotDeviceDataType dataType = IotDeviceDataType.Current;
+
+    private String dataTypeStr;
+
+    public String getDataTypeStr() {
+        if (dataType != null) {
+            return dataType.getRemark();
+        }
+        return "";
+    }
+
+    @Schema(description = "整个推送的值")
+    private Object mqttParam;
+
+}

+ 1 - 1
OneCardIotClient/src/main/java/com/zhongshu/iot/client/model/iot/IotMainAttributeModel.java

@@ -1,6 +1,6 @@
 package com.zhongshu.iot.client.model.iot;
 
-import com.github.microservice.models.iotDeviceData.IotDeviceDataModel;
+import com.zhongshu.iot.client.model.device.IotDeviceDataModel;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.AllArgsConstructor;
 import lombok.Data;

+ 1 - 1
OneCardIotServer/src/main/java/com/zhongshu/iot/server/core/controller/devices/DeviceDataController.java

@@ -3,7 +3,7 @@ package com.zhongshu.iot.server.core.controller.devices;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
 import com.github.microservice.models.baseParam.IDParam;
-import com.github.microservice.models.iotDeviceData.IotDeviceDataModel;
+import com.zhongshu.iot.client.model.device.IotDeviceDataModel;
 import com.github.microservice.models.iotDeviceData.IotDeviceDataSearch;
 import com.github.microservice.net.ResultContent;
 import com.zhongshu.iot.server.core.service.iot.IotDeviceDataService;

+ 13 - 1
OneCardIotServer/src/main/java/com/zhongshu/iot/server/core/service/iot/IotDeviceDataService.java

@@ -1,16 +1,18 @@
 package com.zhongshu.iot.server.core.service.iot;
 
-import com.github.microservice.models.iotDeviceData.IotDeviceDataModel;
 import com.github.microservice.models.iotDeviceData.IotDeviceDataSearch;
 import com.github.microservice.models.iotDeviceData.IotDeviceDataSimpleModel;
 import com.github.microservice.net.ResultContent;
 import com.github.microservice.net.ResultMessage;
 import com.github.microservice.types.deviceUse.IotDeviceDataType;
+import com.zhongshu.iot.client.model.device.IotDeviceDataModel;
+import com.zhongshu.iot.client.model.iot.IotMainSimpleModel;
 import com.zhongshu.iot.client.type.IotDataType;
 import com.zhongshu.iot.server.core.dao.iot.IotDeviceDataDao;
 import com.zhongshu.iot.server.core.dao.iot.IotMainDao;
 import com.zhongshu.iot.server.core.domain.iot.IotDeviceData;
 import com.zhongshu.iot.server.core.domain.iot.IotMain;
+import com.zhongshu.iot.server.core.service.device.DeviceInfoService;
 import com.zhongshu.iot.server.core.util.DateUtils;
 import com.zhongshu.iot.server.core.util.bean.BeanUtils;
 import com.zhongshu.iot.server.core.util.page.PageEntityUtil;
@@ -41,6 +43,12 @@ public class IotDeviceDataService {
     @Autowired
     private IotFreshService iotFreshService;
 
+    @Autowired
+    private IotServiceImpl iotService;
+
+    @Autowired
+    private DeviceInfoService deviceInfoService;
+
     /**
      * 保存属性的值
      *
@@ -162,6 +170,10 @@ public class IotDeviceDataService {
         if (ObjectUtils.isNotEmpty(entity)) {
             model = new IotDeviceDataModel();
             BeanUtils.copyProperties(entity, model);
+            IotMainSimpleModel simpleModel = iotService.toSimpleModel(entity.getIotMain());
+            model.setIotMain(simpleModel);
+
+            model.setDeviceInfo(deviceInfoService.toSimpleModel(entity.getDeviceId()));
         }
         return model;
     }