| | |
| | | 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<>(); |
| | |
| | | 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; |
| | | } |
| | | } |
| | | } |
| | |
| | | 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,"蓄电池组对比分析界面(同一品牌同一时间)"); |
| | |
| | | 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)"); |
| | | } |
| | | } |