List of usage examples for org.hibernate.criterion Restrictions ilike
public static Criterion ilike(String propertyName, Object value)
From source file:br.com.una.pa.condominio.mobile.dao.impl.DespesaDAOImpl.java
public Boolean validarDuplicidade(Despesa objeto) throws DAOException { List<Despesa> lista = this.findByRestrictions(0, Restrictions.eq("realizacao", objeto.getRealizacao()), Restrictions.ilike("nome", objeto.getNome()), Restrictions.eq("valor", objeto.getValor()), Restrictions.eq("condominio.id", objeto.getCondominio().getId())); return lista != null && !lista.isEmpty(); }
From source file:br.com.una.pa.condominio.mobile.dao.impl.PessoaDAOImpl.java
public Boolean verificarSeJaExiste(Pessoa pessoa) throws DAOException { List<Pessoa> lista = this.findByRestrictions(0, Restrictions.eq("nascimento", pessoa.getNascimento()), Restrictions.ilike("nome", pessoa.getNome()), Restrictions.eq("sexo", pessoa.getSexo())); return lista != null && lista.size() > 0; }
From source file:br.com.una.pa.condominio.mobile.dao.impl.ReceitaDAOImpl.java
public Boolean validarDuplicidade(Receita receita) throws DAOException { List<Receita> lista = this.findByRestrictions(0, Restrictions.eq("realizacao", receita.getRealizacao()), receita.getNome() != null ? Restrictions.ilike("nome", receita.getNome()) : null, receita.getUnidade() != null ? Restrictions.eq("unidade", receita.getUnidade()) : null, Restrictions.eq("valor", receita.getValor()), Restrictions.eq("condominio.id", receita.getCondominio().getId())); return lista != null && !lista.isEmpty(); }
From source file:br.com.una.pa.condominio.mobile.dao.impl.UnidadeDAOImpl.java
public Boolean verificarSeJaExiste(Unidade unidade) throws DAOException { List<Unidade> lista = this.findByRestrictions(0, Restrictions.eq("condominio.id", unidade.getCondominio().getId()), Restrictions.ilike("nome", unidade.getNome())); return lista != null && lista.size() > 0; }
From source file:br.com.una.pa.condominio.mobile.dao.impl.UnidadeDAOImpl.java
public Unidade retornarUnidade(Unidade unidade) throws DAOException { List<Unidade> lista = this.findByRestrictions(0, Restrictions.eq("condominio.id", unidade.getCondominio().getId()), Restrictions.ilike("nome", unidade.getNome())); return lista != null && lista.size() > 0 ? lista.get(0) : null; }
From source file:br.com.webbudget.domain.model.repository.entries.ContactRepository.java
License:Open Source License
/** * * @param filter//from ww w . j a v a 2 s . c o m * @param blocked * @return */ @Override public List<Contact> listByFilter(String filter, Boolean blocked) { final Criteria criteria = this.getSession().createCriteria(this.getPersistentClass()); if (filter != null) { criteria.add(Restrictions.or(Restrictions.ilike("name", "%" + filter + "%"), Restrictions.ilike("email", "%" + filter + "%"), Restrictions.eq("document", filter), Restrictions.ilike("city", "%" + filter + "%"))); } if (blocked != null) { criteria.add(Restrictions.eq("blocked", blocked)); } return criteria.list(); }
From source file:br.com.webbudget.domain.model.repository.entries.ContactRepository.java
License:Open Source License
/** * * @param filter/* w w w. j ava 2s . c om*/ * @param blocked * @param pageRequest * @return */ @Override public Page<Contact> listLazilyByFilter(String filter, Boolean blocked, PageRequest pageRequest) { final Criteria criteria = this.createCriteria(); if (filter != null) { criteria.add(Restrictions.or(Restrictions.ilike("name", "%" + filter + "%"), Restrictions.ilike("email", "%" + filter + "%"), Restrictions.eq("document", filter), Restrictions.ilike("city", "%" + filter + "%"))); } if (blocked != null) { criteria.add(Restrictions.eq("blocked", blocked)); } // projetamos para pegar o total de paginas possiveis criteria.setProjection(Projections.count("id")); final Long totalRows = (Long) criteria.uniqueResult(); // limpamos a projection para que a criteria seja reusada criteria.setProjection(null); criteria.setResultTransformer(Criteria.ROOT_ENTITY); // paginamos criteria.setFirstResult(pageRequest.getFirstResult()); criteria.setMaxResults(pageRequest.getPageSize()); if (pageRequest.getSortDirection() == PageRequest.SortDirection.ASC) { criteria.addOrder(Order.asc(pageRequest.getSortField())); } else if (pageRequest.getSortDirection() == PageRequest.SortDirection.DESC) { criteria.addOrder(Order.desc(pageRequest.getSortField())); } // montamos o resultado paginado return new Page<>(criteria.list(), totalRows); }
From source file:br.com.webbudget.domain.model.repository.financial.FixedMovementRepository.java
License:Open Source License
/** * * @param filter// ww w. j ava2 s . c o m * @param pageRequest * @return */ @Override public Page<FixedMovement> listByFilter(String filter, PageRequest pageRequest) { final Criteria criteria = this.createCriteria(); final List<Criterion> criterions = new ArrayList<>(); // filtramos if (filter != null && !filter.isEmpty()) { criterions.add(Restrictions.ilike("description", "%" + filter + "%")); criterions.add(Restrictions.ilike("identification", "%" + filter + "%")); // se conseguir castar para bigdecimal trata como um filtro try { criterions.add(Restrictions.eq("value", new BigDecimal(filter))); } catch (NumberFormatException ex) { } } criteria.add(Restrictions.or(criterions.toArray(new Criterion[] {}))); // projetamos para pegar o total de paginas possiveis criteria.setProjection(Projections.count("id")); final Long totalRows = (Long) criteria.uniqueResult(); // limpamos a projection para que a criteria seja reusada criteria.setProjection(null); criteria.setResultTransformer(Criteria.ROOT_ENTITY); // paginamos criteria.setFirstResult(pageRequest.getFirstResult()); criteria.setMaxResults(pageRequest.getPageSize()); if (pageRequest.getSortDirection() == PageRequest.SortDirection.ASC) { criteria.addOrder(Order.asc(pageRequest.getSortField())); } else if (pageRequest.getSortDirection() == PageRequest.SortDirection.DESC) { criteria.addOrder(Order.desc(pageRequest.getSortField())); } // montamos o resultado paginado return new Page<>(criteria.list(), totalRows); }
From source file:br.com.webbudget.domain.model.repository.financial.MovementRepository.java
License:Open Source License
/** * * @param filter// ww w .j a va2 s . c o m * @param pageRequest * @return */ @Override public Page<Movement> listByFilter(MovementFilter filter, PageRequest pageRequest) { final Criteria criteria = this.createCriteria(); final List<Criterion> criterions = new ArrayList<>(); criteria.createAlias("contact", "co", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("apportionments", "ap"); criteria.createAlias("ap.movementClass", "mc"); criteria.createAlias("ap.costCenter", "cc"); criteria.createAlias("financialPeriod", "fp"); // montramos os criterios de filtragem geral if (filter.hasCriteria()) { criterions.add(Restrictions.eq("code", filter.getCriteria())); criterions.add(Restrictions.ilike("description", "%" + filter.getCriteria() + "%")); criterions.add(Restrictions.ilike("mc.name", "%" + filter.getCriteria() + "%")); criterions.add(Restrictions.ilike("cc.name", "%" + filter.getCriteria() + "%")); criterions.add(Restrictions.ilike("co.name", "%" + filter.getCriteria() + "%")); // se conseguir castar para bigdecimal trata como um filtro try { criterions.add(Restrictions.eq("value", filter.criteriaToBigDecimal())); } catch (ParseException ex) { } } criteria.add(Restrictions.or(criterions.toArray(new Criterion[] {}))); criteria.add(Restrictions.and(filter.getCustomFilters())); // projetamos para pegar o total de paginas possiveis criteria.setProjection(Projections.count("id")); final Long totalRows = (Long) criteria.uniqueResult(); // limpamos a projection para que a criteria seja reusada criteria.setProjection(null); criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); // paginamos criteria.setFirstResult(pageRequest.getFirstResult()); criteria.setMaxResults(pageRequest.getPageSize()); // aplica o multisort dos campos if (pageRequest.isMultiSort()) { pageRequest.getMultiSortFields().stream().forEach(field -> { if (field.getDirection() == SortDirection.ASC) { criteria.addOrder(Order.asc(field.getSortField())); } else if (field.getDirection() == SortDirection.DESC) { criteria.addOrder(Order.desc(field.getSortField())); } }); } else if (pageRequest.getSortDirection() == SortDirection.ASC) { criteria.addOrder(Order.asc(pageRequest.getSortField())); } else if (pageRequest.getSortDirection() == SortDirection.DESC) { criteria.addOrder(Order.desc(pageRequest.getSortField())); } // montamos o resultado paginado return new Page<>(criteria.list(), totalRows); }
From source file:br.com.webbudget.domain.model.repository.logbook.EntryRepository.java
License:Open Source License
/** * * @param vehicle/*from w w w. ja v a 2s . co m*/ * @param filter * @return */ @Override public List<Entry> listByVehicleAndFilter(Vehicle vehicle, String filter) { final Criteria criteria = this.createCriteria(); criteria.createAlias("vehicle", "v"); criteria.add(Restrictions.eq("v.id", vehicle.getId())); if (StringUtils.isNoneBlank(filter)) { criteria.createAlias("movementClass", "mc"); criteria.add(Restrictions.or(Restrictions.ilike("place", filter + "%"), Restrictions.ilike("title", filter + "%"), Restrictions.ilike("mc.name", filter + "%"), Restrictions.ilike("description", "%" + filter + "%"))); } return criteria.list(); }