From 7bdd62f0266f8caa8fbb167c8906a756f0299428 Mon Sep 17 00:00:00 2001 From: zhitan-cloud <394600+ustcyc@user.noreply.gitee.com> Date: 星期三, 12 二月 2025 23:02:55 +0800 Subject: [PATCH] !67 !66 电能质量分析,匹配模板编码 Merge pull request !67 from zhitan-cloud/develop1.0 --- zhitan-system/src/main/java/com/zhitan/realtimedata/service/impl/RealtimeDatabaseServiceImpl.java | 21 +++++++++++++++------ 1 files changed, 15 insertions(+), 6 deletions(-) diff --git a/zhitan-system/src/main/java/com/zhitan/realtimedata/service/impl/RealtimeDatabaseServiceImpl.java b/zhitan-system/src/main/java/com/zhitan/realtimedata/service/impl/RealtimeDatabaseServiceImpl.java index 9e16113..796fa5f 100644 --- a/zhitan-system/src/main/java/com/zhitan/realtimedata/service/impl/RealtimeDatabaseServiceImpl.java +++ b/zhitan-system/src/main/java/com/zhitan/realtimedata/service/impl/RealtimeDatabaseServiceImpl.java @@ -6,11 +6,12 @@ import com.zhitan.common.enums.CollectionModes; import com.zhitan.common.enums.GroupTimeType; import com.zhitan.common.enums.RetrievalModes; -import com.zhitan.realtimedata.data.RealtimeDatabaseManager; import com.zhitan.realtimedata.data.influxdb.InfluxDBRepository; import com.zhitan.realtimedata.domain.TagValue; import com.zhitan.realtimedata.service.RealtimeDatabaseService; import org.apache.commons.collections4.CollectionUtils; +import org.joda.time.DateTime; +import org.joda.time.Seconds; import org.springframework.stereotype.Service; import java.util.*; @@ -23,11 +24,10 @@ private final InfluxDBRepository repository; - private final RealtimeDatabaseManager realtimeDatabaseManager; - public RealtimeDatabaseServiceImpl(InfluxDBRepository repository, RealtimeDatabaseManager realtimeDatabaseManager) { + public RealtimeDatabaseServiceImpl(InfluxDBRepository repository + ) { this.repository = repository; - this.realtimeDatabaseManager = realtimeDatabaseManager; } /** @@ -115,7 +115,7 @@ @Override public TagValue statistics(String tagCode, Date beginTime, Date endTime, CollectionModes collectionModes) { List<TagValue> tagValues = repository.statistics(Collections.singletonList(tagCode), beginTime, endTime, collectionModes); - return CollectionUtils.isEmpty(tagValues) ? tagValues.get(0) : null; + return CollectionUtils.isNotEmpty(tagValues) ? tagValues.get(0) : null; } /** @@ -169,6 +169,15 @@ @Override public List<TagValue> retrieve(String tagCode, Date beginTime, Date endTime, RetrievalModes retrievalModes, int pointCount) { - return realtimeDatabaseManager.retrieve(tagCode, beginTime, endTime, retrievalModes, pointCount); + repository.getHistoryData(Collections.singletonList(tagCode), beginTime, endTime, pointCount); + pointCount = retrievalModes == RetrievalModes.Full ? 200 : pointCount; + int span = + Seconds.secondsBetween(new DateTime(beginTime), new DateTime(endTime)).getSeconds(); + int interval = span / pointCount; + List<String> tagCodes = new ArrayList<>(); + tagCodes.add(tagCode); + List<TagValue> historyData = repository.getHistoryData(tagCodes, beginTime, endTime, interval); + return historyData; +// return realtimeDatabaseManager.retrieve(tagCode, beginTime, endTime, retrievalModes, pointCount); } } -- Gitblit v1.9.3