diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java index 4d95043a8..fb1dc10cf 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java @@ -1137,15 +1137,12 @@ public class DevicePDAServiceImpl implements IDevicePDAService { } else if (list.getFaultStartTime() != null) { downStartTime = list.getFaultStartTime(); } - LocalDateTime downStart = LocalDateTime.ofInstant(downStartTime.toInstant(), zoneId); - LocalDateTime downEnd = LocalDateTime.ofInstant(equRepairWorkOrder.getWorkEndTime().toInstant(), zoneId); - LocalDateTime downDateTime = LocalDateTime.from(downStart); - double downHours = downDateTime.until(downEnd, ChronoUnit.HOURS); - double downMinutes = ((downDateTime.until(downEnd, ChronoUnit.MINUTES) * 1.0) % 60) / 60; - double downSeconds = ((downDateTime.until(downEnd, ChronoUnit.SECONDS) * 1.0) % 3600) / 3600; - double downHour = BigDecimal.valueOf(downHours + downMinutes + downSeconds).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); - equRepairWorkOrder.setFaultDownTime(String.valueOf(downHour) + "小时"); + Date workEndTime = equRepairWorkOrder.getWorkEndTime(); + double diff = BigDecimal.valueOf((workEndTime.getTime() - downStartTime.getTime())) + .divide(BigDecimal.valueOf(3600000), 2, RoundingMode.HALF_UP) + .doubleValue(); + equRepairWorkOrder.setFaultDownTime(diff + "小时"); } //代码注释掉了 改了流程 之前是维修完成后,更改设备状态 和 设备运行报表 现在是审核通过之后,才会扣除