From cfdb274a6e9303f78315b21c2dc66c2a2839fb39 Mon Sep 17 00:00:00 2001
From: whyclxw <810412026@qq.com>
Date: 星期四, 19 六月 2025 20:30:37 +0800
Subject: [PATCH] 判断优良电源性能

---
 src/main/java/com/whyc/service/BatttestdataInfService.java  |   20 +++++----
 src/main/java/com/whyc/service/SubTablePageInfoService.java |   28 ++++++++++++++
 src/main/java/com/whyc/controller/AlmParamController.java   |    4 +-
 src/main/java/com/whyc/service/BattRealdataIdService.java   |   12 +-----
 4 files changed, 43 insertions(+), 21 deletions(-)

diff --git a/src/main/java/com/whyc/controller/AlmParamController.java b/src/main/java/com/whyc/controller/AlmParamController.java
index b3552d3..16b6c4a 100644
--- a/src/main/java/com/whyc/controller/AlmParamController.java
+++ b/src/main/java/com/whyc/controller/AlmParamController.java
@@ -136,8 +136,8 @@
 
     @GetMapping("getBattHisRealInAlm")
     @ApiOperation("鐢垫睜鍛婅鐐瑰嚮鍏蜂綋鍛婅淇℃伅鏌ョ湅浠庡憡璀﹀紑濮嬫椂闂村埌鐜板湪鐨勫巻鍙插疄鏃舵暟鎹�")
-    public Response getBattHisRealInAlm(@RequestParam Integer battgroupId,@RequestParam String startTime,@RequestParam(required = false) Integer monNum) throws ParseException, InterruptedException {
-        return battRealdataIdService.getBattHisRealInAlm(battgroupId,startTime,monNum);
+    public Response getBattHisRealInAlm(@RequestParam Integer battgroupId,@RequestParam String startTime,@RequestParam(required = false) Integer almId) throws ParseException, InterruptedException {
+        return battRealdataIdService.getBattHisRealInAlm(battgroupId,startTime,almId);
     }
 
 }
\ No newline at end of file
diff --git a/src/main/java/com/whyc/service/BattRealdataIdService.java b/src/main/java/com/whyc/service/BattRealdataIdService.java
index 3b55cb9..9641b67 100644
--- a/src/main/java/com/whyc/service/BattRealdataIdService.java
+++ b/src/main/java/com/whyc/service/BattRealdataIdService.java
@@ -219,7 +219,7 @@
         return new Response().set(1, dataListSorted);
     }
     //鐢垫睜鍛婅鐐瑰嚮鍏蜂綋鍛婅淇℃伅鏌ョ湅浠庡憡璀﹀紑濮嬫椂闂村埌鐜板湪鐨勫巻鍙插疄鏃舵暟鎹�
-    public Response getBattHisRealInAlm(Integer battgroupId, String startTime, Integer monNum) throws ParseException, InterruptedException {
+    public Response getBattHisRealInAlm(Integer battgroupId, String startTime, Integer almId) throws ParseException, InterruptedException {
         List<RealDateDTO> dataList = new LinkedList<>();
         List<List<Date>> monthTimeList = DateUtil.getMonthTime(ThreadLocalUtil.parse(startTime,1),new Date());
         ThreadPoolExecutor pool = ThreadPoolExecutorFactory.getPoolExecutor();
@@ -237,15 +237,7 @@
                 int tableNum = subTablePageInfoService.judgeTable_realdata(table);
                 List<RealDateDTO> list = new ArrayList();
                 if (tableNum > 0) {
-                    //鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈�澶ф渶灏弐ecordNum纭繚鏁版嵁鐨勫畬鏁�
-                    List recordNums= subTablePageInfoService.getMaxAndMinRecordNum(realdata);
-                    Integer maxRecordNum= 0;
-                    Integer minRecordNum= 0;
-                    if(recordNums.size()>0){
-                        maxRecordNum=(Integer)recordNums.get(0);
-                        minRecordNum=(Integer)recordNums.get(1);
-                    }
-                    list = subTablePageInfoService.getBattRealDataHis(realdata,1,maxRecordNum,minRecordNum);
+                    list = subTablePageInfoService.getBattHisRealInAlm(realdata);
                 }
                 dataList.addAll(list);
                 latch.countDown();
diff --git a/src/main/java/com/whyc/service/BatttestdataInfService.java b/src/main/java/com/whyc/service/BatttestdataInfService.java
index 759b222..1a81da5 100644
--- a/src/main/java/com/whyc/service/BatttestdataInfService.java
+++ b/src/main/java/com/whyc/service/BatttestdataInfService.java
@@ -941,16 +941,18 @@
    //浼樿壇鐢垫簮鏁伴噺缁熻(1.2.7)
     public Response getPwr7Statistic(Pwr7Stic stic) throws NoSuchFieldException, IllegalAccessException {
         Date inuseTimeStart =new Date();
-        if(stic.getInuseYear()==1){
-            //鎶曞叆浣跨敤鏃堕棿鏉′欢绛涢��
-            LocalDateTime startTime = LocalDateTime.now().minusYears(5);
-            inuseTimeStart = DateUtil.convertToDate(startTime);
-        }else{
-            //鎶曞叆浣跨敤鏃堕棿鏉′欢绛涢��
-            LocalDateTime startTime = LocalDateTime.now().minusYears(stic.getInuseYear());
-            inuseTimeStart = DateUtil.convertToDate(startTime);
+        if(stic.getInuseYear()!=null){
+            if(stic.getInuseYear()==1){
+                //鎶曞叆浣跨敤鏃堕棿鏉′欢绛涢��
+                LocalDateTime startTime = LocalDateTime.now().minusYears(5);
+                inuseTimeStart = DateUtil.convertToDate(startTime);
+            }else{
+                //鎶曞叆浣跨敤鏃堕棿鏉′欢绛涢��
+                LocalDateTime startTime = LocalDateTime.now().minusYears(stic.getInuseYear());
+                inuseTimeStart = DateUtil.convertToDate(startTime);
+            }
+            stic.setPwrInUseTime(inuseTimeStart);
         }
-        stic.setPwrInUseTime(inuseTimeStart);
         //1鏌ヨ绗﹀悎鏉′欢鐨勭數姹犵粍
         List<PowerInf> pinfList=powerInfService.getPwr7Statistic(stic);
         if(pinfList==null||pinfList.size()==0){
diff --git a/src/main/java/com/whyc/service/SubTablePageInfoService.java b/src/main/java/com/whyc/service/SubTablePageInfoService.java
index 083b069..568b164 100644
--- a/src/main/java/com/whyc/service/SubTablePageInfoService.java
+++ b/src/main/java/com/whyc/service/SubTablePageInfoService.java
@@ -772,6 +772,34 @@
         });
         return list;
     }
+    //鐢垫睜鏁版嵁鍘嗗彶瀹炴椂澶勭悊(棰勮鍒嗘瀽)
+    public List<RealDateDTO> getBattHisRealInAlm(BattRealdataId realdata) {
+        String sql=" select record_time, group_vol, online_vol,group_curr, mon_vol, mon_tmp, mon_res, mon_num,record_num  " +
+                "               from db_data_history.tb_batt_realdata_"+realdata.getTableName()+" " +
+                "               where record_time >= '"+ThreadLocalUtil.format(realdata.getRecordTime(),1)+"' " +
+                "               and record_time <= '"+ThreadLocalUtil.format(realdata.getRecordTime1(),1)+"' ";
+        List<RealDateDTO> list = sqlExecuteService.executeQuery_call(sql, new CallBack() {
+            @Override
+            public List getResults(ResultSet rs) throws SQLException {
+                List<RealDateDTO> list=new ArrayList<>();
+                while (rs.next()){
+                    RealDateDTO ph=new RealDateDTO();
+                    ph.setRecordTime(rs.getTimestamp("record_time"));
+                    ph.setGroupVol(rs.getFloat("group_vol"));
+                    ph.setOnlineVol(rs.getFloat("online_vol"));
+                    ph.setGroupCurr(rs.getFloat("group_curr"));
+                    ph.setMonVol(rs.getFloat("mon_vol"));
+                    ph.setMonTmp(rs.getFloat("mon_tmp"));
+                    ph.setMonRes(rs.getFloat("mon_res"));
+                    ph.setMonNum(rs.getInt("mon_num"));
+                    ph.setRecordNum(rs.getInt("record_num"));
+                    list.add(ph);
+                }
+                return list;
+            }
+        });
+        return list;
+    }
     //鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈�澶ф渶灏弐ecordNum纭繚鏁版嵁鐨勫畬鏁�
     public List getMaxAndMinRecordNum(BattRealdataId realdata) {
         String sql="select max(record_num) as maxRecordNum,min(record_num) as minRecordNum " +

--
Gitblit v1.9.1