Specification<Equipment> specification = (root, criteriaQuery, criteriaBuilder) -> {
List<Predicate> predicates = new ArrayList<>();
if (!ObjectUtils.isEmpty(name)) {
predicates.add(criteriaBuilder.or(
criteriaBuilder.like(root.get("name"), "%" + name.trim() + "%"),
criteriaBuilder.like(root.get("number"), "%" + name.trim() + "%"))
);
}
if (!ObjectUtils.isEmpty(state)) {
predicates.add(criteriaBuilder.equal(root.get("state"), state));
}
return criteriaBuilder.and(predicates.toArray(new Predicate[0]));
};
Pageable pageable = PageRequest.of(requestPage.getPageNum(), requestPage.getSizeNum(), Sort.Direction.DESC, "createTime");
return getRepository().findAll(specification, pageable).map(getConvert()::toConvertVO);
Specification or用法
最新推荐文章于 2023-05-04 18:02:39 发布