From b341245d84fb1e4743e8d34bc9a4f742b0fb9a5e Mon Sep 17 00:00:00 2001
From: whyclxw <810412026@qq.com>
Date: 星期四, 29 五月 2025 11:00:39 +0800
Subject: [PATCH] 电压上一季度历史实时

---
 src/main/java/com/whyc/webSocket/RealTimeSocket.java |   54 +++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 49 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/whyc/webSocket/RealTimeSocket.java b/src/main/java/com/whyc/webSocket/RealTimeSocket.java
index a9c73fe..b899802 100644
--- a/src/main/java/com/whyc/webSocket/RealTimeSocket.java
+++ b/src/main/java/com/whyc/webSocket/RealTimeSocket.java
@@ -6,6 +6,7 @@
 import com.whyc.dto.Response;
 import com.whyc.factory.BattCapFactory;
 import com.whyc.pojo.db_batt_testdata.BatttestdataInf;
+import com.whyc.pojo.db_ram_db.BattRtdata;
 import com.whyc.pojo.db_ram_db.BattRtstate;
 import com.whyc.pojo.db_ram_db.DeviceState;
 import com.whyc.pojo.db_ram_db.PwrdevAcdcdata;
@@ -23,6 +24,7 @@
 import javax.websocket.*;
 import javax.websocket.server.ServerEndpoint;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 @Component
@@ -56,6 +58,9 @@
 
     //鐢垫簮淇℃伅
     private static PowerInfService powerInfService;
+
+    //鍗曚綋淇℃伅
+    private static BattRtdataService rtdataService;
 
 
     private volatile boolean runFlag = true;
@@ -114,6 +119,11 @@
     @Autowired
     public void setPowerInfService(PowerInfService powerInfService) {
         RealTimeSocket.powerInfService = powerInfService;
+    }
+
+    @Autowired
+    public void setBattRtdataService(BattRtdataService rtdataService) {
+        RealTimeSocket.rtdataService = rtdataService;
     }
 
 
@@ -286,11 +296,45 @@
     }
     //鑾峰彇鍐呴樆鐣岄潰淇℃伅
     private Response getResPage(RealTimeDto realDto) {
-        return new Response().set(1);
+        Map<String, Object> map=new HashMap<>();
+        try {
+            //瀹炴椂鑾峰彇鍗曚綋淇℃伅
+            List<BattRtdata> rtdataList = rtdataService.getRtdataRealInfo(realDto.getBattgroupId());
+            map.put("rtdataList",rtdataList);
+            return new Response().setII(1,true,map,"鐢靛帇鐣岄潰淇℃伅鎺ㄩ��");
+        }catch (Exception e){
+            return new Response().set(1,false,"鐢靛帇鐣岄潰淇℃伅鎺ㄩ��");
+        }
     }
     //鑾峰彇鐢靛帇鐣岄潰淇℃伅
     private Response getVolPage(RealTimeDto realDto) {
-        return new Response().set(1);
+        Map<String, Object> map=new HashMap<>();
+        Float maxVol=0f;
+        Float minVol=0f;
+        Float avgVol=0f;
+        try {
+            //瀹炴椂鑾峰彇鍗曚綋淇℃伅
+            List<BattRtdata> rtdataList = rtdataService.getRtdataRealInfo(realDto.getBattgroupId());
+            if(rtdataList!=null&&rtdataList.size()>0){
+                for(BattRtdata battRtdata:rtdataList) {
+                    if (battRtdata.getMonVol() > maxVol) {
+                        maxVol = battRtdata.getMonVol();
+                    }
+                    if (battRtdata.getMonVol() < minVol) {
+                        minVol = battRtdata.getMonVol();
+                    }
+                    avgVol += battRtdata.getMonVol();
+                }
+                avgVol=avgVol/rtdataList.size();
+            }
+            map.put("rtdataList",rtdataList);
+            map.put("maxVol",maxVol);
+            map.put("minVol",minVol);
+            map.put("avgVol",avgVol);
+            return new Response().setII(1,true,map,"鐢靛帇鐣岄潰淇℃伅鎺ㄩ��");
+        }catch (Exception e){
+            return new Response().set(1,false,"鐢靛帇鐣岄潰淇℃伅鎺ㄩ��");
+        }
     }
     //鑾峰彇鐢垫簮鐣岄潰淇℃伅
     private Response getPowerPage(RealTimeDto realDto) {
@@ -317,9 +361,9 @@
             //鑾峰彇涓婁竴娆℃爣鍑嗘牳瀹逛俊鎭�
             BatttestdataInf tinfData= batttestdataInfService.getLastStandardTestData(realDto.getBattgroupId());
             map.put("tinfData",tinfData);
-            //鑾峰彇杩戝崐灏忔椂鐢垫簮鏁版嵁
-            //鑾峰彇杩戝崐灏忔椂鏁存祦鍣ㄦ暟鎹�
-            //鑾峰彇杩戝崐灏忔椂鏍稿璁惧鏁版嵁
+            //鑾峰彇杩戝崐灏忔椂鐢垫簮鏁版嵁锛屾暣娴佸櫒鏁版嵁锛屾牳瀹硅澶囨暟鎹紙鎺ㄩ�佸疄鏃讹紝鎺ュ彛鏌ヨ鏈�杩戝崐灏忔椂鏁版嵁锛�
+            PwrdevAcdcdata pwrdevAcdcdata = pwrdevAcdcdataService.getPwrRealInfo(realDto.getPowerId());
+            map.put("pwrdevAcdcdata",pwrdevAcdcdata);
             return new Response().setII(1,true,map,"绯荤粺姒傝堪鎺ㄩ��");
         }catch (Exception e) {
             e.printStackTrace();

--
Gitblit v1.9.1