Skip to content

Commit

Permalink
Restore logic
Browse files Browse the repository at this point in the history
  • Loading branch information
VadymMakitra committed Jul 15, 2022
1 parent ee22202 commit 5149fef
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 43 deletions.
27 changes: 11 additions & 16 deletions dao/src/main/java/greencity/repository/BigOrderTableRepository.java
Original file line number Diff line number Diff line change
@@ -1,25 +1,22 @@
package greencity.repository;

import java.util.ArrayList;
import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;

import greencity.entity.order.BigOrderTableViews;
import greencity.filters.OrderPage;
import greencity.filters.OrderSearchCriteria;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Repository;
import org.springframework.util.CollectionUtils;

import greencity.entity.order.BigOrderTableViews;
import greencity.filters.OrderPage;
import greencity.filters.OrderSearchCriteria;
import javax.persistence.EntityManager;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;
import java.util.ArrayList;
import java.util.List;

import static java.util.Objects.nonNull;

Expand Down Expand Up @@ -122,9 +119,7 @@ private void getPredicateByDateFilter(List<Predicate> predicates, OrderSearchCri

private void getPredicateByTariffsInfoId(List<Predicate> predicates, List<Long> tariffsInfoIds,
Root<BigOrderTableViews> orderRoot) {
if (!CollectionUtils.isEmpty(tariffsInfoIds)) {
predicates.add(criteriaPredicate.filter(tariffsInfoIds, orderRoot, "tariffs_info_id"));
}
predicates.add(criteriaPredicate.filter(tariffsInfoIds, orderRoot, "tariffs_info_id"));
}

private void sort(OrderPage orderPage, CriteriaQuery<BigOrderTableViews> cq, Root<BigOrderTableViews> root) {
Expand Down
39 changes: 12 additions & 27 deletions dao/src/main/java/greencity/repository/UserTableRepo.java
Original file line number Diff line number Diff line change
@@ -1,34 +1,21 @@
package greencity.repository;

import greencity.entity.enums.SortingOrder;
import greencity.entity.user.User;
import greencity.filters.CustomerPage;
import greencity.filters.UserFilterCriteria;
import org.springframework.data.domain.*;
import org.springframework.stereotype.Repository;

import javax.persistence.EntityManager;
import javax.persistence.TypedQuery;
import javax.persistence.criteria.*;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;

import javax.persistence.EntityManager;
import javax.persistence.TypedQuery;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Expression;
import javax.persistence.criteria.Join;
import javax.persistence.criteria.JoinType;
import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Repository;
import org.springframework.util.CollectionUtils;

import greencity.entity.enums.SortingOrder;
import greencity.entity.user.User;
import greencity.filters.CustomerPage;
import greencity.filters.UserFilterCriteria;

import static java.util.Objects.nonNull;

@Repository
Expand Down Expand Up @@ -69,13 +56,11 @@ public Page<User> findAll(UserFilterCriteria userFilterCriteria, String column,
criteriaQuery.groupBy(userRoot.get("id"));
setOrder(column, sortingOrder, criteriaQuery, userRoot);
if (userFilterCriteria != null) {
Predicate predicateHaving = getPredicateForHaving(userFilterCriteria, userRoot);
criteriaQuery.having(predicateHaving);
}
if (userFilterCriteria != null && !CollectionUtils.isEmpty(usId)) {
Predicate predicateWhere = getPredicateForWhereAnd(userFilterCriteria, userRoot);
Predicate predicateWhere2 = getPredicateForWhereOr(userRoot, usId);
Predicate predicateHaving = getPredicateForHaving(userFilterCriteria, userRoot);
criteriaQuery.where(predicateWhere, predicateWhere2);
criteriaQuery.having(predicateHaving);
}

TypedQuery<User> typedQuery = entityManager.createQuery(criteriaQuery);
Expand Down

0 comments on commit 5149fef

Please sign in to comment.