From be00ddc83f86599916eb8d0f581f448aa74c9d51 Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期四, 19 六月 2025 08:55:57 +0800 Subject: [PATCH] feat(mqtt): 增加对空调设备数据的处理 --- src/main/java/com/zhitan/service/impl/OpcServiceImpl.java | 29 +++++++++++++++++++++++------ 1 files changed, 23 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/zhitan/service/impl/OpcServiceImpl.java b/src/main/java/com/zhitan/service/impl/OpcServiceImpl.java index b456832..e75289f 100644 --- a/src/main/java/com/zhitan/service/impl/OpcServiceImpl.java +++ b/src/main/java/com/zhitan/service/impl/OpcServiceImpl.java @@ -366,12 +366,29 @@ // 1. 鐩存帴閫氳繃InfluxDB瀛樺偍搴撳啓鍏� for (OpcData data : dataList) { if (data.getValue() != null) { - Point point = Point - .measurement(influxdbConfig.getMeasurement()) - .addTag(TAG, data.getName()) - .addField(FIELD_VALUE, data.getValue()) - .time(data.getTimestamp(), WritePrecision.NS); - points.add(point); + // 濡傛灉鏄數鍘嬶紝鍥涜矾鍏辩敤锛岄渶瑕佸鐞� 1-1#yijidiankonggui_1_VoltageA + if (data.getName().contains("_Voltage")) { + String prefix = data.getName().split("_")[0]; + String suffix = data.getName().split("_")[2]; + // 寰幆鍥涙 + for (int i = 1; i <= 4; i++) { + String name = prefix + "_" + i + "_" + suffix; + Point point = Point + .measurement(influxdbConfig.getMeasurement()) + .addTag(TAG, name) + .addField(FIELD_VALUE, data.getValue()) + .time(data.getTimestamp(), WritePrecision.NS); + points.add(point); + } + } else { + Point point = Point + .measurement(influxdbConfig.getMeasurement()) + .addTag(TAG, data.getName()) + .addField(FIELD_VALUE, data.getValue()) + .time(data.getTimestamp(), WritePrecision.NS); + points.add(point); + } + log.debug("閲囬泦OPC UA鏁版嵁: {} = {}", data.getName(), data.getValue()); } else if (data.getErrorMessage() != null) { log.warn("閲囬泦OPC UA鏁版嵁澶辫触: {} - {}", data.getName(), data.getErrorMessage()); -- Gitblit v1.9.3