From e5589d2671ecb4ad0a21fba18059c70469203672 Mon Sep 17 00:00:00 2001 From: 潘志宝 <979469083@qq.com> Date: 星期六, 12 四月 2025 18:24:20 +0800 Subject: [PATCH] 累计值 动态长度 --- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java | 1 + iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CumulateHandle.java | 13 ++++++++----- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/PointCumulateUnitEnum.java | 2 +- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java index 8de5cd4..33dbae2 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java @@ -86,6 +86,7 @@ } selectSql.append(indItem.getUsingField()); selectSql.append(") data_value"); + //selectSql.append(") \"data_value\""); result.setSelectSql(selectSql.toString()); result.setViewSql(dataSet.getQuerySql()); return result; diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CumulateHandle.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CumulateHandle.java index 932746a..5bd3c39 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CumulateHandle.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CumulateHandle.java @@ -1,5 +1,6 @@ package com.iailab.module.data.point.collection.handler; +import com.alibaba.fastjson.JSONObject; import com.iailab.module.data.api.point.DataPointApi; import com.iailab.module.data.api.point.dto.ApiPointDTO; import com.iailab.module.data.api.point.dto.ApiPointValueDTO; @@ -102,28 +103,30 @@ } return CommonConstant.BAD_VALUE; } + log.info("累计值:" + dto.getPointNo()); // 动态长度 + ApiPointDTO momentPoint = dataPointApi.getInfoByNo(dto.getMomentPoint()); Calendar calendar = Calendar.getInstance(); calendar.setTime(collectTime); - calendar.add(Calendar.SECOND, -1 * DataPointFreqEnum.getEumByCode(dto.getMinfreqid()).getValue()); + calendar.add(Calendar.SECOND, -1 * DataPointFreqEnum.getEumByCode(momentPoint.getMinfreqid()).getValue()); Date endTime = calendar.getTime(); - Date startTime = PointCumulateUnitEnum.getStartTime(calendar,dto.getLength(),dto.getCumulateUnit()); - + Date startTime = PointCumulateUnitEnum.getStartTime(calendar, dto.getLength(), dto.getCumulateUnit()); ApiPointValueQueryDTO queryDto = new ApiPointValueQueryDTO(); queryDto.setStart(startTime); queryDto.setEnd(endTime); queryDto.setPointNo(dto.getMomentPoint()); - + log.info("queryDto=" + JSONObject.toJSONString(queryDto)); List<ApiPointValueDTO> dataList = dataPointApi.queryPointHistoryValue(queryDto); if (CollectionUtils.isEmpty(dataList)) { + log.info("dataList is empty"); if (listGood != null) { listGood.add(dto.getPointNo()); } return BigDecimal.ZERO; } else if (dataList.size() < dto.getLength()) { - // 补全数据 + log.info("补全数据,dataList.size()=" + dataList.size()); dataList = completionData(dto.getLength(), dataList, startTime, endTime, pointDTO); } double total = dataList.stream().mapToDouble(ApiPointValueDTO::getV).sum(); diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/PointCumulateUnitEnum.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/PointCumulateUnitEnum.java index ee49986..2e85b7e 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/PointCumulateUnitEnum.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/PointCumulateUnitEnum.java @@ -61,7 +61,7 @@ if (unit == null) { return endTime.getTime(); - }else if (unit != THIS_MONTH) { + } else if (unit != THIS_MONTH) { if (length == null || length <= 0) { return endTime.getTime(); } -- Gitblit v1.9.3