From f1742b35f1e81f1c2bb5212a427455f92523a132 Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期一, 17 三月 2025 11:22:26 +0800
Subject: [PATCH] PointCollector

---
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/influxdb/service/impl/InfluxDBServiceImpl.java |   24 ++++++++++--------------
 1 files changed, 10 insertions(+), 14 deletions(-)

diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/influxdb/service/impl/InfluxDBServiceImpl.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/influxdb/service/impl/InfluxDBServiceImpl.java
index be08f61..ae6045b 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/influxdb/service/impl/InfluxDBServiceImpl.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/influxdb/service/impl/InfluxDBServiceImpl.java
@@ -35,11 +35,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
-import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
-
-import static com.iailab.framework.common.pojo.CommonResult.success;
 
 /**
  * InfluxDB操作类
@@ -62,18 +59,13 @@
 
     private InfluxQLQueryApi influxQLQueryApi;
 
-    private String VALUE = "value";
+    public static final String VALUE = "value";
 
-    private String TIME = "time";
+    public static final String TIME = "time";
 
     private int rawOffset = TimeZone.getDefault().getRawOffset();
 
     private int pas_ms = 1000;
-
-    private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-
-    @Resource
-    private InfluxDBService influxDBService;
 
     @Override
     public void syncWriteFloatValue(String pointNo, String dataValue, long time) {
@@ -118,7 +110,8 @@
         }
         if (!CollectionUtils.isEmpty(pointValues)) {
             pointValues.forEach(item -> {
-                writeApi.writeMeasurement(influxDBInstance.bucket, influxDBInstance.org, WritePrecision.MS, item);
+                String bucket = influxDBInstance.getBucket();
+                writeApi.writeMeasurement(bucket, influxDBInstance.org, WritePrecision.MS, item);
             });
         }
         writeApi.flush();
@@ -131,6 +124,7 @@
         }
         if (!CollectionUtils.isEmpty(tagValues)) {
             tagValues.forEach(item -> {
+                log.info("bucket==="+ influxDBInstance.getBucket() + ",org===" + influxDBInstance.org);
                 writeApi.writeMeasurement(influxDBInstance.getBucket(), influxDBInstance.org, WritePrecision.MS, item);
             });
         }
@@ -310,7 +304,9 @@
             sql.append("'");
             InfluxQLQueryResult data = influxQLQueryApi.query(new InfluxQLQuery(sql.toString(), influxDBInstance.getBucket()));
             Object value = data.getResults().get(0).getSeries().get(0).getValues().get(0).getValueByKey("last");
-            result.put(point.getPoint(), value);
+            if (value != null) {
+                result.put(point.getPoint(), value);
+            }
         }
         return result;
     }
@@ -367,7 +363,7 @@
             InfluxPointValuePOJO point = influxParams.get(i);
             String measurement = PointValueUtils.getMeasurement(point.getType());
             StringBuilder sb = new StringBuilder();
-            sb.append("from(bucket:\"" + influxDBInstance.bucket + "\") ");
+            sb.append("from(bucket:\"" + influxDBInstance.getBucket() + "\") ");
             sb.append("|> range(start: ").append(start).append(", stop: ").append(stop).append(") ");
             sb.append("|> filter(fn: (r) => r[\"_measurement\"] == \"" + measurement + "\")");
             sb.append("|> filter(fn: (r) => r[\"_field\"] == \"value\")");
@@ -382,7 +378,7 @@
                 for (FluxRecord record : records) {
                     Map<String, Object> dataIem = new HashMap<>(2);
                     dataIem.put(VALUE, record.getValueByKey("_value"));
-                    dataIem.put(TIME, sdf.format(Date.from(record.getTime())));
+                    dataIem.put(TIME, DateUtils.format(Date.from(record.getTime()), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND));
                     dataList.add(dataIem);
                 }
             }

--
Gitblit v1.9.3