From 0154c9df8e18dbc2b527c7f5b622dd078ae55994 Mon Sep 17 00:00:00 2001 From: swordmeng Date: Mon, 20 Jan 2025 13:43:46 +0800 Subject: [PATCH] 1 --- .../main/java/com/huaxing/test/TestController.java | 130 +++++++++++++++++++++ .../huaxing/test/controller/TestController.java | 130 --------------------- 2 files changed, 130 insertions(+), 130 deletions(-) create mode 100644 data-storage/src/main/java/com/huaxing/test/TestController.java delete mode 100644 data-storage/src/main/java/com/huaxing/test/controller/TestController.java diff --git a/data-storage/src/main/java/com/huaxing/test/TestController.java b/data-storage/src/main/java/com/huaxing/test/TestController.java new file mode 100644 index 0000000..2a415c5 --- /dev/null +++ b/data-storage/src/main/java/com/huaxing/test/TestController.java @@ -0,0 +1,130 @@ +package com.huaxing.test; + +import com.huaxing.data.storage.domain.DataAnalysisDTO; +import com.huaxing.data.storage.service.IDeviceDataQueryDfsService; +import com.huaxing.data.storage.service.IDeviceDataQueryStreamService; +import com.huaxing.data.storage.service.IDeviceDataStoredService; +import com.huaxing.data.tablemanagement.service.ITableStructureService; +import com.huaxing.common.util.JacksonUtil; +import com.huaxing.mqtt.processor.MqttMessageSender; +import jakarta.annotation.Resource; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.*; + + +/** + * @ProjectName: iot-data-bridge + * @Package: com.huaxing.data.storage.controller + * @ClassName: TestController + * @Author: swordmeng8@163.com + * @Description: 测试controller + * @Date: 2025/1/15 17:08 + * @Version: 1.0 + */ +@Slf4j +@RestController +@RequestMapping("/test") +@SuppressWarnings("all") +public class TestController { + + @Resource + private MqttMessageSender messageSender; + final IDeviceDataStoredService dataStoredService; + final IDeviceDataQueryDfsService dataQueryDfsService; + final IDeviceDataQueryStreamService dataQueryStreamService; + final ITableStructureService tableStructureService; + +// // 依赖注入 + public TestController(IDeviceDataStoredService dataStoredService, IDeviceDataQueryDfsService dataQueryDfsService, IDeviceDataQueryStreamService dataQueryStreamService, ITableStructureService tableStructureService) { + this.dataStoredService = dataStoredService; + this.dataQueryDfsService = dataQueryDfsService; + this.dataQueryStreamService = dataQueryStreamService; + this.tableStructureService = tableStructureService; + } + + + // =============================================== 测试插入数据 ====================================== + @GetMapping(value = "/testInsert") // 成功 + public void testInsert() { + String sql = "INSERT INTO ZbWaterMeter1Stream (time, projectId, deviceId, WM_WFA, WM_WFA_Unit) VALUES (2024.11.01 00:00:00,'48', '0jZU2102_0806_0011', 124.656, 'm³')"; + dataStoredService.execute(sql); + log.info("SUCCESS"); + } + + // =============================================== 测试Dfs表查询 ====================================== + @GetMapping(value = "/testSelectDfs") + public List> testSelectDfs() { + String dbPath = "dfs://ZbDB"; + String sql = String.format("select * from loadTable('%s','%s')", dbPath, "ZbWaterMeter1Dfs"); + return dataQueryDfsService.selectList(sql); + } + + // =============================================== 测试订阅流表查询 ====================================== + @GetMapping(value = "/testSelectStream") + public List> testSelectStream() { + String sql = "select * from WaterMeterTset1Stream"; + return dataQueryStreamService.selectList(sql); + } + + // =============================================== 给指定的流表增加列字段 ====================================== + @GetMapping(value = "/testStreamAddColumn") + public void testStreamAddColumn() { + String tableName = "ZbWaterMeter1Stream"; + String columnName = "WM_WFA_Unit14"; + String columnDefinition = "STRING"; + try { + tableStructureService.addStreamColumn(tableName, columnName, columnDefinition); + log.info("SUCCESS"); + } catch (Exception e) { + log.error("FAIL"); + e.printStackTrace(); + } + } + + // =============================================== 给指定的Dfs表增加列字段 ====================================== + @GetMapping(value = "/testDfsAddColumn") + public void testDfsAddColumn() { + String tableName = "ZbWaterMeter1Dfs"; + String columnName = "test2"; + String columnDefinition = "STRING"; + try { + tableStructureService.addDfsColumn(tableName, columnName, columnDefinition); + log.info("SUCCESS"); + } catch (Exception e) { + log.error("FAIL"); + e.printStackTrace(); + } + } + + + // ===================================== mqtt消息发送-测试数据入库 START ============================== + @GetMapping(value = "/testSendMessage") + public void testSendMessage() { + for (int i = 0; i < 2; i++) { + List> dataList = new ArrayList<>(); + dataList.add(handleMapByIndex(i)); + DataAnalysisDTO dataAnalysisDTO = DataAnalysisDTO.builder().tableName( "WaterMeterTsetStream").dataList(dataList).build(); + messageSender.send("iot/test1/in-storage", JacksonUtil.objectStr(dataAnalysisDTO)); + } + } + + private Map handleMapByIndex(int index) { + Map map = new HashMap<>(); + map.put("time", new Date()); + map.put("projectId", "0jZU2102"); + map.put("deviceId", "0jZU2102_0806_0011"); + map.put("WM_WFA", 124.656 + index); + map.put("WM_WFA_Unit", "m³"); + return map; + } + + // =============================================== TODO 创建Dfs表 Stream流表 创建 ====================================== + + + + +} diff --git a/data-storage/src/main/java/com/huaxing/test/controller/TestController.java b/data-storage/src/main/java/com/huaxing/test/controller/TestController.java deleted file mode 100644 index 74eef28..0000000 --- a/data-storage/src/main/java/com/huaxing/test/controller/TestController.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.huaxing.test.controller; - -import com.huaxing.data.storage.domain.DataAnalysisDTO; -import com.huaxing.data.storage.service.IDeviceDataQueryDfsService; -import com.huaxing.data.storage.service.IDeviceDataQueryStreamService; -import com.huaxing.data.storage.service.IDeviceDataStoredService; -import com.huaxing.data.tablemanagement.service.ITableStructureService; -import com.huaxing.common.util.JacksonUtil; -import com.huaxing.mqtt.processor.MqttMessageSender; -import jakarta.annotation.Resource; -import lombok.extern.slf4j.Slf4j; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.util.*; - - -/** - * @ProjectName: iot-data-bridge - * @Package: com.huaxing.data.storage.controller - * @ClassName: TestController - * @Author: swordmeng8@163.com - * @Description: 测试controller - * @Date: 2025/1/15 17:08 - * @Version: 1.0 - */ -@Slf4j -@RestController -@RequestMapping("/test") -@SuppressWarnings("all") -public class TestController { - - @Resource - private MqttMessageSender messageSender; - final IDeviceDataStoredService dataStoredService; - final IDeviceDataQueryDfsService dataQueryDfsService; - final IDeviceDataQueryStreamService dataQueryStreamService; - final ITableStructureService tableStructureService; - -// // 依赖注入 - public TestController(IDeviceDataStoredService dataStoredService, IDeviceDataQueryDfsService dataQueryDfsService, IDeviceDataQueryStreamService dataQueryStreamService, ITableStructureService tableStructureService) { - this.dataStoredService = dataStoredService; - this.dataQueryDfsService = dataQueryDfsService; - this.dataQueryStreamService = dataQueryStreamService; - this.tableStructureService = tableStructureService; - } - - - // =============================================== 测试插入数据 ====================================== - @GetMapping(value = "/testInsert") // 成功 - public void testInsert() { - String sql = "INSERT INTO ZbWaterMeter1Stream (time, projectId, deviceId, WM_WFA, WM_WFA_Unit) VALUES (2024.11.01 00:00:00,'48', '0jZU2102_0806_0011', 124.656, 'm³')"; - dataStoredService.execute(sql); - log.info("SUCCESS"); - } - - // =============================================== 测试Dfs表查询 ====================================== - @GetMapping(value = "/testSelectDfs") - public List> testSelectDfs() { - String dbPath = "dfs://ZbDB"; - String sql = String.format("select * from loadTable('%s','%s')", dbPath, "ZbWaterMeter1Dfs"); - return dataQueryDfsService.selectList(sql); - } - - // =============================================== 测试订阅流表查询 ====================================== - @GetMapping(value = "/testSelectStream") - public List> testSelectStream() { - String sql = "select * from WaterMeterTset1Stream"; - return dataQueryStreamService.selectList(sql); - } - - // =============================================== 给指定的流表增加列字段 ====================================== - @GetMapping(value = "/testStreamAddColumn") - public void testStreamAddColumn() { - String tableName = "ZbWaterMeter1Stream"; - String columnName = "WM_WFA_Unit14"; - String columnDefinition = "STRING"; - try { - tableStructureService.addStreamColumn(tableName, columnName, columnDefinition); - log.info("SUCCESS"); - } catch (Exception e) { - log.error("FAIL"); - e.printStackTrace(); - } - } - - // =============================================== 给指定的Dfs表增加列字段 ====================================== - @GetMapping(value = "/testDfsAddColumn") - public void testDfsAddColumn() { - String tableName = "ZbWaterMeter1Dfs"; - String columnName = "test2"; - String columnDefinition = "STRING"; - try { - tableStructureService.addDfsColumn(tableName, columnName, columnDefinition); - log.info("SUCCESS"); - } catch (Exception e) { - log.error("FAIL"); - e.printStackTrace(); - } - } - - - // ===================================== mqtt消息发送-测试数据入库 START ============================== - @GetMapping(value = "/testSendMessage") - public void testSendMessage() { - for (int i = 0; i < 2; i++) { - List> dataList = new ArrayList<>(); - dataList.add(handleMapByIndex(i)); - DataAnalysisDTO dataAnalysisDTO = DataAnalysisDTO.builder().tableName( "WaterMeterTsetStream").dataList(dataList).build(); - messageSender.send("iot/test1/in-storage", JacksonUtil.objectStr(dataAnalysisDTO)); - } - } - - private Map handleMapByIndex(int index) { - Map map = new HashMap<>(); - map.put("time", new Date()); - map.put("projectId", "0jZU2102"); - map.put("deviceId", "0jZU2102_0806_0011"); - map.put("WM_WFA", 124.656 + index); - map.put("WM_WFA_Unit", "m³"); - return map; - } - - // =============================================== TODO 创建Dfs表 Stream流表 创建 ====================================== - - - - -}