fix (farm): 设备中心

- 土壤墒情传感器-历史数据解析问题
This commit is contained in:
达富斌
2025-10-01 14:40:10 +08:00
parent 0cacab47ea
commit 636da5a512
3 changed files with 46 additions and 36 deletions

View File

@@ -64,10 +64,10 @@ public class HistoryDataListPageReqVO {
public static HistoryDataListPageReqVO buildHistoryData(String deviceAddr, Integer dateType) { public static HistoryDataListPageReqVO buildHistoryData(String deviceAddr, Integer dateType) {
HistoryDataListPageReqVO target = new HistoryDataListPageReqVO(); HistoryDataListPageReqVO target = new HistoryDataListPageReqVO();
switch (dateType) { switch (dateType) {
case 12 -> HistoryDataTimeRangeUtil.getLast12Hours(); case 12 -> target = HistoryDataTimeRangeUtil.getLast12Hours();
case 24 -> HistoryDataTimeRangeUtil.getLast24Hours(); case 24 -> target = HistoryDataTimeRangeUtil.getLast24Hours();
case 3 -> HistoryDataTimeRangeUtil.getLast3Days(); case 3 -> target = HistoryDataTimeRangeUtil.getLast3Days();
case 7 -> HistoryDataTimeRangeUtil.getLast7Days(); case 7 -> target = HistoryDataTimeRangeUtil.getLast7Days();
} }
target.setDeviceAddr(deviceAddr); target.setDeviceAddr(deviceAddr);
return target; return target;
@@ -125,10 +125,10 @@ public class HistoryDataListPageReqVO {
* 构建请求VO对象 * 构建请求VO对象
*/ */
private static HistoryDataListPageReqVO buildRequestVO(LocalDateTime startTime, LocalDateTime endTime) { private static HistoryDataListPageReqVO buildRequestVO(LocalDateTime startTime, LocalDateTime endTime) {
// long startTime = startLocalDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(); // long startTime = startLocalDateTime.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond();
// long endTime = endLocalDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(); // long endTime = endLocalDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
Long beginTimeStamp = startTime.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond(); Long beginTimeStamp = startTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
Long endTimeStamp = endTime.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond(); Long endTimeStamp = endTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
log.info("查询时间戳:{}-{}", beginTimeStamp, endTimeStamp); log.info("查询时间戳:{}-{}", beginTimeStamp, endTimeStamp);
return new HistoryDataListPageReqVO(beginTimeStamp, endTimeStamp); return new HistoryDataListPageReqVO(beginTimeStamp, endTimeStamp);

View File

@@ -15,6 +15,15 @@ import java.util.List;
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class HistoryDataListPageRespVO { public class HistoryDataListPageRespVO {
private String code;
private String message;
private HistoryDataList data;
@Data
@AllArgsConstructor
@NoArgsConstructor
public static class HistoryDataList {
/** /**
* 页码,每页数量,总页数,总条数 * 页码,每页数量,总页数,总条数
*/ */
@@ -23,6 +32,7 @@ public class HistoryDataListPageRespVO {
private Integer totalPages; private Integer totalPages;
private Integer total; private Integer total;
private List<Row> rows; private List<Row> rows;
}
@Data @Data
@AllArgsConstructor @AllArgsConstructor

View File

@@ -281,27 +281,27 @@ public class SoilService extends AbstractDeviceService {
} }
private void saveHistoryDataToDatabase(HistoryDataListPageRespVO response, HistoryDataListPageReqVO request) { private void saveHistoryDataToDatabase(HistoryDataListPageRespVO response, HistoryDataListPageReqVO request) {
if (historyDataStorageService != null && response.getRows() != null) { // if (historyDataStorageService != null && response.getRows() != null) {
// 转换为实体类 // // 转换为实体类
List<HistoryDataStorageService.HistoryDataEntity> entities = response.getRows().stream() // List<HistoryDataStorageService.HistoryDataEntity> entities = response.getRows().stream()
.map(row -> { // .map(row -> {
HistoryDataStorageService.HistoryDataEntity entity = new HistoryDataStorageService.HistoryDataEntity(); // HistoryDataStorageService.HistoryDataEntity entity = new HistoryDataStorageService.HistoryDataEntity();
entity.setHistoryId(row.getHistoryId()); // entity.setHistoryId(row.getHistoryId());
entity.setNodeId(row.getNodeId()); // entity.setNodeId(row.getNodeId());
entity.setDeviceAddress(row.getDeviceAddress()); // entity.setDeviceAddress(row.getDeviceAddress());
entity.setTemStr(row.getTemStr()); // entity.setTemStr(row.getTemStr());
entity.setTemValue(row.getTemValue()); // entity.setTemValue(row.getTemValue());
entity.setHumStr(row.getHumStr()); // entity.setHumStr(row.getHumStr());
entity.setHumValue(row.getHumValue()); // entity.setHumValue(row.getHumValue());
entity.setAlarmStatus(row.getAlarmStatus()); // entity.setAlarmStatus(row.getAlarmStatus());
entity.setRecordTime(row.getRecordTime()); // entity.setRecordTime(row.getRecordTime());
return entity; // return entity;
}) // })
.collect(Collectors.toList()); // .collect(Collectors.toList());
//
// 保存到模拟数据库 // // 保存到模拟数据库
historyDataStorageService.saveHistoryData(request.getDeviceAddr(), entities); // historyDataStorageService.saveHistoryData(request.getDeviceAddr(), entities);
} // }
} }
} }