修改稳态超标占比图表
This commit is contained in:
@@ -78,13 +78,14 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
||||
List<List<Double>> steadyExceedList = new ArrayList<>();
|
||||
List<List<String>> tempIndex = new ArrayList<>();
|
||||
|
||||
//按照条件获取实际运行终端综合信息
|
||||
//按部门分类的实际运行终端综合信息
|
||||
List<GeneralDeviceDTO> deviceDataList = generalDeviceInfoClient.getPracticalRunDeviceInfo(steadyExceedCensusParam).getData();
|
||||
if (!CollectionUtils.isEmpty(deviceDataList)) {
|
||||
for (GeneralDeviceDTO generalDeviceDTO: deviceDataList) {
|
||||
type.add(generalDeviceDTO.getName());
|
||||
|
||||
List<String> lineIndexes = generalDeviceDTO.getLineIndexes();
|
||||
//按部门分类的监测点索引集
|
||||
tempIndex.add(lineIndexes);
|
||||
}
|
||||
|
||||
@@ -105,7 +106,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
||||
SteadyExceedRateVO dataMoreMonitorMoreDay = getDataMoreMonitorMoreDay(qualifiesRate);
|
||||
steadyExceedRate.add(dataMoreMonitorMoreDay.getSteadyExceedRate());
|
||||
} else {
|
||||
steadyExceedRate.add(3.14159);
|
||||
steadyExceedRate.add(3.1415);
|
||||
}
|
||||
}
|
||||
steadyExceedList.add(steadyExceedRate);
|
||||
@@ -119,10 +120,14 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
||||
for (List<String> lineIndexes: tempIndex) {
|
||||
if (!CollectionUtils.isEmpty(lineIndexes)) {
|
||||
List<LimitRatePO> qualifiesRate = getQualifiesRate(lineIndexes, steadyExceedCensusParam.getSearchBeginTime(), steadyExceedCensusParam.getSearchEndTime());
|
||||
SteadyExceedRateVO dataMoreMonitorSingleDay = getDataMoreMonitorSingleDay(qualifiesRate, lineIndexes, time.get(i));
|
||||
steadyExceedRate.add(dataMoreMonitorSingleDay.getSteadyExceedRate());
|
||||
if (!CollectionUtils.isEmpty(qualifiesRate)) {
|
||||
SteadyExceedRateVO dataMoreMonitorSingleDay = getDataMoreMonitorSingleDay(qualifiesRate, lineIndexes, time.get(i));
|
||||
steadyExceedRate.add(dataMoreMonitorSingleDay.getSteadyExceedRate());
|
||||
}else {
|
||||
steadyExceedRate.add(3.14159);
|
||||
}
|
||||
} else {
|
||||
steadyExceedRate.add(3.14159);
|
||||
steadyExceedRate.add(3.1415);
|
||||
}
|
||||
}
|
||||
steadyExceedList.add(steadyExceedRate);
|
||||
@@ -137,7 +142,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
||||
SteadyExceedRateVO dataMoreMonitorSingleDay = getDataMoreMonitorSingleDay(qualifiesRate, lineIndexes, steadyExceedCensusParam.getSearchBeginTime());
|
||||
steadyExceedRate.add(dataMoreMonitorSingleDay.getSteadyExceedRate());
|
||||
} else {
|
||||
steadyExceedRate.add(3.14159);
|
||||
steadyExceedRate.add(3.1415);
|
||||
}
|
||||
}
|
||||
steadyExceedList.add(steadyExceedRate);
|
||||
@@ -183,6 +188,8 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
||||
}
|
||||
return string;
|
||||
}
|
||||
|
||||
|
||||
private List<String> getSteadyTimesByDay(String searchBeginTime, String searchEndTime) {
|
||||
List<String> string = new ArrayList<>();
|
||||
int beginTime = Integer.parseInt(searchBeginTime.substring(8, 10));
|
||||
@@ -281,7 +288,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
||||
SteadyExceedRateVO steadyExceedRateVO = new SteadyExceedRateVO();
|
||||
LimitRatePO limitRatePO;
|
||||
List<LimitRatePO> limitRatePOList = qualifiesRate.stream().filter(
|
||||
temp -> temp.getLineId().equalsIgnoreCase(lineId) && temp.getDayStr().equalsIgnoreCase(time)
|
||||
temp -> temp.getLineId().equals(lineId) && temp.getDayStr().equals(time)
|
||||
).collect(Collectors.toList());
|
||||
if (!CollectionUtil.isEmpty(limitRatePOList)) {
|
||||
limitRatePO = limitRatePOList.get(0);
|
||||
@@ -369,12 +376,13 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
||||
for (String lineId : lineIds) {
|
||||
steadyResults.add(getDataSingleMonitorSingeDay(qualifiesRate, lineId, time));
|
||||
}
|
||||
steadyResults = steadyResults.stream().filter(item -> item.getSteadyExceedRate()!=3.14159).collect(Collectors.toList());
|
||||
if (CollectionUtil.isNotEmpty(steadyResults)) {
|
||||
//求多个监测点的平均值
|
||||
steadyExceedRateVO.setSteadyExceedRate(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyExceedRateVO::getSteadyExceedRate).average().orElse(0), 2).doubleValue());
|
||||
steadyExceedRateVO.setTime(time);
|
||||
|
||||
}
|
||||
steadyExceedRateVO.setTime(time);
|
||||
return steadyExceedRateVO;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user