diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/smartDevicesImpl/TbMeterRecordServiceImpl.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/smartDevicesImpl/TbMeterRecordServiceImpl.java index 0fe94eb6..7f51e882 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/smartDevicesImpl/TbMeterRecordServiceImpl.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/smartDevicesImpl/TbMeterRecordServiceImpl.java @@ -212,14 +212,6 @@ public class TbMeterRecordServiceImpl implements ITbMeterRecordService { record.setCurrentReading(BigDecimal.ZERO); } - if (record.getCurrentReading().compareTo(BigDecimal.ZERO) == 0){ - // 通信状态改为离线 - TbMeterInfoBo bo = new TbMeterInfoBo(); - bo.setId(info.getId()); - bo.setCommunicationState(0L); - tbMeterInfoService.updateByBo(bo); - } - // 设置上次读数 if (hasOldRecords) { TbMeterRecord oldRecord = oldRecordMap.get(info.getId()); @@ -229,6 +221,15 @@ public class TbMeterRecordServiceImpl implements ITbMeterRecordService { record.setPreviousReading(record.getCurrentReading()); } + if (record.getCurrentReading().compareTo(BigDecimal.ZERO) == 0){ + // 通信状态改为离线 + TbMeterInfoBo bo = new TbMeterInfoBo(); + bo.setId(info.getId()); + bo.setCommunicationState(0L); + tbMeterInfoService.updateByBo(bo); + record.setCurrentReading(record.getPreviousReading()); + } + record.setReadingMethod(MeterRecordTypeEnum.AUTO_RECORD.getCode()); recordNew.add(record); }