From 0cacab47ea94942bb300b44a9d5a33e8daa95f68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BE=BE=E5=AF=8C=E6=96=8C?= Date: Tue, 30 Sep 2025 20:30:02 +0800 Subject: [PATCH] =?UTF-8?q?feat=20(farm):=20=E8=AE=BE=E5=A4=87=E4=B8=AD?= =?UTF-8?q?=E5=BF=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修复因设备类型id导致的数据紊乱问题 --- .../equipmentproducer/EquipmentProducerManager.java | 3 +-- .../dto/soil/history/HistoryDataListPageReqVO.java | 10 ++++++---- .../farm/service/deviceinfo/DeviceInfoServiceImpl.java | 7 +++++-- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/manager/equipmentproducer/EquipmentProducerManager.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/manager/equipmentproducer/EquipmentProducerManager.java index 00a37065..ff675d4b 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/manager/equipmentproducer/EquipmentProducerManager.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/manager/equipmentproducer/EquipmentProducerManager.java @@ -20,8 +20,7 @@ public class EquipmentProducerManager { private final Map deviceServiceMap; public EquipmentProducerManager(List deviceServices) { - this.deviceServiceMap = deviceServices.stream() - .collect(Collectors.toMap(DeviceService::getDeviceType, Function.identity())); + this.deviceServiceMap = deviceServices.stream().collect(Collectors.toMap(DeviceService::getDeviceType, Function.identity())); } /** diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/manager/equipmentproducer/dto/soil/history/HistoryDataListPageReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/manager/equipmentproducer/dto/soil/history/HistoryDataListPageReqVO.java index a2d636da..41dcd7f7 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/manager/equipmentproducer/dto/soil/history/HistoryDataListPageReqVO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/manager/equipmentproducer/dto/soil/history/HistoryDataListPageReqVO.java @@ -125,10 +125,12 @@ public class HistoryDataListPageReqVO { * 构建请求VO对象 */ private static HistoryDataListPageReqVO buildRequestVO(LocalDateTime startTime, LocalDateTime endTime) { -// long startTime = startLocalDateTime.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond(); -// long endTime = endLocalDateTime.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond(); - Long beginTimeStamp = startTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(); - Long endTimeStamp = endTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(); +// long startTime = startLocalDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(); +// long endTime = endLocalDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(); + Long beginTimeStamp = startTime.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond(); + Long endTimeStamp = endTime.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond(); + + log.info("查询时间戳:{}-{}", beginTimeStamp, endTimeStamp); return new HistoryDataListPageReqVO(beginTimeStamp, endTimeStamp); } } diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/deviceinfo/DeviceInfoServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/deviceinfo/DeviceInfoServiceImpl.java index 17592718..aab42f06 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/deviceinfo/DeviceInfoServiceImpl.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/deviceinfo/DeviceInfoServiceImpl.java @@ -23,6 +23,7 @@ import cn.iocoder.yudao.module.farm.manager.equipmentproducer.dto.UnifiedLoginRe import cn.iocoder.yudao.module.farm.manager.equipmentproducer.dto.soil.history.HistoryDataListPageReqVO; import cn.iocoder.yudao.module.farm.manager.equipmentproducer.dto.soil.login.UserLoginReqVO; import cn.iocoder.yudao.module.farm.manager.equipmentproducer.dto.soil.realtime.RealTimeDataReqVO; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import jakarta.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -154,8 +155,10 @@ public class DeviceInfoServiceImpl implements DeviceInfoService { // 获取设备商数据 switch (typeCodeMap.getOrDefault(deviceType, "other")) { case "soil" : - DeviceInfoDetailV2RespVO.SoilInfo soilInfo = getSoilInfo(deviceUniqueId,Integer.parseInt(dateType)); - target.setSoilInfo(soilInfo); + if (!StringUtils.isEmpty(dateType)) { + DeviceInfoDetailV2RespVO.SoilInfo soilInfo = getSoilInfo(deviceUniqueId,Integer.parseInt(dateType)); + target.setSoilInfo(soilInfo); + } break; case "water_fertilizer" : DeviceInfoDetailV2RespVO.WfInfo wfInfo = getWfInfo(deviceUniqueId);