获取终端运行统计接口新增三个统计率
This commit is contained in:
@@ -270,6 +270,18 @@ public class AreaLineServiceImpl implements AreaLineService {
|
||||
terminalRunningInfoVO.setNormal(countDeviceRunStatus(pqDeviceList).apply(0, deviceIndexes));
|
||||
terminalRunningInfoVO.setBreaks(countDeviceRunStatus(pqDeviceList).apply(1, deviceIndexes));
|
||||
terminalRunningInfoVO.setShutdown(countDeviceRunStatus(pqDeviceList).apply(2, deviceIndexes));
|
||||
if (deviceIndexes.size()==0) {
|
||||
terminalRunningInfoVO.setNormalRate(0.0);
|
||||
terminalRunningInfoVO.setBreaksRate(0.0);
|
||||
terminalRunningInfoVO.setShutdownRate(0.0);
|
||||
} else {
|
||||
double normalRate = terminalRunningInfoVO.getNormal().doubleValue() / terminalRunningInfoVO.getNumberOfTerminals() * 100;
|
||||
terminalRunningInfoVO.setNormalRate(new BigDecimal(normalRate).setScale(2, RoundingMode.HALF_UP).doubleValue());
|
||||
double breaksRate = terminalRunningInfoVO.getBreaks().doubleValue() / terminalRunningInfoVO.getNumberOfTerminals() * 100;
|
||||
terminalRunningInfoVO.setBreaksRate(new BigDecimal(breaksRate).setScale(2, RoundingMode.HALF_UP).doubleValue());
|
||||
double shutdownRate = terminalRunningInfoVO.getShutdown().doubleValue() / terminalRunningInfoVO.getNumberOfTerminals() * 100;
|
||||
terminalRunningInfoVO.setShutdownRate(new BigDecimal(shutdownRate).setScale(2, RoundingMode.HALF_UP).doubleValue());
|
||||
}
|
||||
terminalRunningInfoVO.setOnlineRate(computingDeviceOnlineRate(pqsOnlinerateList).apply(deviceIndexes));
|
||||
return terminalRunningInfoVO;
|
||||
}).sorted(TerminalRunningInfoVO.sortAscAreaName())
|
||||
@@ -283,9 +295,15 @@ public class AreaLineServiceImpl implements AreaLineService {
|
||||
.sum();
|
||||
Long shutdownSum = terminalRun.stream().mapToLong(TerminalRunningInfoVO::getShutdown)
|
||||
.sum();
|
||||
Double normalRateSum = 0.0,breaksRateSum = 0.0,shutdownRateSum = 0.0;
|
||||
if (terminalSum!=0) {
|
||||
normalRateSum = new BigDecimal(normalSum.doubleValue() / terminalSum *100).setScale(2, RoundingMode.HALF_UP).doubleValue();
|
||||
breaksRateSum = new BigDecimal(breaksSum.doubleValue() / terminalSum *100).setScale(2, RoundingMode.HALF_UP).doubleValue();
|
||||
shutdownRateSum = new BigDecimal(shutdownSum.doubleValue() / terminalSum *100).setScale(2, RoundingMode.HALF_UP).doubleValue();
|
||||
}
|
||||
Double onlineRateAvg = computingDeviceOnlineRate(pqsOnlinerateList).apply(deviceIndexList);
|
||||
return TerminalRunningVO.buildVO(terminalSum, normalSum, breaksSum, shutdownSum,
|
||||
onlineRateAvg, terminalRun);
|
||||
return TerminalRunningVO.buildVO(terminalSum, normalSum, normalRateSum, breaksSum, breaksRateSum, shutdownSum,
|
||||
shutdownRateSum, onlineRateAvg, terminalRun);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user