diff --git a/Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/usuarios/lista.jsp b/Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/usuarios/lista.jsp index e6f7c21..cb5c605 100644 --- a/Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/usuarios/lista.jsp +++ b/Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/usuarios/lista.jsp @@ -22,6 +22,24 @@
+
"> +
+ + +
+
+ + +
+ +
+
+
+ +
+ +
+
diff --git a/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/UsuariosController.java b/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/UsuariosController.java index 1e23c1b..78e51f4 100644 --- a/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/UsuariosController.java +++ b/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/UsuariosController.java @@ -59,6 +59,13 @@ public class UsuariosController { public List lista() { return dao.listAll(); } + + @Get("/usuarios/lista") + @Restrito(descricao = "USUARIOS_LISTA") + public List lista(Usuario usuario) { + result.include("usuario", usuario); + return dao.listAll(usuario); + } @Restrito(descricao = "USUARIOS_ADICIONAR") public void form() { diff --git a/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/UsuarioDAO.java b/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/UsuarioDAO.java index 0b8c539..881f44c 100644 --- a/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/UsuarioDAO.java +++ b/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/UsuarioDAO.java @@ -2,6 +2,7 @@ package br.com.eselo.dao; import java.util.List; +import org.hibernate.Criteria; import org.hibernate.Session; import org.hibernate.criterion.Order; import org.hibernate.criterion.Restrictions; @@ -22,6 +23,23 @@ public class UsuarioDAO extends GenericDAO { return getSession().createCriteria(getPersistentClass()) .addOrder(Order.asc("nome")).list(); } + + @SuppressWarnings("unchecked") + public List listAll(Usuario usuario) { + Criteria criteria = getSession().createCriteria(getPersistentClass()); + + if (usuario.getNome() != null) { + criteria.add(Restrictions.ilike("nome", "%" + usuario.getNome() + "%")); + } + + if (usuario.getCpf() != null) { + criteria.add(Restrictions.eq("cpf", usuario.getCpf().replaceAll("[.-]", ""))); + } + + criteria.addOrder(Order.asc("nome")); + + return criteria.list(); + } public boolean existeUsuario(Usuario usuario) { Usuario encontrado = (Usuario) getSession() -- libgit2 0.21.2