From 54a2a28953b310ba421f0765a55bd2d650645443 Mon Sep 17 00:00:00 2001
From: dongyukun <1208714201@qq.com>
Date: 星期二, 06 五月 2025 17:04:34 +0800
Subject: [PATCH] 峰谷平占比计算

---
 ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPeakValleyFlatTask.java |   29 +++++++++++++++--------------
 1 files changed, 15 insertions(+), 14 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 91e7370..57adf04 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
@@ -46,11 +46,6 @@
                     .collect(Collectors.groupingBy(PeakValleyFlatEntity::getPointNo));
 
             groupedByPointNo.entrySet().stream().forEach(entry -> {
-
-                //计算昨日的峰/谷累积量
-                double value = getSumValue(entry.getValue(), 1, calendar);
-
-                //计算昨日总电耗
                 Calendar cal = (Calendar) calendar.clone();
                 cal.set(Calendar.MILLISECOND, 0);
                 cal.set(Calendar.SECOND, 0);
@@ -61,7 +56,20 @@
                 Date startTime = cal.getTime();
                 cal.add(Calendar.DAY_OF_YEAR, -29);
                 Date monthStartTime = cal.getTime();
+
+                //计算昨日的峰/谷累积量
+                double value = getSumValue(entry.getValue(), 1, calendar);
+
+                //计算昨日总电耗
                 double totalValue = getSumValueTotal(entry.getValue().get(0).getPowerNo(), startTime, endTime);
+
+                //计算前三十日峰/谷累积量
+                double valueMonth = getSumValueTotal(entry.getValue().get(0).getPointNoTotal(), monthStartTime, startTime)+value;
+
+                //计算前三十日总电耗
+                double totalValueMonth = getSumValueTotal(entry.getValue().get(0).getPowerNo(), monthStartTime, endTime);
+
+                logger.info("name:"+entry.getValue().get(0).getName()+";value:"+value+";totalValue:"+totalValue+";valueMonth:"+valueMonth+";totalValueMonth:"+totalValueMonth);
 
                 //下发昨日占比
                 ApiPointValueWriteDTO percentDto = new ApiPointValueWriteDTO();
@@ -72,22 +80,15 @@
 
                 //下发昨日峰/谷累积量
                 ApiPointValueWriteDTO totalDto = new ApiPointValueWriteDTO();
-                percentDto.setPointNo(entry.getValue().get(0).getPointNoTotal());
-                percentDto.setValue(totalValue);
+                totalDto.setPointNo(entry.getValue().get(0).getPointNoTotal());
+                totalDto.setValue(totalValue);
                 dataPointApi.writePointRealValue(totalDto);
-
-                //计算前三十日峰/谷累积量
-                double valueMonth = getSumValueTotal(entry.getValue().get(0).getPointNoTotal(), monthStartTime, startTime)+totalValue;
-
-                //计算前三十日总电耗
-                double totalValueMonth = getSumValueTotal(entry.getValue().get(0).getPowerNo(), monthStartTime, endTime);
 
                 //下发前三十日占比
                 ApiPointValueWriteDTO monthDto = new ApiPointValueWriteDTO();
                 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) {

--
Gitblit v1.9.3