From d2183a5818604cc01997b965ba9363267456b149 Mon Sep 17 00:00:00 2001 From: wr <1754607820@qq.com> Date: Wed, 19 Apr 2023 16:40:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=95=B0=E6=8D=AE=E5=8D=A0?= =?UTF-8?q?=E6=AF=94=E5=8F=AF=E8=83=BD=E8=B6=85=E8=BF=87100%=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/LineIntegrityDataServiceImpl.java | 2 +- .../TerminalOnlineRateDataServiceImpl.java | 2 +- .../device/pq/utils/DataStatisticsUtil.java | 11 ++++- .../com/njcn/harmonic/utils/PubUtils.java | 4 ++ .../com/njcn/harmonic/utils/WordUtil2.java | 2 - .../controller/ExportModelController.java | 1 - .../impl/SteadyExceedRateServiceImpl.java | 11 +++-- .../impl/SteadyQualifyServiceImpl.java | 49 ++++++++++--------- .../service/impl/THDistortionServiceImpl.java | 5 +- .../service/impl/TerminalServiceImpl.java | 9 ++-- 10 files changed, 54 insertions(+), 42 deletions(-) diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineIntegrityDataServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineIntegrityDataServiceImpl.java index 2ed2a4a77..0e09ac417 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineIntegrityDataServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineIntegrityDataServiceImpl.java @@ -185,7 +185,7 @@ public class LineIntegrityDataServiceImpl extends ServiceImpl100?100:data; + } } diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/PubUtils.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/PubUtils.java index 3ca5d7702..7c46467d7 100644 --- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/PubUtils.java +++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/PubUtils.java @@ -85,4 +85,8 @@ public class PubUtils { } } } + + public static Double dataLimits(Double data){ + return data>100?100:data; + } } diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/WordUtil2.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/WordUtil2.java index dc5a42a36..6e49f0fcd 100644 --- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/WordUtil2.java +++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/WordUtil2.java @@ -6,9 +6,7 @@ import org.slf4j.LoggerFactory; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; import java.io.*; -import java.net.URLEncoder; import java.util.*; import java.util.Map.Entry; import java.util.regex.Matcher; diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/ExportModelController.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/ExportModelController.java index 2d84a7ef4..384220c8e 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/ExportModelController.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/ExportModelController.java @@ -33,7 +33,6 @@ import org.springframework.web.multipart.MultipartFile; import sun.misc.BASE64Encoder; import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; import java.io.*; import java.text.SimpleDateFormat; import java.util.*; diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java index 707614821..64fb38c72 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java @@ -21,6 +21,7 @@ import com.njcn.harmonic.pojo.vo.SteadyExceedRateCensusVO; import com.njcn.harmonic.pojo.vo.SteadyExceedRateVO; import com.njcn.harmonic.service.IRStatLimitRateDService; import com.njcn.harmonic.service.SteadyExceedRateService; +import com.njcn.harmonic.utils.PubUtils; import com.njcn.influxdb.param.InfluxDBPublicParam; import com.njcn.influxdb.utils.InfluxDbUtils; import lombok.AllArgsConstructor; @@ -68,7 +69,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService { steadyExceedRateVO.setName(generalDeviceDTO.getName()); List qualifiesRate = getQualifiesRate(lineIndexes, steadyExceedParam.getSearchBeginTime(), steadyExceedParam.getSearchEndTime()); SteadyExceedRateVO dataMoreMonitorMoreDay = getDataMoreMonitorMoreDay(qualifiesRate); - steadyExceedRateVO.setSteadyExceedRate(dataMoreMonitorMoreDay.getSteadyExceedRate()); + steadyExceedRateVO.setSteadyExceedRate(PubUtils.dataLimits(dataMoreMonitorMoreDay.getSteadyExceedRate())); //组装父级数据树 List treeList = getTreeData(lineIndexes, steadyExceedParam); @@ -235,7 +236,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService { List qualifiesRate = getQualifiesRate(lineIndexes, steadyExceedParam.getSearchBeginTime(), steadyExceedParam.getSearchEndTime()); monitorList.forEach(steadyExceedRateVO -> { SteadyExceedRateVO dataSingleMonitorMoreDay = getDataSingleMonitorMoreDay(qualifiesRate, steadyExceedRateVO.getId()); - steadyExceedRateVO.setSteadyExceedRate(dataSingleMonitorMoreDay.getSteadyExceedRate()); + steadyExceedRateVO.setSteadyExceedRate(PubUtils.dataLimits(dataSingleMonitorMoreDay.getSteadyExceedRate())); }); setChildesList(substationList,monitorList); setFatherDistortion(substationList); @@ -267,7 +268,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService { List flicker = children.stream().filter(child -> !Objects.equals(child.getSteadyExceedRate(), 3.14159)).collect(Collectors.toList()); if (!CollectionUtils.isEmpty(flicker)) { - steadyExceedRateVO.setSteadyExceedRate(NumberUtil.round(flicker.stream().mapToDouble(SteadyExceedRateVO::getSteadyExceedRate).average().orElse(1.2345), 2).doubleValue()); + steadyExceedRateVO.setSteadyExceedRate(PubUtils.dataLimits(NumberUtil.round(flicker.stream().mapToDouble(SteadyExceedRateVO::getSteadyExceedRate).average().orElse(1.2345), 2).doubleValue())); } }); } @@ -371,7 +372,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService { } if (CollectionUtil.isNotEmpty(steadyResults)) { //求区域监测点多天的平均值 - steadyExceedRateVO.setSteadyExceedRate(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyExceedRateVO::getSteadyExceedRate).average().orElse(0), 2).doubleValue()); + steadyExceedRateVO.setSteadyExceedRate(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyExceedRateVO::getSteadyExceedRate).average().orElse(0), 2).doubleValue())); } return steadyExceedRateVO; } @@ -388,7 +389,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService { 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.setSteadyExceedRate(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyExceedRateVO::getSteadyExceedRate).average().orElse(0), 2).doubleValue())); } steadyExceedRateVO.setTime(time); diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyQualifyServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyQualifyServiceImpl.java index 4a5e320f7..4bfff7a35 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyQualifyServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyQualifyServiceImpl.java @@ -19,6 +19,7 @@ import com.njcn.harmonic.pojo.vo.SteadyQualifyCensusVO; import com.njcn.harmonic.pojo.vo.SteadyQualifyVO; import com.njcn.harmonic.service.IRStatLimitRateDService; import com.njcn.harmonic.service.SteadyQualifyService; +import com.njcn.harmonic.utils.PubUtils; import com.njcn.influxdb.param.InfluxDBPublicParam; import com.njcn.influxdb.utils.InfluxDbUtils; import lombok.AllArgsConstructor; @@ -146,14 +147,14 @@ public class SteadyQualifyServiceImpl implements SteadyQualifyService { List qualifiesRate = getQualifiesRate(lineIndexes, steadyParam.getSearchBeginTime(), steadyParam.getSearchEndTime()); monitorList.forEach(steadyQualifyVO -> { SteadyQualifyVO dataSingleMonitorMoreDay = getDataSingleMonitorMoreDay(qualifiesRate, steadyQualifyVO.getId()); - steadyQualifyVO.setFlicker(dataSingleMonitorMoreDay.getFlicker()); - steadyQualifyVO.setFreqOffset(dataSingleMonitorMoreDay.getFreqOffset()); - steadyQualifyVO.setVoltageOffset(dataSingleMonitorMoreDay.getVoltageOffset()); - steadyQualifyVO.setVoltageUnbalance(dataSingleMonitorMoreDay.getVoltageUnbalance()); - steadyQualifyVO.setNegativeCurrent(dataSingleMonitorMoreDay.getNegativeCurrent()); - steadyQualifyVO.setHarmonicVoltage(dataSingleMonitorMoreDay.getHarmonicVoltage()); - steadyQualifyVO.setHarmonicCurrent(dataSingleMonitorMoreDay.getHarmonicCurrent()); - steadyQualifyVO.setInterHarmonic(dataSingleMonitorMoreDay.getInterHarmonic()); + steadyQualifyVO.setFlicker(PubUtils.dataLimits(dataSingleMonitorMoreDay.getFlicker())); + steadyQualifyVO.setFreqOffset(PubUtils.dataLimits(dataSingleMonitorMoreDay.getFreqOffset())); + steadyQualifyVO.setVoltageOffset(PubUtils.dataLimits(dataSingleMonitorMoreDay.getVoltageOffset())); + steadyQualifyVO.setVoltageUnbalance(PubUtils.dataLimits(dataSingleMonitorMoreDay.getVoltageUnbalance())); + steadyQualifyVO.setNegativeCurrent(PubUtils.dataLimits(dataSingleMonitorMoreDay.getNegativeCurrent())); + steadyQualifyVO.setHarmonicVoltage(PubUtils.dataLimits(dataSingleMonitorMoreDay.getHarmonicVoltage())); + steadyQualifyVO.setHarmonicCurrent(PubUtils.dataLimits(dataSingleMonitorMoreDay.getHarmonicCurrent())); + steadyQualifyVO.setInterHarmonic(PubUtils.dataLimits(dataSingleMonitorMoreDay.getInterHarmonic())); }); setChildesList(substationList,monitorList); setFatherDistortion(substationList); @@ -179,28 +180,28 @@ public class SteadyQualifyServiceImpl implements SteadyQualifyService { List harmonicCurrent = children.stream().filter(child -> !Objects.equals(child.getHarmonicCurrent(), 3.14159)).collect(Collectors.toList()); List InterHarmonic = children.stream().filter(child -> !Objects.equals(child.getInterHarmonic(), 3.14159)).collect(Collectors.toList()); if (!CollectionUtils.isEmpty(flicker)) { - steadyQualifyVO.setFlicker(NumberUtil.round(flicker.stream().mapToDouble(SteadyQualifyVO::getFlicker).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setFlicker(PubUtils.dataLimits(NumberUtil.round(flicker.stream().mapToDouble(SteadyQualifyVO::getFlicker).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(freqOffset)) { - steadyQualifyVO.setFreqOffset(NumberUtil.round(freqOffset.stream().mapToDouble(SteadyQualifyVO::getFreqOffset).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setFreqOffset(PubUtils.dataLimits(NumberUtil.round(freqOffset.stream().mapToDouble(SteadyQualifyVO::getFreqOffset).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(voltageOffset)) { - steadyQualifyVO.setVoltageOffset(NumberUtil.round(voltageOffset.stream().mapToDouble(SteadyQualifyVO::getVoltageOffset).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setVoltageOffset(PubUtils.dataLimits(NumberUtil.round(voltageOffset.stream().mapToDouble(SteadyQualifyVO::getVoltageOffset).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(voltageUnbalance)) { - steadyQualifyVO.setVoltageUnbalance(NumberUtil.round(voltageUnbalance.stream().mapToDouble(SteadyQualifyVO::getVoltageUnbalance).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setVoltageUnbalance(PubUtils.dataLimits(NumberUtil.round(voltageUnbalance.stream().mapToDouble(SteadyQualifyVO::getVoltageUnbalance).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(negativeCurrent)) { - steadyQualifyVO.setNegativeCurrent(NumberUtil.round(negativeCurrent.stream().mapToDouble(SteadyQualifyVO::getNegativeCurrent).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setNegativeCurrent(PubUtils.dataLimits(NumberUtil.round(negativeCurrent.stream().mapToDouble(SteadyQualifyVO::getNegativeCurrent).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(harmonicVoltage)) { - steadyQualifyVO.setHarmonicVoltage(NumberUtil.round(harmonicVoltage.stream().mapToDouble(SteadyQualifyVO::getHarmonicVoltage).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setHarmonicVoltage(PubUtils.dataLimits(NumberUtil.round(harmonicVoltage.stream().mapToDouble(SteadyQualifyVO::getHarmonicVoltage).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(harmonicCurrent)) { - steadyQualifyVO.setHarmonicCurrent(NumberUtil.round(harmonicCurrent.stream().mapToDouble(SteadyQualifyVO::getHarmonicCurrent).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setHarmonicCurrent(PubUtils.dataLimits(NumberUtil.round(harmonicCurrent.stream().mapToDouble(SteadyQualifyVO::getHarmonicCurrent).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(InterHarmonic)) { - steadyQualifyVO.setInterHarmonic(NumberUtil.round(InterHarmonic.stream().mapToDouble(SteadyQualifyVO::getInterHarmonic).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setInterHarmonic(PubUtils.dataLimits(NumberUtil.round(InterHarmonic.stream().mapToDouble(SteadyQualifyVO::getInterHarmonic).average().orElse(100), 2).doubleValue())); } }); } @@ -333,28 +334,28 @@ public class SteadyQualifyServiceImpl implements SteadyQualifyService { List interHarmonic = steadyResults.stream().filter(s -> s.getInterHarmonic() != 3.14159).collect(Collectors.toList()); //求各项平均值 if (!CollectionUtils.isEmpty(flicker)) { - steadyQualifyVO.setFlicker(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getFlicker).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setFlicker(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getFlicker).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(freqOffset)) { - steadyQualifyVO.setFreqOffset(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getFreqOffset).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setFreqOffset(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getFreqOffset).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(voltageOffset)) { - steadyQualifyVO.setVoltageOffset(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getVoltageOffset).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setVoltageOffset(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getVoltageOffset).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(voltageUnbalance)) { - steadyQualifyVO.setVoltageUnbalance(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getVoltageUnbalance).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setVoltageUnbalance(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getVoltageUnbalance).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(negativeCurrent)) { - steadyQualifyVO.setNegativeCurrent(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getNegativeCurrent).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setNegativeCurrent(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getNegativeCurrent).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(harmonicVoltage)) { - steadyQualifyVO.setHarmonicVoltage(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getHarmonicVoltage).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setHarmonicVoltage(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getHarmonicVoltage).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(harmonicCurrent)) { - steadyQualifyVO.setHarmonicCurrent(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getHarmonicCurrent).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setHarmonicCurrent(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getHarmonicCurrent).average().orElse(100), 2).doubleValue())); } if (!CollectionUtils.isEmpty(interHarmonic)) { - steadyQualifyVO.setInterHarmonic(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getInterHarmonic).average().orElse(100), 2).doubleValue()); + steadyQualifyVO.setInterHarmonic(PubUtils.dataLimits(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyQualifyVO::getInterHarmonic).average().orElse(100), 2).doubleValue())); } } return steadyQualifyVO; diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/THDistortionServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/THDistortionServiceImpl.java index 2d7909e7a..29f008a25 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/THDistortionServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/THDistortionServiceImpl.java @@ -26,6 +26,7 @@ import com.njcn.harmonic.pojo.vo.THDistortionCensusVO; import com.njcn.harmonic.pojo.vo.THDistortionVO; import com.njcn.harmonic.service.IRStatDataVDService; import com.njcn.harmonic.service.THDistortionService; +import com.njcn.harmonic.utils.PubUtils; import com.njcn.influxdb.utils.InfluxDbUtils; import lombok.AllArgsConstructor; import org.influxdb.dto.QueryResult; @@ -105,7 +106,7 @@ public class THDistortionServiceImpl implements THDistortionService { } type.add(generalDeviceDTO.getName()); List condition = getCondition(lineIndexes, thDistortionCensusParam.getSearchBeginTime(), thDistortionCensusParam.getSearchEndTime()); - single.add(condition.stream().mapToDouble(PublicDTO::getData).average().orElse(3.14159)); + single.add(roundHalfUp(condition.stream().mapToDouble(PublicDTO::getData).average().orElse(3.14159))); } distortionCensusVO.setType(type); distortionCensusVO.setSingle(single); @@ -235,7 +236,7 @@ public class THDistortionServiceImpl implements THDistortionService { } BigDecimal b = new BigDecimal(num); //保留2位小数 - return b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); + return PubUtils.dataLimits(b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()); } diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/TerminalServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/TerminalServiceImpl.java index b8b0e2aec..df98d1bb1 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/TerminalServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/TerminalServiceImpl.java @@ -14,6 +14,7 @@ import com.njcn.harmonic.pojo.dto.PublicDTO; import com.njcn.harmonic.pojo.vo.TerminalCensusVO; import com.njcn.harmonic.pojo.vo.TerminalVO; import com.njcn.harmonic.service.TerminalService; +import com.njcn.harmonic.utils.PubUtils; import com.njcn.influxdb.param.InfluxDBPublicParam; import com.njcn.influxdb.utils.InfluxDbUtils; import lombok.AllArgsConstructor; @@ -68,7 +69,7 @@ public class TerminalServiceImpl implements TerminalService { terminalVO.setFlag(null); //查找在线率 List condition = getCondition(deviceIndexes, terminalParam.getSearchBeginTime(), terminalParam.getSearchEndTime()); - terminalVO.setOnlineRateData(condition.stream().mapToDouble(PublicDTO::getData).average().orElse(3.14159)); + terminalVO.setOnlineRateData(PubUtils.dataLimits(condition.stream().mapToDouble(PublicDTO::getData).average().orElse(3.14159))); terminalVO.setNumber(generalDeviceDTO.getDeviceIndexes().size()); //组装父级数据树 List treeList = getTreeData(deviceIndexes, terminalParam); @@ -172,7 +173,7 @@ public class TerminalServiceImpl implements TerminalService { //根据终端集合组装终端的在线率 if (!CollectionUtils.isEmpty(deviceList)) { deviceList.stream().map(list1 -> onlineRateList.stream().filter(list2 -> Objects.equals(list1.getId(), list2.getId())).findAny().map(m -> { - list1.setOnlineRateData(m.getData()); + list1.setOnlineRateData(PubUtils.dataLimits(m.getData())); return list1; })).collect(Collectors.toList()); for (TerminalVO terminalVO: deviceList) { @@ -223,7 +224,7 @@ public class TerminalServiceImpl implements TerminalService { //终端在线率 保留两位小数 Double onlineRate = po.getOnlineRate() == null ? null : BigDecimal.valueOf(Double.parseDouble(po.getOnlineRate().toString())).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); publicDTO.setId(po.getDevIndex()); - publicDTO.setData(onlineRate); + publicDTO.setData(PubUtils.dataLimits(onlineRate)); publicDTOList.add(publicDTO); }); } @@ -275,7 +276,7 @@ public class TerminalServiceImpl implements TerminalService { List children = item.getChildren(); List tempList = children.stream().filter(s -> !Objects.equals(s.getOnlineRateData(), 3.14159)).collect(Collectors.toList()); if (!CollectionUtils.isEmpty(tempList)) { - item.setOnlineRateData(tempList.stream().mapToDouble(TerminalVO::getOnlineRateData).sum() / tempList.size()); + item.setOnlineRateData(PubUtils.dataLimits(tempList.stream().mapToDouble(TerminalVO::getOnlineRateData).sum() / tempList.size())); } else { item.setOnlineRateData(3.14159); }