From 8c7333f578a4b51283a1f519cd58fa57019a5825 Mon Sep 17 00:00:00 2001 From: dongyukun <1208714201@qq.com> Date: 星期二, 06 五月 2025 16:39:15 +0800 Subject: [PATCH] 峰谷平占比计算 --- ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPeakValleyFlatTask.java | 16 +++++++++++----- 1 files changed, 11 insertions(+), 5 deletions(-) diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPeakValleyFlatTask.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPeakValleyFlatTask.java index 3b571f1..91e7370 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPeakValleyFlatTask.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPeakValleyFlatTask.java @@ -53,6 +53,7 @@ //计算昨日总电耗 Calendar cal = (Calendar) calendar.clone(); cal.set(Calendar.MILLISECOND, 0); + cal.set(Calendar.SECOND, 0); cal.set(Calendar.MINUTE, 0); cal.set(Calendar.HOUR_OF_DAY, 0); Date endTime = calendar.getTime(); @@ -72,11 +73,11 @@ //下发昨日峰/谷累积量 ApiPointValueWriteDTO totalDto = new ApiPointValueWriteDTO(); percentDto.setPointNo(entry.getValue().get(0).getPointNoTotal()); - percentDto.setValue(value); + percentDto.setValue(totalValue); dataPointApi.writePointRealValue(totalDto); //计算前三十日峰/谷累积量 - double valueMonth = getSumValueTotal(entry.getValue().get(0).getPointNoTotal(), monthStartTime, endTime); + double valueMonth = getSumValueTotal(entry.getValue().get(0).getPointNoTotal(), monthStartTime, startTime)+totalValue; //计算前三十日总电耗 double totalValueMonth = getSumValueTotal(entry.getValue().get(0).getPowerNo(), monthStartTime, endTime); @@ -86,8 +87,8 @@ monthDto.setPointNo(entry.getValue().get(0).getPointNoMonth()); double percentMonth = totalValueMonth == 0 ? 0 : valueMonth / totalValueMonth * 100; monthDto.setValue(percentMonth); + logger.info("name:"+entry.getValue().get(0).getName()+";value:"+value+";valueMonth:"+valueMonth+";totalValueMonth:"+totalValueMonth); dataPointApi.writePointRealValue(monthDto); - }); } catch (Exception ex) { logger.error("runPeakValleyFlatTask运行异常", ex); @@ -102,6 +103,7 @@ } //根据配置获取startTime、endTime cal.set(Calendar.MILLISECOND, 0); + cal.set(Calendar.SECOND, 0); cal.set(Calendar.HOUR_OF_DAY, Integer.parseInt(timeSplit[0])); cal.set(Calendar.MINUTE, Integer.parseInt(timeSplit[1])); cal.add(Calendar.DAY_OF_YEAR, -ago); @@ -171,9 +173,13 @@ dto.setStart(startTime); dto.setEnd(endTime); logger.info("开始查询,测点:" + entity.getPowerNo() + "startTime:" + startTime + "endTime:" + endTime); - + List<ApiPointValueDTO> valueList; //查找数据 - List<ApiPointValueDTO> valueList = dataPointApi.queryPointHistoryValue(dto); + try { + valueList = dataPointApi.queryPointHistoryValue(dto); + } catch (Exception e) { + throw new RuntimeException("查询测点异常"); + } //补全数据 valueList = fillMissingData(valueList, startTime, endTime); //累加 -- Gitblit v1.9.3