diff --git a/bonus-modules/bonus-base/src/main/java/com/bonus/screen/service/impl/ProjectDetailsViewServiceImpl.java b/bonus-modules/bonus-base/src/main/java/com/bonus/screen/service/impl/ProjectDetailsViewServiceImpl.java index 3a02e18..afda0cf 100644 --- a/bonus-modules/bonus-base/src/main/java/com/bonus/screen/service/impl/ProjectDetailsViewServiceImpl.java +++ b/bonus-modules/bonus-base/src/main/java/com/bonus/screen/service/impl/ProjectDetailsViewServiceImpl.java @@ -1,12 +1,12 @@ package com.bonus.screen.service.impl; -import com.alibaba.nacos.common.utils.CollectionUtils; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.base.entity.DevAttributeVo; import com.bonus.screen.mapper.TbDeviceDataRecord; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.Comparator; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -52,9 +52,26 @@ public class ProjectDetailsViewServiceImpl { } } Map> listMap = records.stream().collect(Collectors.groupingBy(DevAttributeVo::getJcName)); + extractedSort(listMap); + // 返回成功的 AjaxResult,包含分组和排序后的数据 return AjaxResult.success(listMap); } + /** + * 对每个分组按 XTime 升序排列 + * @param listMap + */ + private void extractedSort(Map> listMap) { + // 对每个分组按 XTime 升序排列 + for (Map.Entry> entry : listMap.entrySet()) { + List sortedList = entry.getValue().stream() + .sorted(Comparator.comparing(DevAttributeVo::getXTime)) + .collect(Collectors.toList()); + // 更新分组中的列表 + entry.setValue(sortedList); + } + } + public AjaxResult getPitDevAttributeRecordByDeviceId(Integer devId) { List records = tbDeviceDataRecordMapper.getPitDevAttributeRecordByDeviceId(devId); if (records.isEmpty()) { @@ -68,6 +85,7 @@ public class ProjectDetailsViewServiceImpl { } } Map> listMap = records.stream().collect(Collectors.groupingBy(DevAttributeVo::getJcName)); + extractedSort(listMap); return AjaxResult.success(listMap); }