Prechádzať zdrojové kódy

完善td数据方法

donglang 3 mesiacov pred
rodič
commit
75c8f40633

+ 0 - 4
iot-platform-manager/src/main/java/com/platform/mapper/Demo.java

@@ -1,4 +0,0 @@
-package com.platform.mapper;
-
-public class Demo {
-}

+ 107 - 0
iot-platform-manager/src/main/java/com/platform/mapper/TaosMapper.java

@@ -0,0 +1,107 @@
+package com.platform.mapper;
+
+
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * @Author: donglang
+ * @CreateTime: 2025-10-09
+ * @Description: taosMapper
+ * @Version: 1.0
+ */
+
+@Mapper
+public interface TaosMapper {
+
+    /**
+     * 创建水表子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createWaterMeterSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+
+    /**
+     * 创建电表子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createElectricMeterSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+    /**
+     * 创建边坡检测子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createSlopeMonitorSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+    /**
+     * 创建视频监控子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createDeviceMonitorSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+    /**
+     * 创建矿卡子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createMineTruckMonitorSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+    /**
+     * 创建皮带称重数据子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createBeltScaleDataSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+    /**
+     * 创建环境检查子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createEnvironmentCheckSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+    /**
+     * 创建无人地磅子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createWeighbridgeDataSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+    /**
+     * 创建排放检测数据子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createEmissionDataSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+    /**
+     * 创建车辆数据子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createVehicleDataSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+    /**
+     * 创建装载机械数据子表
+     * @param code 产品编码
+     * @param deviceId 设备id
+     * @return
+     */
+    int createLoadingEquipmentDataSubTable(@Param("code") String code, @Param("deviceId") String deviceId);
+
+
+}

+ 0 - 12
iot-platform-manager/src/main/java/com/platform/service/Demo.java

@@ -1,12 +0,0 @@
-package com.platform.service;
-
-/**
- * @Author: 马超伟
- * @CreateTime: 2025-09-30
- * @Description:
- * @Version: 1.0
- */
-
-
-public class Demo {
-}

+ 89 - 0
iot-platform-manager/src/main/java/com/platform/service/TaosService.java

@@ -0,0 +1,89 @@
+package com.platform.service;
+
+/**
+ * @Author: donglang
+ * @CreateTime: 2025-10-09
+ * @Description: TaosSerivce
+ * @Version: 1.0
+ */
+
+public interface TaosService {
+
+    /**
+     * 创建水表子表
+     * @param code
+     * @param deviceId
+     */
+    void createWaterMeterSubTable(String code, String deviceId);
+
+    /**
+     * 创建水表子表
+     * @param code
+     * @param deviceId
+     */
+    void createElectricMeterSubTable(String code, String deviceId);
+
+    /**
+     * 创建边坡检测子表
+     * @param code
+     * @param deviceId
+     */
+    void createSlopeMonitorSubTable(String code, String deviceId);
+
+    /**
+     * 创建视频监控子表
+     * @param code
+     * @param deviceId
+     */
+    void createDeviceMonitorSubTable(String code, String deviceId);
+
+    /**
+     * 创建矿卡子表
+     * @param code
+     * @param deviceId
+     */
+    void createMineTruckMonitorSubTable(String code, String deviceId);
+
+    /**
+     * 创建皮带称重数据子表
+     * @param code
+     * @param deviceId
+     */
+    void createBeltScaleDataSubTable(String code, String deviceId);
+
+    /**
+     * 创建环境检查子表
+     * @param code
+     * @param deviceId
+     */
+    void createEnvironmentCheckSubTable(String code, String deviceId);
+
+    /**
+     * 创建无人地磅子表
+     * @param code
+     * @param deviceId
+     */
+    void createWeighbridgeDataSubTable(String code, String deviceId);
+
+    /**
+     * 创建排放检测数据子表
+     * @param code
+     * @param deviceId
+     */
+    void createEmissionDataSubTable(String code, String deviceId);
+
+    /**
+     * 创建车辆数据子表
+     * @param code
+     * @param deviceId
+     */
+    void createVehicleDataSubTable(String code, String deviceId);
+
+    /**
+     * 创建装载机械数据子表
+     * @param code
+     * @param deviceId
+     */
+    void createLoadingEquipmentDataSubTable(String code, String deviceId);
+
+}

+ 0 - 12
iot-platform-manager/src/main/java/com/platform/service/impl/Demo.java

@@ -1,12 +0,0 @@
-package com.platform.service.impl;
-
-/**
- * @Author: 马超伟
- * @CreateTime: 2025-09-30
- * @Description:
- * @Version: 1.0
- */
-
-
-public class Demo {
-}

+ 78 - 0
iot-platform-manager/src/main/java/com/platform/service/impl/TaosServiceImpl.java

@@ -0,0 +1,78 @@
+package com.platform.service.impl;
+
+
+import com.platform.mapper.TaosMapper;
+import com.platform.service.TaosService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * @Author: donglang
+ * @CreateTime: 2025-10-09
+ * @Description: TaosServiceImpl
+ * @Version: 1.0
+ */
+
+@Service
+public class TaosServiceImpl implements TaosService {
+
+    @Autowired
+    private TaosMapper taosMapper;
+
+
+    @Override
+    public void createWaterMeterSubTable(String code, String deviceId) {
+        taosMapper.createWaterMeterSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createElectricMeterSubTable(String code, String deviceId) {
+        taosMapper.createElectricMeterSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createSlopeMonitorSubTable(String code, String deviceId) {
+        taosMapper.createSlopeMonitorSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createDeviceMonitorSubTable(String code, String deviceId) {
+        taosMapper.createDeviceMonitorSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createMineTruckMonitorSubTable(String code, String deviceId) {
+        taosMapper.createMineTruckMonitorSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createBeltScaleDataSubTable(String code, String deviceId) {
+        taosMapper.createBeltScaleDataSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createEnvironmentCheckSubTable(String code, String deviceId) {
+        taosMapper.createEnvironmentCheckSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createWeighbridgeDataSubTable(String code, String deviceId) {
+        taosMapper.createWeighbridgeDataSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createEmissionDataSubTable(String code, String deviceId) {
+        taosMapper.createEmissionDataSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createVehicleDataSubTable(String code, String deviceId) {
+        taosMapper.createVehicleDataSubTable(code, deviceId);
+    }
+
+    @Override
+    public void createLoadingEquipmentDataSubTable(String code, String deviceId) {
+        taosMapper.createLoadingEquipmentDataSubTable(code, deviceId);
+    }
+
+}

+ 229 - 0
iot-platform-manager/src/main/resources/mapper/TaosMapper.xml

@@ -0,0 +1,229 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.platform.mapper.TaosMapper">
+
+    <!-- 创建水表子表-->
+    <update id="createWaterMeterSubTable">
+        CREATE TABLE IF NOT EXISTS water_meter_${code}_${deviceId} USING water_meter
+            TAGS (
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{longitude},
+                     #{latitude},
+                     #{tenantId}
+        )
+    </update>
+
+    <!-- 创建电表子表-->
+    <update id="createElectricMeterSubTable">
+        CREATE TABLE IF NOT EXISTS electric_meter_${code}_${deviceId} USING electric_meter
+            TAGS (
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{longitude},
+                     #{latitude},
+                     #{tenantId}
+        )
+    </update>
+
+
+    <!-- 创建边坡检测子表-->
+    <update id="createSlopeMonitorSubTable">
+        CREATE TABLE IF NOT EXISTS slope_monitor_${code}_${deviceId} USING slope_monitor
+            TAGS (
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{longitude},
+                     #{latitude},
+                     #{tenantId}
+        )
+    </update>
+
+    <!-- 创建视频监控子表-->
+    <update id="createDeviceMonitorSubTable">
+        CREATE TABLE IF NOT EXISTS device_monitor_${code}_${deviceId} USING device_monitor
+            TAGS (
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{longitude},
+                     #{latitude},
+                     #{tenantId}
+        )
+    </update>
+
+
+    <!-- 创建矿卡子表-->
+    <update id="createMineTruckMonitorSubTable">
+        CREATE TABLE IF NOT EXISTS device_monitor_${code}_${deviceId} USING mine_truck
+            TAGS (
+                     #{truckId},
+                     #{truckModel},
+                     #{teamId},
+                     #{miningArea},
+                     #{driverId},
+                     #{maxLoad},
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{tenantId}
+        )
+    </update>
+
+
+    <!-- 创建皮带称重数据子表-->
+    <update id="createBeltScaleDataSubTable">
+        CREATE TABLE IF NOT EXISTS belt_scale_data_${code}_${deviceId} USING belt_scale_data
+            TAGS (
+                     #{materialType},
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{longitude},
+                     #{latitude},
+                     #{tenantId}
+        )
+    </update>
+
+    <!-- 创建环境检查子表-->
+    <update id="createEnvironmentCheckSubTable">
+        CREATE TABLE IF NOT EXISTS environment_check_${code}_${deviceId} USING environment_check
+            TAGS (
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{longitude},
+                     #{latitude},
+                     #{tenantId}
+        )
+    </update>
+
+    <!-- 创建无人地磅子表-->
+    <update id="createWeighbridgeDataSubTable">
+        CREATE TABLE IF NOT EXISTS weighbridge_data_${code}_${deviceId} USING weighbridge_data
+            TAGS (
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{longitude},
+                     #{latitude},
+                     #{tenantId}
+        )
+    </update>
+
+    <!-- 创建排放检测数据子表-->
+    <update id="createEmissionDataSubTable">
+        CREATE TABLE IF NOT EXISTS emission_data_${code}_${deviceId} USING emission_data
+            TAGS (
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{longitude},
+                     #{latitude},
+                     #{tenantId}
+        )
+    </update>
+
+    <!-- 创建车辆数据子表-->
+    <update id="createVehicleDataSubTable">
+        CREATE TABLE IF NOT EXISTS vehicle_data_${code}_${deviceId} USING vehicle_data
+            TAGS (
+                     #{fleet_id},
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{tenantId}
+        )
+    </update>
+
+
+    <!-- 创建装载机械数据子表-->
+    <update id="createLoadingEquipmentDataSubTable">
+        CREATE TABLE IF NOT EXISTS loading_equipment_data_${code}_${deviceId} USING loading_equipment_data
+            TAGS (
+                     #{deviceId},
+                     #{deviceName},
+                     #{groupId},
+                     #{groupName},
+                     #{bizId},
+                     #{bizName},
+                     #{projectId},
+                     #{projectName},
+                     #{location},
+                     #{longitude},
+                     #{latitude},
+                     #{tenantId}
+        )
+    </update>
+
+
+
+
+</mapper>
+
+
+

+ 9 - 0
pom.xml

@@ -80,6 +80,15 @@
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-starter-bootstrap</artifactId>
         </dependency>
+
+        <!-- TDengine 官方 Java 驱动 -->
+        <dependency>
+            <groupId>com.taosdata.jdbc</groupId>
+            <artifactId>taos-jdbcdriver</artifactId>
+            <version>3.2.7</version> <!-- 版本根据 TDengine 服务器版本选择 -->
+        </dependency>
+
+
     </dependencies>
 	<dependencyManagement>
 		<dependencies>