From 013fa08f64639a4a722dbb709a746a4561a02964 Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期日, 08 六月 2025 14:45:33 +0800 Subject: [PATCH] feat(service): 添加压缩空气和水表数据模拟器 --- 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