From 3bd9824f9140c3c42643806b454d3be23259f515 Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期二, 24 六月 2025 16:12:36 +0800 Subject: [PATCH] 点击右侧折线图画出电池组所有完整周期的实际容量,浮充电压变化,单体内阻图(1.2.15/16/17) --- src/main/java/com/whyc/service/BatttestdataInfService.java | 49 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 47 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/whyc/service/BatttestdataInfService.java b/src/main/java/com/whyc/service/BatttestdataInfService.java index f2c8d87..6811e8c 100644 --- a/src/main/java/com/whyc/service/BatttestdataInfService.java +++ b/src/main/java/com/whyc/service/BatttestdataInfService.java @@ -289,6 +289,7 @@ map.put("standCapDiff",0f); Float sumCap=0f; Float maxCap=0f; + Float minCap=0f; Float standCapDiff=0f; List<ComPareChart> capList=new ArrayList<>(); List<ComPareChart> resList=new ArrayList<>(); @@ -354,9 +355,11 @@ String precentCap = String.format("%.5f",(grouprealCap/binf.getMoncapstd()*100)); res.setPrecentCap(precentCap); sumCap+=grouprealCap; - standCapDiff=grouprealCap-maxCap; if(grouprealCap>=maxCap){ maxCap=grouprealCap; + } + if(grouprealCap<=minCap){ + minCap=grouprealCap; } } } @@ -382,7 +385,7 @@ resList.add(resChart); } map.put("avgCap",sumCap/binfList.size()); - map.put("standCapDiff",standCapDiff); + map.put("standCapDiff",maxCap-minCap); PageInfo pageInfo=PageInfoUtils.list2PageInfo(comparelist, stic.getPageNum(), stic.getPageSize()); return new Response().setIII(1,comparelist.size()>0,pageInfo,map,"钃勭數姹犵粍瀵规瘮鍒嗘瀽鐣岄潰锛堝悓涓�鍝佺墝鍚屼竴鏃堕棿锛�"); @@ -1045,4 +1048,46 @@ wrapper.last(" limit 1"); return mapper.selectOne(wrapper); } + //鐐瑰嚮鍙充晶鎶樼嚎鍥剧敾鍑虹數姹犵粍鎵�鏈夊畬鏁村懆鏈熺殑瀹為檯瀹归噺鍙樺寲鍥�(1.2.15/16/17) + public Response getRealCapChangeByBattgroupId(Integer battgroupId) { + QueryWrapper wrapper = new QueryWrapper(); + wrapper.eq("battgroup_id", battgroupId); + wrapper.eq("test_type", 3); + wrapper.eq("test_starttype", 3); + wrapper.eq("data_available", 1);//涓�娆℃湁鏁堢殑璁板綍 + wrapper.last(" ORDER BY test_starttime DESC "); + List<BatttestdataInf> list = mapper.selectList(wrapper); + //鑾峰彇鐢垫睜缁勭殑鏍囩О瀹归噺 + BattInf binf=battInfService.getBattgroupIdInf(battgroupId); + List<ComPareChangeCurve> curvelist=new ArrayList<>(); + for (BatttestdataInf tinf:list) { + int hourRate = BattCapFactory.GetHourRate(tinf.getTestCap(), tinf.getTestCurr()); + Float realCap = (float) BattCapFactory.GetMonomerCap(binf.getMoncapstd(), hourRate, tinf.getTestCap(), tinf.getMaxMonvol(), tinf.getMinMonvol(), tinf.getGroupVol(), BattCapFactory.CapType_Real); + ComPareChangeCurve curve=new ComPareChangeCurve(); + curve.setBattgroupId(battgroupId); + curve.setStartTime(tinf.getTestStarttime()); + curve.setCurveValue(realCap); + curvelist.add(curve); + } + return new Response().setII(1,list.size()>0,curvelist,"鐐瑰嚮鍙充晶鎶樼嚎鍥剧敾鍑虹數姹犵粍鎵�鏈夊畬鏁村懆鏈熺殑瀹為檯瀹归噺鍙樺寲鍥�(1.2.15/16/17)"); + } + //鐐瑰嚮鍙充晶鎶樼嚎鍥剧敾鍑虹數姹犵粍鎵�鏈夊畬鏁村懆鏈熺殑娴厖鐢靛帇鍙樺寲鍥�(1.2.15/16/17) + public Response getFloatGroupVolChangeByBattgroupId(Integer battgroupId) { + QueryWrapper wrapper = new QueryWrapper(); + wrapper.eq("battgroup_id", battgroupId); + wrapper.eq("test_type", 3); + wrapper.eq("test_starttype", 3); + wrapper.eq("data_available", 1);//涓�娆℃湁鏁堢殑璁板綍 + wrapper.last(" ORDER BY test_starttime asc "); + List<BatttestdataInf> list = mapper.selectList(wrapper); + List<ComPareChangeCurve> curvelist=new ArrayList<>(); + for (BatttestdataInf tinf:list) { + ComPareChangeCurve curve=new ComPareChangeCurve(); + curve.setBattgroupId(battgroupId); + curve.setStartTime(tinf.getTestStarttime()); + curve.setCurveValue(tinf.getFloatGroupVol()); + curvelist.add(curve); + } + return new Response().setII(1,list.size()>0,curvelist,"鐐瑰嚮鍙充晶鎶樼嚎鍥剧敾鍑虹數姹犵粍鎵�鏈夊畬鏁村懆鏈熺殑娴厖鐢靛帇鍙樺寲鍥�(1.2.15/16/17)"); + } } \ No newline at end of file -- Gitblit v1.9.1