From 5c8d171c591a022d3a775c38ec0acfe0c633b6e1 Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期二, 06 五月 2025 16:43:27 +0800
Subject: [PATCH] 功率因数-母线电压状态

---
 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 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 abe2985..1df0cfd 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
@@ -77,6 +77,9 @@
     @Autowired
     private PowerNetDropdownService powerNetDropdownService;
 
+    @Autowired
+    private PowerVoltageStatusService powerVoltageStatusService;
+
     @GetMapping("/net-factor/list")
     @Operation(summary = "功率因数-电网拓扑")
     public CommonResult<List<PowerNetFactorDTO>> getPowerNetFactorList(@RequestParam Map<String, Object> params) {
@@ -889,4 +892,36 @@
         return success(result);
     }
 
+
+    @GetMapping("/voltage/status-list")
+    @Operation(summary = "功率因数-母线电压状态")
+    public CommonResult<List<PowerVoltageStatusDTO>> getPowerVoltageStatusList(@RequestParam Map<String, Object> params) {
+        List<PowerVoltageStatusDTO> result = new ArrayList<>();
+        List<PowerVoltageStatusEntity> list = powerVoltageStatusService.list(params);
+        if (CollectionUtils.isEmpty(list)) {
+            return success(result);
+        }
+
+        List<String> points = new ArrayList<>();
+        for (PowerVoltageStatusEntity entity : list) {
+            if (StringUtils.isBlank(entity.getPoint())) {
+                continue;
+            }
+            points.add(entity.getPoint());
+        }
+        Map<String, Object> pointsRealValue = new HashMap<>();
+        if (!CollectionUtils.isEmpty(points)) {
+            pointsRealValue = dataPointApi.queryPointsRealValue(points);
+        }
+        for (PowerVoltageStatusEntity entity : list) {
+            PowerVoltageStatusDTO dto = ConvertUtils.sourceToTarget(entity, PowerVoltageStatusDTO.class);
+            dto.setStatus(0);
+            BigDecimal value = new BigDecimal(pointsRealValue.get(entity.getPoint()).toString());
+            if (value.compareTo(entity.getLimit()) > 0) {
+                dto.setStatus(1);
+            }
+            result.add(dto);
+        }
+        return success(result);
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3