public static Specification createListSpecification()

in service/src/main/java/org/apache/fineract/cn/cheque/service/internal/repository/specification/ChequeSpecification.java [30:47]


  public static Specification<ChequeEntity> createListSpecification(
      final String state, final String account) {

    return (root, query, cb) -> {

      final ArrayList<Predicate> predicates = new ArrayList<>();

      if (!state.equalsIgnoreCase("ALL")) {
        predicates.add(cb.equal(root.get("state"), State.valueOf(state.toUpperCase()).name()));
      }

      if (account != null && ! account.isEmpty()) {
        predicates.add(cb.equal(root.get("accountNumber"), account));
      }

      return cb.and(predicates.toArray(new Predicate[predicates.size()]));
    };
  }