This commit is contained in:
2023-07-31 16:29:31 +08:00
parent 73b3f067fb
commit f56d1338fc

View File

@@ -1,6 +1,5 @@
package cn.lihongjie.coal.dto;
import io.vavr.Function3;
import io.vavr.Function4;
import io.vavr.Tuple;
import io.vavr.Tuple2;
@@ -359,11 +358,23 @@ public class CommonQuery {
return criteriaBuilder.greaterThanOrEqualTo(root.get(x.key), c.convert(x.value, LocalDate.class));
});
map.put(Tuple.of("ge", LocalDateTime.class), (Root root, CriteriaBuilder criteriaBuilder, QueryItem x, ConversionService c) -> {
return criteriaBuilder.greaterThanOrEqualTo(root.get(x.key), c.convert(x.value, LocalDateTime.class));
});
map.put(Tuple.of("empty", List.class), (Root root, CriteriaBuilder criteriaBuilder, QueryItem x,
ConversionService c) -> {
return criteriaBuilder.isEmpty(root.get(x.key));
});
map.put(Tuple.of("nempty", List.class), (Root root, CriteriaBuilder criteriaBuilder, QueryItem x,
ConversionService c) -> {
return criteriaBuilder.isNotEmpty(root.get(x.key));
});
@@ -496,7 +507,7 @@ public class CommonQuery {
Function4<Root, CriteriaBuilder, QueryItem, ConversionService, Predicate> function4 = map.get(Tuple.of(x.opt, javaType));
if (function4 == null) {
throw new RuntimeException("无法识别的查询 " + x.toString());
throw new RuntimeException("无法识别的查询 " + x);
}
return function4.apply(root, criteriaBuilder, x, conversionService);