Commit e4f2afb7815ed041d35ceef3d89a359935fdc817

Authored by vitor.pacheco
1 parent 8a2cdf55
Exists in master

Codificação #2936: Filtro no Usuário

git-svn-id: https://svn.bento.ifrs.edu.br/default/ASES/e-selo@9749 c2178572-b5ca-4887-91d2-9e3a90c7d55b
Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/usuarios/lista.jsp
... ... @@ -22,6 +22,24 @@
22 22  
23 23 <div class="row">
24 24 <div class="col-md-12">
  25 + <form class="form-inline" role="form" action="<c:url value="/usuarios/lista"/>">
  26 + <div class="form-group">
  27 + <label for="txtNome">Nome</label>
  28 + <input id="txtNome" name="usuario.nome" class="form-control input-sm" value="${usuario.nome}">
  29 + </div>
  30 + <div class="form-group">
  31 + <label for="txtCpf">CPF</label>
  32 + <input id="txtCpf" name="usuario.cpf" class="form-control input-sm cpf" maxlength="11" value="${usuario.cpf}">
  33 + </div>
  34 + <button type="submit" class="btn btn-default btn-sm" style="margin-top: 24px">Pesquisar</button>
  35 + </form>
  36 + </div>
  37 + </div>
  38 +
  39 + <br />
  40 +
  41 + <div class="row">
  42 + <div class="col-md-12">
25 43 <div class="table-responsive">
26 44 <table id="usuariosTable" pagesize="10" class="table table-striped table-bordered table-hover table-condensed">
27 45 <thead>
... ...
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/UsuariosController.java
... ... @@ -59,6 +59,13 @@ public class UsuariosController {
59 59 public List<Usuario> lista() {
60 60 return dao.listAll();
61 61 }
  62 +
  63 + @Get("/usuarios/lista")
  64 + @Restrito(descricao = "USUARIOS_LISTA")
  65 + public List<Usuario> lista(Usuario usuario) {
  66 + result.include("usuario", usuario);
  67 + return dao.listAll(usuario);
  68 + }
62 69  
63 70 @Restrito(descricao = "USUARIOS_ADICIONAR")
64 71 public void form() {
... ...
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/UsuarioDAO.java
... ... @@ -2,6 +2,7 @@ package br.com.eselo.dao;
2 2  
3 3 import java.util.List;
4 4  
  5 +import org.hibernate.Criteria;
5 6 import org.hibernate.Session;
6 7 import org.hibernate.criterion.Order;
7 8 import org.hibernate.criterion.Restrictions;
... ... @@ -22,6 +23,23 @@ public class UsuarioDAO extends GenericDAO&lt;Usuario&gt; {
22 23 return getSession().createCriteria(getPersistentClass())
23 24 .addOrder(Order.asc("nome")).list();
24 25 }
  26 +
  27 + @SuppressWarnings("unchecked")
  28 + public List<Usuario> listAll(Usuario usuario) {
  29 + Criteria criteria = getSession().createCriteria(getPersistentClass());
  30 +
  31 + if (usuario.getNome() != null) {
  32 + criteria.add(Restrictions.ilike("nome", "%" + usuario.getNome() + "%"));
  33 + }
  34 +
  35 + if (usuario.getCpf() != null) {
  36 + criteria.add(Restrictions.eq("cpf", usuario.getCpf().replaceAll("[.-]", "")));
  37 + }
  38 +
  39 + criteria.addOrder(Order.asc("nome"));
  40 +
  41 + return criteria.list();
  42 + }
25 43  
26 44 public boolean existeUsuario(Usuario usuario) {
27 45 Usuario encontrado = (Usuario) getSession()
... ...