From 665e2c159aaea0b95a29a0d64aaf209026a52527 Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期四, 29 五月 2025 13:23:52 +0800
Subject: [PATCH] 日功率因数

---
 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java |   27 +++++++++++++++++++++++++++
 1 files changed, 27 insertions(+), 0 deletions(-)

diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java
index ad83a95..78d8116 100644
--- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java
@@ -11,6 +11,7 @@
 import com.iailab.module.ansteel.api.vo.PowerCapacitorHisPageReqVO;
 import com.iailab.module.ansteel.api.vo.PowerMaxDemandMainPageReqVO;
 import com.iailab.module.ansteel.common.utils.DecimalUtil;
+import com.iailab.module.ansteel.common.utils.PowerUtil;
 import com.iailab.module.ansteel.power.entity.*;
 import com.iailab.module.ansteel.power.service.*;
 import com.iailab.module.data.api.point.DataPointApi;
@@ -232,6 +233,32 @@
                     powerNetFactorDTO.setQstatus(1);
                 }
             }
+
+            // 日功率因数
+            if (entity.getPDay() != null && entity.getQDay() != null) {
+                List<String> pointNos = new ArrayList<>();
+                pointNos.add(entity.getPDay());
+                pointNos.add(entity.getQDay());
+                Map<String, Object> pointsRealValue = dataPointApi.queryPointsRealValue(pointNos);
+                if (!CollectionUtils.isEmpty(pointsRealValue)) {
+                    double pValue = new BigDecimal(pointsRealValue.get(entity.getPDay()).toString()).doubleValue();
+                    double qValue = new BigDecimal(pointsRealValue.get(entity.getQDay()).toString()).doubleValue();
+                    powerNetFactorDTO.setDayCos(new BigDecimal(PowerUtil.calculateCos(pValue, qValue)).setScale(2, BigDecimal.ROUND_HALF_UP)) ;
+                }
+            }
+
+            // 月功率因数
+            if (entity.getPMon() != null && entity.getQMon() != null) {
+                List<String> pointNos = new ArrayList<>();
+                pointNos.add(entity.getPMon());
+                pointNos.add(entity.getQMon());
+                Map<String, Object> pointsRealValue = dataPointApi.queryPointsRealValue(pointNos);
+                if (!CollectionUtils.isEmpty(pointsRealValue)) {
+                    double pValue = new BigDecimal(pointsRealValue.get(entity.getPMon()).toString()).doubleValue();
+                    double qValue = new BigDecimal(pointsRealValue.get(entity.getQMon()).toString()).doubleValue();
+                    powerNetFactorDTO.setMonthCos(new BigDecimal(PowerUtil.calculateCos(pValue, qValue)).setScale(2, BigDecimal.ROUND_HALF_UP)) ;
+                }
+            }
             result.add(powerNetFactorDTO);
         }
         return success(result);

--
Gitblit v1.9.3