From 6d833678a66c2f30496672fef72d88b4af071826 Mon Sep 17 00:00:00 2001 From: wr <1754607820@qq.com> Date: Mon, 8 Dec 2025 15:08:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pq/service/impl/DeviceRunEvaluateServiceImpl.java | 9 +++++++++ .../pq/service/impl/RStatIntegrityDServiceImpl.java | 3 +++ .../device/service/impl/OnLineRateServiceImpl.java | 3 +++ 3 files changed, 15 insertions(+) diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeviceRunEvaluateServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeviceRunEvaluateServiceImpl.java index 6c74c0af1..f40272457 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeviceRunEvaluateServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeviceRunEvaluateServiceImpl.java @@ -442,6 +442,9 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService { double totalAll = verifyList.stream().mapToDouble(PqDataVerifyCount::getTotalAll).sum(); double flicker = verifyList.stream().mapToDouble(PqDataVerifyCount::getFlicker).sum(); double flickerAll = verifyList.stream().mapToDouble(PqDataVerifyCount::getFlickerAll).sum(); + if (totalAll + flickerAll == 0) { + return new BigDecimal(0); + } return NumberUtil.round(Math.min((total + flicker) * 100 / (totalAll + flickerAll), 100), 2); } else { return new BigDecimal(0); @@ -454,6 +457,9 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService { if (CollUtil.isNotEmpty(integrityDS)) { double realTime = integrityDS.stream().mapToDouble(RStatIntegrityVO::getRealTime).sum(); double dueTime = integrityDS.stream().mapToDouble(RStatIntegrityVO::getDueTime).sum(); + if (dueTime == 0) { + return new BigDecimal(0); + } return NumberUtil.round(Math.min(realTime * 100 / dueTime, 100), 2); } else { return new BigDecimal(0); @@ -466,6 +472,9 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService { if (CollUtil.isNotEmpty(onlineRateDS)) { double onlineTime = onlineRateDS.stream().mapToDouble(RStatOnlineRateVO::getOnlineMin).sum(); double offlineTime = onlineRateDS.stream().mapToDouble(RStatOnlineRateVO::getOfflineMin).sum(); + if (offlineTime == 0) { + return new BigDecimal(0); + } return NumberUtil.round(Math.min(onlineTime * 100.0 / (onlineTime + offlineTime), 100), 2); } else { return new BigDecimal(0); diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/RStatIntegrityDServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/RStatIntegrityDServiceImpl.java index cd0804d22..155c6e186 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/RStatIntegrityDServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/RStatIntegrityDServiceImpl.java @@ -201,6 +201,9 @@ public class RStatIntegrityDServiceImpl extends MppServiceImpl