From 89fb71e8573d1f6552d70a699e3a8b1ec8612f02 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=AE=89=E6=B5=A9=E6=B5=A9?= <1036606149@qq.com>
Date: Sat, 9 Nov 2024 23:44:05 +0800
Subject: [PATCH] =?UTF-8?q?=E3=80=90=E4=BC=98=E5=8C=96=E5=8A=9F=E8=83=BD?=
=?UTF-8?q?=E3=80=91=20=E4=BC=98=E5=8C=96=20tdengine=20=E6=93=8D=E4=BD=9C?=
=?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../yudao/module/iot/enums/IotConstants.java | 38 +++++
.../admin/device/IotDeviceDataController.java | 16 +-
...ReqVO.java => IotDeviceDataPageReqVO.java} | 3 +-
.../vo/deviceData/IotDeviceDataRespVO.java | 3 -
.../dataobject/device/IotDeviceDataDO.java | 20 ++-
.../iot/dal/dataobject/tdengine/SelectDO.java | 6 -
.../dataobject/tdengine/SelectVisualDO.java | 3 +
.../dal/dataobject/tdengine/TableManager.java | 159 ------------------
...ableMapper.java => TdEngineDDLMapper.java} | 60 +++++--
.../iot/dal/tdengine/TdEngineDMLMapper.java | 103 ++++++++++++
.../tdengine/TdEngineDataWriterMapper.java | 25 ---
.../dal/tdengine/TdEngineDatabaseMapper.java | 24 ---
.../iot/dal/tdengine/TdEngineQueryMapper.java | 86 ----------
.../iot/dal/tdengine/TdEngineTableMapper.java | 41 -----
.../service/device/IotDeviceDataService.java | 6 +-
.../device/IotDeviceDataServiceImpl.java | 22 +--
.../service/device/IotDeviceServiceImpl.java | 45 ++---
.../tdengine/IotSuperTableService.java | 2 +-
.../tdengine/IotSuperTableServiceImpl.java | 59 ++++---
.../IotThingModelMessageServiceImpl.java | 130 +++++++-------
.../tdengine/TdEngineDataWriterService.java | 19 ---
.../TdEngineDataWriterServiceImpl.java | 21 ---
.../tdengine/TdEngineDatabaseService.java | 14 --
.../tdengine/TdEngineDatabaseServiceImpl.java | 22 ---
.../tdengine/TdEngineQueryService.java | 28 ---
.../tdengine/TdEngineQueryServiceImpl.java | 26 ---
.../tdengine/TdEngineSuperTableService.java | 123 --------------
.../TdEngineSuperTableServiceImpl.java | 90 ----------
.../tdengine/TdEngineTableService.java | 21 ---
.../tdengine/TdEngineTableServiceImpl.java | 23 ---
...rTableMapper.xml => TdEngineDDLMapper.xml} | 34 +++-
...eQueryMapper.xml => TdEngineDMLMapper.xml} | 32 +++-
.../tdengine/TdEngineDataWriterMapper.xml | 21 ---
.../tdengine/TdEngineDatabaseMapper.xml | 12 --
.../mapper/tdengine/TdEngineTableMapper.xml | 32 ----
35 files changed, 416 insertions(+), 953 deletions(-)
create mode 100644 yudao-module-iot/yudao-module-iot-api/src/main/java/cn/iocoder/yudao/module/iot/enums/IotConstants.java
rename yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/vo/deviceData/{IotDeviceDataReqVO.java => IotDeviceDataPageReqVO.java} (92%)
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/dataobject/tdengine/TableManager.java
rename yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/tdengine/{TdEngineSuperTableMapper.java => TdEngineDDLMapper.java} (68%)
create mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/tdengine/TdEngineDMLMapper.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/tdengine/TdEngineDataWriterMapper.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/tdengine/TdEngineDatabaseMapper.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/tdengine/TdEngineQueryMapper.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/tdengine/TdEngineTableMapper.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineDataWriterService.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineDataWriterServiceImpl.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineDatabaseService.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineDatabaseServiceImpl.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineQueryService.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineQueryServiceImpl.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineSuperTableService.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineSuperTableServiceImpl.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineTableService.java
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/tdengine/TdEngineTableServiceImpl.java
rename yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/tdengine/{TdEngineSuperTableMapper.xml => TdEngineDDLMapper.xml} (70%)
rename yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/tdengine/{TdEngineQueryMapper.xml => TdEngineDMLMapper.xml} (68%)
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/tdengine/TdEngineDataWriterMapper.xml
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/tdengine/TdEngineDatabaseMapper.xml
delete mode 100644 yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/tdengine/TdEngineTableMapper.xml
diff --git a/yudao-module-iot/yudao-module-iot-api/src/main/java/cn/iocoder/yudao/module/iot/enums/IotConstants.java b/yudao-module-iot/yudao-module-iot-api/src/main/java/cn/iocoder/yudao/module/iot/enums/IotConstants.java
new file mode 100644
index 000000000..5927f44b9
--- /dev/null
+++ b/yudao-module-iot/yudao-module-iot-api/src/main/java/cn/iocoder/yudao/module/iot/enums/IotConstants.java
@@ -0,0 +1,38 @@
+package cn.iocoder.yudao.module.iot.enums;
+
+/**
+ * Iot 常量
+ *
+ * @author 芋道源码
+ */
+public interface IotConstants {
+
+ /**
+ * 获取设备表名
+ *
+ * 格式为 device_{productKey}_{deviceName}
+ */
+ String DEVICE_TABLE_NAME_FORMAT = "device_%s_%s";
+
+ /**
+ * 获取产品属性超级表名 - 网关子设备
+ *
+ * 格式为 gateway_sub_{productKey}
+ */
+ String GATEWAY_SUB_STABLE_NAME_FORMAT = "gateway_sub_%s";
+
+ /**
+ * 获取产品属性超级表名 - 网关
+ *
+ * 格式为 gateway_{productKey}
+ */
+ String GATEWAY_STABLE_NAME_FORMAT = "gateway_%s";
+
+ /**
+ * 获取产品属性超级表名 - 设备
+ *
+ * 格式为 device_{productKey}
+ */
+ String DEVICE_STABLE_NAME_FORMAT = "device_%s";
+
+}
\ No newline at end of file
diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/IotDeviceDataController.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/IotDeviceDataController.java
index ac2ec5cf7..72fdda8c8 100644
--- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/IotDeviceDataController.java
+++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/IotDeviceDataController.java
@@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.iot.controller.admin.device;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
-import cn.iocoder.yudao.module.iot.controller.admin.device.vo.deviceData.IotDeviceDataReqVO;
+import cn.iocoder.yudao.module.iot.controller.admin.device.vo.deviceData.IotDeviceDataPageReqVO;
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.deviceData.IotDeviceDataRespVO;
import cn.iocoder.yudao.module.iot.dal.dataobject.device.IotDeviceDataDO;
import cn.iocoder.yudao.module.iot.controller.admin.device.vo.deviceData.IotTimeDataRespVO;
@@ -31,19 +31,17 @@ public class IotDeviceDataController {
@Resource
private IotDeviceDataService deviceDataService;
- // TODO @haohao:是不是叫 get-latest 就好了。因为 data 已经在 url 里了哈
- @GetMapping("/latest-data")
+ @GetMapping("/latest")
@Operation(summary = "获取设备属性最新数据")
- public CommonResult> getDevicePropertiesLatestData(@Valid IotDeviceDataReqVO deviceDataReqVO) {
- List list = deviceDataService.getDevicePropertiesLatestData(deviceDataReqVO);
+ public CommonResult> getLatestDeviceProperties(@Valid IotDeviceDataPageReqVO deviceDataReqVO) {
+ List list = deviceDataService.getLatestDeviceProperties(deviceDataReqVO);
return success(BeanUtils.toBean(list, IotDeviceDataRespVO.class));
}
- // TODO @haohao:是不是叫 /history-data => page
- @GetMapping("/history-data")
+ @GetMapping("/history")
@Operation(summary = "获取设备属性历史数据")
- public CommonResult> getDevicePropertiesHistoryData(@Valid IotDeviceDataReqVO deviceDataReqVO) {
- PageResult