diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 3611ce6f..c79958d6 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -2,6 +2,12 @@ 更新日志文档,版本顺序从新到旧,最新版本在最前(上)面。 +# 0.20.4 + +## 优化 + +- 条目条件查询接口 + # 0.20.3 ## 新特性 diff --git a/gradle.properties b/gradle.properties index 85833b45..56d4914e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1 +1 @@ -version=0.20.3 +version=0.20.4 diff --git a/server/src/main/java/run/ikaros/server/core/subject/service/impl/SubjectServiceImpl.java b/server/src/main/java/run/ikaros/server/core/subject/service/impl/SubjectServiceImpl.java index a37401be..8fcaffd9 100644 --- a/server/src/main/java/run/ikaros/server/core/subject/service/impl/SubjectServiceImpl.java +++ b/server/src/main/java/run/ikaros/server/core/subject/service/impl/SubjectServiceImpl.java @@ -348,16 +348,16 @@ public Mono> listEntitiesByCondition(FindSubjectCondition co } } - Query query = Query.query(criteria) - .sort(Sort.by(Sort.Order.asc("name"))) - .sort(Sort.by(Sort.Order.asc("type"))) - .sort(Sort.by(Sort.Order.asc("nsfw"))) - .sort(Sort.by(updateTimeDesc - ? Sort.Order.desc("update_time") - : Sort.Order.asc("update_time"))) - .sort(Sort.by(airTimeDesc - ? Sort.Order.desc("air_time") + Query query = Query.query(criteria); + + if (updateTimeDesc) { + query = query.sort(Sort.by(Sort.Order.desc("update_time"))); + } + + query = query + .sort(Sort.by(airTimeDesc ? Sort.Order.desc("air_time") : Sort.Order.asc("air_time"))) + .sort(Sort.by(Sort.Order.asc("name"))) .with(pageRequest); Flux subjectEntityFlux = template.select(query, SubjectEntity.class);