|
|
@@ -178,6 +178,17 @@ public class CollectionService {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+ if (query.containsKey("tagId")) {
|
|
|
+ int tagId = (int) query.get("tagId");
|
|
|
+ Long tag = (long) tagId;
|
|
|
+ specification = specification.and((Specification<Collection>) (root, criteriaQuery, criteriaBuilder) -> {
|
|
|
+ List<Predicate> and = new ArrayList<>();
|
|
|
+ and.add(criteriaBuilder.equal(root.join("tags").get("id"), tag));
|
|
|
+ return criteriaBuilder.and(and.toArray(new Predicate[0]));
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
// if (pageRequest.getSort().stream().noneMatch(order -> order.getProperty().equals("createdAt"))) {
|
|
|
// pageRequest = PageRequest.of(pageRequest.getPageNumber(), pageQuery.getSize(),
|
|
|
// pageRequest.getSort().and(Sort.by("createdAt").descending()));
|