潘志宝
2025-05-19 aa0b46b6fcf76f4c659e4c8ebfb5ab24731b80f1
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/influxdb/service/impl/InfluxDBServiceImpl.java
@@ -335,6 +335,30 @@
    }
    @Override
    public Map<String, Object> queryPointMaxTimeValue(InfluxPointValuePOJO point, Date startTime, Date endTime) {
        Map<String, Object> result = new HashMap<>(2);
        List<Map<String, Object>> valueList = this.queryPointValues(point, startTime, endTime);
        if (CollectionUtils.isEmpty(valueList)) {
            return null;
        }
        double valueL = new BigDecimal(valueList.get(0).get(VALUE).toString()).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
        String timeM = valueList.get(0).get(TIME).toString();
        double valueM = valueL;
        for (Map<String, Object> item : valueList) {
            double valueI = new BigDecimal(item.get(VALUE).toString()).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
            if (valueI >= valueL ) {
                valueM = valueI;
                timeM = item.get(TIME).toString();
            }
            valueL = valueI;
        }
        result.put(TIME, timeM);
        result.put(VALUE, valueM);
        return result;
    }
    @Override
    public Object queryPointMaxValueRange(InfluxPointValuePOJO point, Date startTime, Date endTime) {
        if (influxQLQueryApi == null) {
            influxQLQueryApi = influxDBInstance.getClient().getInfluxQLQueryApi();