From d36ffdff2aebf00e4879359dc729d9c7d1715882 Mon Sep 17 00:00:00 2001 From: junzhangfm Date: Thu, 16 Apr 2026 14:59:52 +0800 Subject: [PATCH] =?UTF-8?q?2026-04-13=E6=8F=90=E4=BA=A4=EF=BC=9AK=E7=BA=BF?= =?UTF-8?q?=E5=9B=BE=E7=9A=84Y=E8=BD=B4=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../southern/power/grid/entity/DailyPowerOutageEventVO.java | 2 +- .../power/grid/entity/HourlyChartYScaleRuleCollectVO.java | 5 +++++ .../power/grid/entity/HourlyPowerOutageEventChartVO.java | 4 ++-- .../service/impl/DnerHourlyPowerOutageEventServiceImpl.java | 4 ++++ src/main/java/com/southern/power/grid/utils/ToolUtils.java | 2 -- 5 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/southern/power/grid/entity/DailyPowerOutageEventVO.java b/src/main/java/com/southern/power/grid/entity/DailyPowerOutageEventVO.java index 053c3a7..a2ed331 100644 --- a/src/main/java/com/southern/power/grid/entity/DailyPowerOutageEventVO.java +++ b/src/main/java/com/southern/power/grid/entity/DailyPowerOutageEventVO.java @@ -104,7 +104,7 @@ public class DailyPowerOutageEventVO { .setMa20(new ArrayList<>()).setMa30(new ArrayList<>()); scheduledUserKline = new KLineVO().setKline(new ArrayList<>()).setMa5(new ArrayList<>()).setMa10(new ArrayList<>()) .setMa20(new ArrayList<>()).setMa30(new ArrayList<>()); - ChartYScaleRuleVO chartYScaleRuleVO = new ChartYScaleRuleVO().setMin(0).setMax(100).setInterval(10.0); + ChartYScaleRuleVO chartYScaleRuleVO = new ChartYScaleRuleVO().setMin(0).setMax(0).setInterval(0D); dailyChartYScaleRuleCollect = new DailyChartYScaleRuleCollectVO().setMaRule(chartYScaleRuleVO) .setUserCountRule(chartYScaleRuleVO).setDailyPrecipitationRule(chartYScaleRuleVO) .setTemperatureRule(chartYScaleRuleVO).setExtremeWindSpeedRule(chartYScaleRuleVO); diff --git a/src/main/java/com/southern/power/grid/entity/HourlyChartYScaleRuleCollectVO.java b/src/main/java/com/southern/power/grid/entity/HourlyChartYScaleRuleCollectVO.java index dab31e4..e042462 100644 --- a/src/main/java/com/southern/power/grid/entity/HourlyChartYScaleRuleCollectVO.java +++ b/src/main/java/com/southern/power/grid/entity/HourlyChartYScaleRuleCollectVO.java @@ -16,6 +16,11 @@ import java.io.Serializable; public class HourlyChartYScaleRuleCollectVO implements Serializable { private static final long serialVersionUID = -6099537585608567152L; + /** + * 小时停电用户数 + */ + private ChartYScaleRuleVO userCountRule; + /** * 小时故障停电用户数 */ diff --git a/src/main/java/com/southern/power/grid/entity/HourlyPowerOutageEventChartVO.java b/src/main/java/com/southern/power/grid/entity/HourlyPowerOutageEventChartVO.java index ace492a..b00031d 100644 --- a/src/main/java/com/southern/power/grid/entity/HourlyPowerOutageEventChartVO.java +++ b/src/main/java/com/southern/power/grid/entity/HourlyPowerOutageEventChartVO.java @@ -77,10 +77,10 @@ public class HourlyPowerOutageEventChartVO { minTemList = new ArrayList<>(); precList = new ArrayList<>(); windList = new ArrayList<>(); - ChartYScaleRuleVO chartYScaleRuleVO = new ChartYScaleRuleVO().setMin(0).setMax(100).setInterval(10.0); + ChartYScaleRuleVO chartYScaleRuleVO = new ChartYScaleRuleVO().setMin(0).setMax(0).setInterval(0D); hourlyChartYScaleRuleCollect = new HourlyChartYScaleRuleCollectVO().setPrecRule(chartYScaleRuleVO) .setAvgTemRule(chartYScaleRuleVO).setMaxTemRule(chartYScaleRuleVO).setMinTemRule(chartYScaleRuleVO) .setWindRule(chartYScaleRuleVO).setScheduledUserCountRule(chartYScaleRuleVO) - .setFaultUserCountRule(chartYScaleRuleVO); + .setFaultUserCountRule(chartYScaleRuleVO).setUserCountRule(chartYScaleRuleVO); } } diff --git a/src/main/java/com/southern/power/grid/service/impl/DnerHourlyPowerOutageEventServiceImpl.java b/src/main/java/com/southern/power/grid/service/impl/DnerHourlyPowerOutageEventServiceImpl.java index ee8bed2..cfc4067 100644 --- a/src/main/java/com/southern/power/grid/service/impl/DnerHourlyPowerOutageEventServiceImpl.java +++ b/src/main/java/com/southern/power/grid/service/impl/DnerHourlyPowerOutageEventServiceImpl.java @@ -72,6 +72,10 @@ public class DnerHourlyPowerOutageEventServiceImpl } private void handleYScaleRule(HourlyPowerOutageEventChartVO result) { + if (!CollectionUtil.isEmpty(result.getPowerOutageUserCountList())) { + result.getHourlyChartYScaleRuleCollect().setUserCountRule( + ToolUtils.getRule(result.getPowerOutageUserCountList())); + } if (!CollectionUtil.isEmpty(result.getFaultUserCountList())) { result.getHourlyChartYScaleRuleCollect().setFaultUserCountRule( ToolUtils.getRule(result.getFaultUserCountList())); diff --git a/src/main/java/com/southern/power/grid/utils/ToolUtils.java b/src/main/java/com/southern/power/grid/utils/ToolUtils.java index 9f84a77..89bf8b5 100644 --- a/src/main/java/com/southern/power/grid/utils/ToolUtils.java +++ b/src/main/java/com/southern/power/grid/utils/ToolUtils.java @@ -16,7 +16,6 @@ public class ToolUtils { if (first instanceof Integer) { int min = list.stream().mapToInt(Number::intValue).min().orElse(0); int max = list.stream().mapToInt(Number::intValue).max().orElse(0); - max = max == 0 ? 100 : max; double interval = Math.round((double) (max - min) / 10 * 10) / 10.0; return new ChartYScaleRuleVO().setMin(min).setMax(max).setInterval(interval); } else if (first instanceof Double) { @@ -24,7 +23,6 @@ public class ToolUtils { int floorMin = (int) Math.floor(min); double max = list.stream().mapToDouble(Number::doubleValue).max().orElse(0); int ceilMax = (int) Math.ceil(max); - ceilMax = ceilMax == 0 ? 100 : ceilMax; double interval = Math.round((double) (ceilMax - floorMin) / 10 * 10) / 10.0; return new ChartYScaleRuleVO().setMin(floorMin).setMax(ceilMax).setInterval(interval); } else {