fix: 修复查询排序没有应用
This commit is contained in:
@@ -482,11 +482,18 @@ public abstract class SimpleServiceSupport<ENTITY extends SimpleEntity> implemen
|
|||||||
public Page<ENTITY> list(Query listQuery) {
|
public Page<ENTITY> list(Query listQuery) {
|
||||||
var pageRequest = PageRequest.of(DEFAULT_PAGE_INDEX - 1, DEFAULT_PAGE_SIZE, Sort.by(SimpleEntity.Fields.createdTime).descending());
|
var pageRequest = PageRequest.of(DEFAULT_PAGE_INDEX - 1, DEFAULT_PAGE_SIZE, Sort.by(SimpleEntity.Fields.createdTime).descending());
|
||||||
if (ObjectHelper.isNotNull(listQuery.getPage())) {
|
if (ObjectHelper.isNotNull(listQuery.getPage())) {
|
||||||
pageRequest = PageRequest.of(
|
var index = Math.max(ObjectHelper.defaultIfNull(listQuery.getPage().getIndex(), DEFAULT_PAGE_INDEX) - 1, 0);
|
||||||
ObjectHelper.defaultIfNull(listQuery.getPage().getIndex(), DEFAULT_PAGE_INDEX) - 1,
|
var size = Math.max(ObjectHelper.defaultIfNull(listQuery.getPage().getSize(), DEFAULT_PAGE_SIZE), 1);
|
||||||
ObjectHelper.defaultIfNull(listQuery.getPage().getSize(), DEFAULT_PAGE_SIZE),
|
if (ObjectHelper.isNotEmpty(listQuery.getSort())) {
|
||||||
Sort.by(SimpleEntity.Fields.createdTime).descending()
|
pageRequest = PageRequest.of(index, size, Sort.by(
|
||||||
);
|
listQuery.getSort()
|
||||||
|
.stream()
|
||||||
|
.map(sort -> new Sort.Order(Sort.Direction.fromString(sort.getDirection().name()), sort.getColumn()))
|
||||||
|
.toList()
|
||||||
|
));
|
||||||
|
} else {
|
||||||
|
pageRequest = PageRequest.of(index, size);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return repository.findAll(
|
return repository.findAll(
|
||||||
(root, query, builder) -> {
|
(root, query, builder) -> {
|
||||||
|
|||||||
Reference in New Issue
Block a user