From 3f2c786d82463b073eb8ba83553fdcc67131cb89 Mon Sep 17 00:00:00 2001
From: whyclxw <810412026@qq.com>
Date: 星期四, 29 五月 2025 13:11:02 +0800
Subject: [PATCH] 实时页面内阻测试控制

---
 src/main/java/com/whyc/webSocket/RealTimeSocket.java |   87 ++++++++++++++++++++++++++++++-------------
 1 files changed, 61 insertions(+), 26 deletions(-)

diff --git a/src/main/java/com/whyc/webSocket/RealTimeSocket.java b/src/main/java/com/whyc/webSocket/RealTimeSocket.java
index 2f5aaf1..e5c7fdb 100644
--- a/src/main/java/com/whyc/webSocket/RealTimeSocket.java
+++ b/src/main/java/com/whyc/webSocket/RealTimeSocket.java
@@ -5,6 +5,7 @@
 import com.whyc.dto.RealTimeDto;
 import com.whyc.dto.Response;
 import com.whyc.factory.BattCapFactory;
+import com.whyc.pojo.db_batt_testdata.BattresdataInf;
 import com.whyc.pojo.db_batt_testdata.BatttestdataInf;
 import com.whyc.pojo.db_ram_db.BattRtdata;
 import com.whyc.pojo.db_ram_db.BattRtstate;
@@ -61,6 +62,9 @@
 
     //鍗曚綋淇℃伅
     private static BattRtdataService rtdataService;
+
+    //鍐呴樆娴嬭瘯淇℃伅
+    private static BattresdataInfService battresdataInfService;
 
 
     private volatile boolean runFlag = true;
@@ -124,6 +128,11 @@
     @Autowired
     public void setBattRtdataService(BattRtdataService rtdataService) {
         RealTimeSocket.rtdataService = rtdataService;
+    }
+
+    @Autowired
+    public void setBattresdataInfService(BattresdataInfService battresdataInfService) {
+        RealTimeSocket.battresdataInfService = battresdataInfService;
     }
 
 
@@ -297,21 +306,9 @@
     //鑾峰彇鍐呴樆鐣岄潰淇℃伅
     private Response getResPage(RealTimeDto realDto) {
         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) {
-        Map<String, Object> map=new HashMap<>();
-        Float maxVol=0f;
-        Float minVol=0f;
-        Float avgVol=0f;
+        Float maxData=0f;
+        Float minData=0f;
+        Float avgData=0f;
         try {
             //瀹炴椂鑾峰彇鍗曚綋淇℃伅
             List<BattRtdata> rtdataList = rtdataService.getRtdataRealInfo(realDto.getBattgroupId());
@@ -319,23 +316,61 @@
                 for(int i=0;i<rtdataList.size();i++) {
                     BattRtdata battRtdata=rtdataList.get(i);
                     if(i==0){
-                        maxVol=battRtdata.getMonVol();
-                        minVol=battRtdata.getMonVol();
+                        maxData=battRtdata.getMonRes();
+                        minData=battRtdata.getMonRes();
                     }
-                    if (battRtdata.getMonVol() >= maxVol) {
-                        maxVol = battRtdata.getMonVol();
+                    if (battRtdata.getMonRes() >= maxData) {
+                        maxData = battRtdata.getMonRes();
                     }
-                    if (battRtdata.getMonVol() <= minVol) {
-                        minVol = battRtdata.getMonVol();
+                    if (battRtdata.getMonRes() <= minData) {
+                        minData = battRtdata.getMonRes();
                     }
-                    avgVol += battRtdata.getMonVol();
+                    avgData += battRtdata.getMonRes();
                 }
-                avgVol=avgVol/rtdataList.size();
+                avgData=avgData/rtdataList.size();
             }
             map.put("rtdataList",rtdataList);
-            map.put("maxVol",maxVol);
-            map.put("minVol",minVol);
-            map.put("avgVol",avgVol);
+            map.put("maxData",maxData);
+            map.put("minData",minData);
+            map.put("avgData",avgData);
+            //涓婁竴娆″唴闃绘祴璇曟暟鎹�
+            BattresdataInf rinfData= battresdataInfService.getLastTestData(realDto.getBattgroupId());
+            map.put("rinfData",rinfData);
+            return new Response().setII(1,true,map,"鍐呴樆鐣岄潰淇℃伅鎺ㄩ��");
+        }catch (Exception e){
+            return new Response().set(1,false,"鍐呴樆鐣岄潰淇℃伅鎺ㄩ��");
+        }
+    }
+    //鑾峰彇鐢靛帇鐣岄潰淇℃伅
+    private Response getVolPage(RealTimeDto realDto) {
+        Map<String, Object> map=new HashMap<>();
+        Float maxData=0f;
+        Float minData=0f;
+        Float avgData=0f;
+        try {
+            //瀹炴椂鑾峰彇鍗曚綋淇℃伅
+            List<BattRtdata> rtdataList = rtdataService.getRtdataRealInfo(realDto.getBattgroupId());
+            if(rtdataList!=null&&rtdataList.size()>0){
+                for(int i=0;i<rtdataList.size();i++) {
+                    BattRtdata battRtdata=rtdataList.get(i);
+                    if(i==0){
+                        maxData=battRtdata.getMonVol();
+                        minData=battRtdata.getMonVol();
+                    }
+                    if (battRtdata.getMonVol() >= maxData) {
+                        maxData = battRtdata.getMonVol();
+                    }
+                    if (battRtdata.getMonVol() <= minData) {
+                        minData = battRtdata.getMonVol();
+                    }
+                    avgData += battRtdata.getMonVol();
+                }
+                avgData=avgData/rtdataList.size();
+            }
+            map.put("rtdataList",rtdataList);
+            map.put("maxData",maxData);
+            map.put("minData",minData);
+            map.put("avgData",avgData);
             return new Response().setII(1,true,map,"鐢靛帇鐣岄潰淇℃伅鎺ㄩ��");
         }catch (Exception e){
             return new Response().set(1,false,"鐢靛帇鐣岄潰淇℃伅鎺ㄩ��");

--
Gitblit v1.9.1