fix:CSV数据查询

This commit is contained in:
2026-02-27 16:45:07 +08:00
parent 96ecacc431
commit a744ef0b59

View File

@@ -360,6 +360,11 @@ public class DimensionTemplateServiceImpl extends ServiceImpl<DimensionTemplateM
} }
if(CollectionUtils.isNotEmpty(result)) { if(CollectionUtils.isNotEmpty(result)) {
// 判断是否存在PHASE类型的节点
boolean hasPhaseNode = result.stream()
.flatMap(dto -> dto.getMergeSameNameChildren().stream())
.anyMatch(child -> NodeTypeEnum.PHASE.getValue().equals(child.getRelatedResourceUuidOwnType()));
// 先按dataType排序文件夹在前dataType=1文件在后dataType=2再按children中的最大创建时间倒序排序 // 先按dataType排序文件夹在前dataType=1文件在后dataType=2再按children中的最大创建时间倒序排序
result.sort((dto1, dto2) -> { result.sort((dto1, dto2) -> {
// 首先按dataType排序文件夹(1)在前,文件(2)在后 // 首先按dataType排序文件夹(1)在前,文件(2)在后
@@ -369,6 +374,15 @@ public class DimensionTemplateServiceImpl extends ServiceImpl<DimensionTemplateM
return dataType1.compareTo(dataType2); // 升序1(文件夹) < 2(文件) return dataType1.compareTo(dataType2); // 升序1(文件夹) < 2(文件)
} }
// 如果存在PHASE类型节点dataType相同时按主键ID正序排序
if (hasPhaseNode) {
Long id1 = dto1.getId();
Long id2 = dto2.getId();
if (id1 != null && id2 != null && !id1.equals(id2)) {
return id1.compareTo(id2); // 正序排序
}
}
// dataType相同或都为null时按创建时间倒序排序 // dataType相同或都为null时按创建时间倒序排序
LocalDateTime maxCreateTime1 = dto1.getMergeSameNameChildren().stream() LocalDateTime maxCreateTime1 = dto1.getMergeSameNameChildren().stream()
.map(FileMetadataInfoResp::getCreateTime) .map(FileMetadataInfoResp::getCreateTime)