From 51eb63d31f771dd71b34d22e23c94ab2ee27f5c4 Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期五, 20 五月 2022 13:40:40 +0800
Subject: [PATCH] fix
---
ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightService.java | 51 ++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 46 insertions(+), 5 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightService.java
index 8babd79..8d43930 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightService.java
@@ -600,6 +600,47 @@
*/
}
+ /**
+ * 鍗曚釜浠诲姟涓�澶╃殑鑺傝兘鐜�
+ *
+ * @return
+ */
+ public BigDecimal jisuan(LightTaskDto Task) {
+ final BigDecimal[] bigDecimalResult = {new BigDecimal(0.00)};
+ /**
+ * 鑺傝兘鐜囪绠楀紑濮�
+ */
+ //TODO
+ ControlLightCommandVO startTime = parseSwitchLightCommand(Task.getOpenOrder());
+ ControlLightCommandVO endTime = parseSwitchLightCommand(Task.getCloseOrder());
+ //瀛樻斁鑺傝兘鐜�
+ //鑾峰彇鍒板崟鐏换鍔$殑鑺傝兘鐜�
+ if (Task.getControlOrder() != null && !Task.getControlOrder().isEmpty()) {//鏈夋帶绛夋寚浠� 鎷嗗垎璁$畻
+ List<ControlLightCommandVO> controlLightCommandVOS = parseControlLightCommand(Task.getControlOrder());
+
+ for (int i = 0; i < controlLightCommandVOS.size(); i++) {
+ BigDecimal bigDecimal = calculateEnergySaving(startTime, controlLightCommandVOS.get(i));
+ bigDecimalResult[0] = bigDecimalResult[0].add(bigDecimal);
+ if (controlLightCommandVOS.size() == (i + 1)) {
+ BigDecimal bigDecimal1 = calculateEnergySaving(controlLightCommandVOS.get(i), endTime);
+ bigDecimalResult[0] = bigDecimalResult[0].add(bigDecimal1);
+ break;
+ }
+ startTime = controlLightCommandVOS.get(i);
+// saving.add(bigDecimal);
+ }
+ } else {//鏃犳帶鐏寚浠� 鐩存帴璁$畻
+ BigDecimal bigDecimal = calculateEnergySaving(startTime, endTime);
+// saving.add(bigDecimal);
+ bigDecimalResult[0] = bigDecimalResult[0].add(bigDecimal);
+ }
+ return bigDecimalResult[0];
+
+ /**
+ * 鑺傝兘鐜囪绠楃粨鏉�
+ */
+ }
+
/**
* 涓�澶╃殑鑳借��
@@ -637,10 +678,10 @@
System.out.println(bigEnergy2 + "鏃堕暱*浜害===========================");
//璁$畻鑳借��(鎬� 鏃堕暱*浜害*鍔熺巼)
- if(bigEnergy2.compareTo(new BigDecimal(0)) != 0){
- BigDecimal totalEnergy3 = totalEnergy(bigEnergy2, Task.getLightAdress(), poleTaskLightPowerBos);
- bigEnergy[0] = bigEnergy[0].add(totalEnergy3);
- }
+ if (bigEnergy2.compareTo(new BigDecimal(0)) != 0) {
+ BigDecimal totalEnergy3 = totalEnergy(bigEnergy2, Task.getLightAdress(), poleTaskLightPowerBos);
+ bigEnergy[0] = bigEnergy[0].add(totalEnergy3);
+ }
break;
}
startTime = controlLightCommandVOS.get(i);
@@ -650,7 +691,7 @@
//璁$畻鑳借��(閮ㄥ垎 鏃堕暱*浜害)
BigDecimal Energy = calculateEnergyConsumption(startTime, endTime);
//璁$畻鑳借��(鎬� 鏃堕暱*浜害*鍔熺巼)
- //鍒ゆ柇 Energy==0 鍒欎笉璁$畻
+ //鍒ゆ柇 Energy==0 鍒欎笉璁$畻
if (Energy.compareTo(new BigDecimal(0)) != 0) {
BigDecimal totalEnergy = totalEnergy(Energy, Task.getLightAdress(), poleTaskLightPowerBos);
bigEnergy[0] = bigEnergy[0].add(totalEnergy);
--
Gitblit v1.9.3