From 24996ea75ec4ca3b7d154387bfe37ec9dd387255 Mon Sep 17 00:00:00 2001 From: houzhongjian <houzhongyi@126.com> Date: 星期四, 29 五月 2025 14:40:05 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/ConstantHandle.java | 15 +++++++++++---- 1 files changed, 11 insertions(+), 4 deletions(-) diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/ConstantHandle.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/ConstantHandle.java index 8aed10c..e15be10 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/ConstantHandle.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/ConstantHandle.java @@ -1,5 +1,6 @@ package com.iailab.module.data.point.collection.handler; +import com.iailab.module.data.enums.DataPointFreqEnum; import com.iailab.module.data.point.collection.utils.GenInfluxPointValueUtils; import com.iailab.module.data.point.dto.DaPointDTO; import com.iailab.module.data.point.service.DaPointService; @@ -9,6 +10,7 @@ import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; +import java.math.BigDecimal; import java.util.*; /** @@ -32,9 +34,13 @@ return result; } dtos.forEach(dto -> { - InfluxPointValuePOJO pojo = GenInfluxPointValueUtils.getByPoint(dto); - pojo.setTimestamp(collectTime.toInstant()); - dataMap.put(dto.getPointNo(), dto.getDefaultValue()); + BigDecimal defaultValue = dto.getDefaultValue(); + BigDecimal coefficient = dto.getUnittransfactor() == null ? BigDecimal.ONE : dto.getUnittransfactor(); + defaultValue = defaultValue.multiply(coefficient); + InfluxPointValuePOJO pojo = GenInfluxPointValueUtils.getByPoint(dto,defaultValue); + pojo.setTimestamp(GenInfluxPointValueUtils.getByMin(collectTime, DataPointFreqEnum.getEumByCode(dto.getMinfreqid()))); + + dataMap.put(dto.getPointNo(), defaultValue); result.add(pojo); listGood.add(dto.getPointNo()); }); @@ -48,7 +54,8 @@ List<DaPointDTO> pointConstantList = daPointService.getConstantPoint(pointNos); if (!CollectionUtils.isEmpty(pointConstantList)) { pointConstantList.forEach(item -> { - data.put(item.getPointNo(), item.getDefaultValue()); + BigDecimal coefficient = item.getUnittransfactor() == null ? BigDecimal.ONE : item.getUnittransfactor(); + data.put(item.getPointNo(), item.getDefaultValue().multiply(coefficient)); }); } return data; -- Gitblit v1.9.3