From 8fb99de46ce93eb442b918d8973f3ff789ce1769 Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期三, 07 五月 2025 07:01:02 +0800
Subject: [PATCH] 电流状态

---
 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java |   47 ++++++++++++++++++++++++++++++++++-------------
 1 files changed, 34 insertions(+), 13 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 cc1ca27..0640be5 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
@@ -103,14 +103,23 @@
             boolean cosFlag = false;
             try {
                 List<String> points = new ArrayList<>();
+                if (StringUtils.isNotBlank(entity.getCurA())) {
+                    points.add(entity.getCurA());
+                }
                 if (StringUtils.isNotBlank(entity.getCurP())) {
                     points.add(entity.getCurP());
                 }
                 if (StringUtils.isNotBlank(entity.getCurQ())) {
                     points.add(entity.getCurQ());
                 }
+                if (StringUtils.isNotBlank(entity.getCurCos())) {
+                    points.add(entity.getCurCos());
+                }
                 if (!CollectionUtils.isEmpty(points)) {
                     Map<String, Object> pointsRealValue = dataPointApi.queryPointsRealValue(points);
+                    if (pointsRealValue.get(entity.getCurA()) != null) {
+                        powerNetFactorDTO.setCurA(new BigDecimal(pointsRealValue.get(entity.getCurA()).toString()));
+                    }
                     if (pointsRealValue.get(entity.getCurP()) != null) {
                         powerNetFactorDTO.setCurP(new BigDecimal(pointsRealValue.get(entity.getCurP()).toString()));
                     }
@@ -157,39 +166,51 @@
                 log.info(entity.getNodeName() + "获取预测值异常," + ex.getMessage());
             }
 
-            // 设置功率因数状态
-            if (cosFlag && powerNetFactorDTO.getCurCos() != null) {
-                BigDecimal curCos = powerNetFactorDTO.getCurCos();
-                if (entity.getLimitL() != null && curCos.compareTo(entity.getLimitL()) < 0) {
+            // 设置电流状态
+            if (powerNetFactorDTO.getCurA() != null) {
+                BigDecimal curA = powerNetFactorDTO.getCurA();
+                if (entity.getLimitL() != null && curA.compareTo(entity.getLimitL()) < 0) {
                     powerNetFactorDTO.setStatus(1);
-                } else if (entity.getLimitH() != null && curCos.compareTo(entity.getLimitH()) > 0) {
+                } else if (entity.getLimitH() != null && curA.compareTo(entity.getLimitH()) > 0) {
                     powerNetFactorDTO.setStatus(1);
                 } else {
                     powerNetFactorDTO.setStatus(0);
+                }
+            }
+
+            // 设置功率因数状态
+            if (cosFlag && powerNetFactorDTO.getCurCos() != null) {
+                BigDecimal curCos = powerNetFactorDTO.getCurCos();
+                if (entity.getCosLimitL() != null && curCos.compareTo(entity.getCosLimitL()) < 0) {
+                    powerNetFactorDTO.setQStatus(1);
+                } else if (entity.getCosLimitH() != null && curCos.compareTo(entity.getCosLimitH()) > 0) {
+                    powerNetFactorDTO.setQStatus(1);
+                } else {
+                    powerNetFactorDTO.setQStatus(0);
                 }
             }
 
             // 设置有功预警状态
             if (powerNetFactorDTO.getCurP() != null) {
                 BigDecimal curP = powerNetFactorDTO.getCurP();
-                if (entity.getPLimitH() != null && curP.compareTo(entity.getPLimitL()) < 0) {
-                    powerNetFactorDTO.setStatus(1);
+                if (entity.getPLimitL() != null && curP.compareTo(entity.getPLimitL()) < 0) {
+                    powerNetFactorDTO.setPStatus(1);
                 } else if (entity.getPLimitH() != null && curP.compareTo(entity.getPLimitH()) > 0) {
-                    powerNetFactorDTO.setStatus(1);
+                    powerNetFactorDTO.setPStatus(1);
                 } else {
-                    powerNetFactorDTO.setStatus(0);
+                    powerNetFactorDTO.setPStatus(0);
                 }
             }
 
             // 设置无功预警状态
             if (powerNetFactorDTO.getCurQ() != null) {
                 BigDecimal curQ = powerNetFactorDTO.getCurQ();
-                if (entity.getQLimitH() != null && curQ.compareTo(entity.getQLimitL()) < 0) {
-                    powerNetFactorDTO.setStatus(1);
+                if (entity.getQLimitL() != null && curQ.compareTo(entity.getQLimitL()) < 0) {
+                    powerNetFactorDTO.setQStatus(1);
                 } else if (entity.getQLimitH() != null && curQ.compareTo(entity.getQLimitH()) > 0) {
-                    powerNetFactorDTO.setStatus(1);
+                    powerNetFactorDTO.setQStatus(1);
                 } else {
-                    powerNetFactorDTO.setStatus(0);
+                    powerNetFactorDTO.setQStatus(0);
                 }
             }
         }

--
Gitblit v1.9.3