package com.whyc.service;
|
|
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageInfo;
|
import com.whyc.dto.BattMaintDealarm;
|
import com.whyc.dto.ReportBattDTO;
|
import com.whyc.dto.Response;
|
import com.whyc.mapper.BattInfMapper;
|
import com.whyc.mapper.BattMaintDealarmMapper;
|
import com.whyc.mapper.BattParamLowMapper;
|
import com.whyc.mapper.BatttestdataInfMapper;
|
import com.whyc.pojo.BattParamLow;
|
import com.whyc.pojo.Battinf;
|
import com.whyc.pojo.BatttestdataInf;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
@Service
|
public class BattMaintDealarmService {
|
@Resource
|
private BattMaintDealarmMapper mapper;
|
@Resource
|
private BattInfMapper battInfMapper;
|
@Resource
|
private BattParamLowMapper battParamLowMapper;
|
|
@Resource
|
private BatttestdataInfService batttestdataInfService;
|
|
public Response searchLow(ReportBattDTO tinf, int userId){
|
Response res = new Response();
|
List<Battinf> battinfList = battInfMapper.searchByTestType(tinf, userId);
|
List<Map> result = new ArrayList<>();
|
if (battinfList!=null && battinfList.size()>0){
|
BatttestdataInf btdinf = new BatttestdataInf();
|
btdinf.setRecordTime(tinf.getRecordStartTime());
|
btdinf.setRecordTime1(tinf.getRecordEndTime());
|
btdinf.setTestType(tinf.getTestType());
|
btdinf.setTestStarttype(tinf.getTestStartType());
|
for (Battinf binf:battinfList) {
|
btdinf.setBattGroupId(binf.getBattGroupId());
|
btdinf.setGroupVol(binf.getMonVolStd());
|
btdinf.setTestCap(binf.getMonCapStd());
|
btdinf.setTestRecordCount(binf.getTestRecordCount());
|
Map map = new HashMap();
|
map.put("battinf",binf);
|
//该电池组的放电结果
|
List<BatttestdataInf> batttestdataInfList = batttestdataInfService.searchByTestType(btdinf);
|
map.put("battTestDataInf",batttestdataInfList);
|
result.add(map);
|
}
|
}
|
return res.set(1,result,"查询成功");
|
}
|
|
//1.4电池性能评估
|
public Response searchGroupAssess(int pageNum,int pageSize,ReportBattDTO tinf, int userId){
|
PageHelper.startPage(pageNum,pageSize);
|
List<Battinf> battinfList = battInfMapper.searchGroupAssess(tinf, userId);
|
List<Map> result = new ArrayList<>();
|
if (battinfList!=null && battinfList.size()>0){
|
BatttestdataInf btdinf = new BatttestdataInf();
|
btdinf.setRecordTime(tinf.getRecordStartTime());
|
btdinf.setRecordTime1(tinf.getRecordEndTime());
|
btdinf.setTestType(tinf.getTestType());
|
btdinf.setTestStarttype(tinf.getTestStartType());
|
for (Battinf binf:battinfList) {
|
btdinf.setBattGroupId(binf.getBattGroupId());
|
btdinf.setGroupVol(binf.getMonVolStd());
|
btdinf.setTestCap(binf.getMonCapStd());
|
Map map = new HashMap();
|
map.put("battinf",binf);
|
List<BatttestdataInf> batttestdataInfList = batttestdataInfService.searchDischargeTest(btdinf);
|
map.put("battTestDataInf",batttestdataInfList);
|
result.add(map);
|
}
|
}
|
PageInfo pageInfo = new PageInfo(result);
|
return new Response().set(1,pageInfo,"查询成功");
|
}
|
|
|
public Response searchMonNum(ReportBattDTO dto){
|
List list = new ArrayList();
|
if (dto.getTestType()==3){
|
list = mapper.searchByBattGroupId(dto);
|
}
|
if (dto.getTestType()==5){
|
list = mapper.searchByBattGroupId5(dto);
|
}
|
BattParamLow lowCA=new BattParamLow();
|
lowCA.setLowType(2);
|
lowCA.setLowNametype(2);//电容告警
|
BattParamLow lowCH=new BattParamLow();
|
lowCH.setLowType(2);
|
lowCH.setLowNametype(3);//电容更换
|
List<BattParamLow> listCA = battParamLowMapper.serchByLow(lowCA);
|
List<BattParamLow> listCH = battParamLowMapper.serchByLow(lowCH);
|
Float percentCA = listCA.get(0).getLowValue();
|
Float percentCH = listCH.get(0).getLowValue();
|
//电导基准/维护建议/电导分析值
|
BattParamLow lowRA=new BattParamLow();
|
lowRA.setLowType(3);
|
lowRA.setLowNametype(2);//电导告警
|
BattParamLow lowRH=new BattParamLow();
|
lowRH.setLowType(3);
|
lowRH.setLowNametype(3);//电导更换
|
|
//电导
|
List<BattParamLow> listRA = battParamLowMapper.serchByLow(lowRA);
|
List<BattParamLow> listRH = battParamLowMapper.serchByLow(lowRH);
|
Float percentRA = listRA.get(0).getLowValue();
|
Float percentRH = listRH.get(0).getLowValue();
|
int methodRM=listRA.get(0).getLowMethod(); //分析方式
|
|
Map<String,Object> map = new HashMap<>();
|
map.put("Data",list);
|
map.put("LowCA",percentCA);
|
map.put("LowCH",percentCH);
|
map.put("LowRA",percentRA);
|
map.put("LowRH",percentRH);
|
map.put("newSum",methodRM);
|
|
return new Response().set(1,map,"查询成功");
|
}
|
|
|
|
|
|
}
|