diff --git a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/MarcaBL.java b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/MarcaBL.java index c783dac..4bfa9f8 100644 --- a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/MarcaBL.java +++ b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/MarcaBL.java @@ -25,10 +25,9 @@ public class MarcaBL implements MarcaBLLocal { // Add business logic below. (Right-click in editor and choose // "Insert Code > Add Business Method") - public void addMessage(FacesMessage.Severity severity, String summary, String detail) { FacesContext.getCurrentInstance(). - addMessage(null, new FacesMessage(severity, summary, detail)); + addMessage("marcaMsj", new FacesMessage(severity, summary, detail)); } @@ -39,21 +38,26 @@ public class MarcaBL implements MarcaBLLocal { Mensaje m = null; //Toda la logica - //Optional me = marcaDAO.buscarMarca(marca); - Optional marcaEncontradoOptional = marcaDAO.buscarMarca(marca); - Marca e = marcaDAO.buscarPorId(marca); + if (marca.getNombre().isEmpty() ) { + m = Mensaje.CAMPOS_INCOMPLETOS; + System.out.println("CAMPOS INCOMPLETOS"); + return m; + } - if (marcaEncontradoOptional.isPresent()) { + Optional marcaEncontradoOptional = marcaDAO.buscarMarca(marca); + if (marcaEncontradoOptional.isPresent()) { marcaEncontradoOptional.get(); m = Mensaje.ELEMENTO_DUPLICADO; - System.out.println("NO SE PUEDE AGREGAR, YA EXISTE"); - addMessage(FacesMessage.SEVERITY_ERROR, "ERROR", "La marca ya existe"); + System.out.println("NO SE PUEDE AGREGAR, LA MARCA YA EXISTE"); + addMessage(FacesMessage.SEVERITY_ERROR, "", "¡Error! El elemento ya existe"); } else { marcaDAO.agregar(marca); m = Mensaje.SIN_ERROR; System.out.println("AGREGADO CON EXITO"); - addMessage(FacesMessage.SEVERITY_INFO, "", "Se agrego la marca"); + addMessage(FacesMessage.SEVERITY_INFO, "", "¡Elemento agregado con éxito!"); + } + return m; } @@ -69,11 +73,11 @@ public class MarcaBL implements MarcaBLLocal { if (c == null) { m = Mensaje.ELEMENTO_NO_ENCONTRADO; - System.out.println("NO EXISTE EL PROVEEDOR"); + System.out.println("NO EXISTE LA MARCA"); return c; } else { m = Mensaje.SIN_ERROR; - System.out.println("CATEGORIA ENCONTRADO CON EXITO: " + c.getId()); + System.out.println("MARCA ENCONTRADA CON EXITO: " + c.getId()); return c; } } @@ -106,7 +110,7 @@ public class MarcaBL implements MarcaBLLocal { } @Override - public void eliminarId(Marca marca) { + public Mensaje eliminarId(Marca marca) { MarcaDAO a = new MarcaDAO(); Mensaje m = null; @@ -119,10 +123,11 @@ public class MarcaBL implements MarcaBLLocal { System.out.println("NO SE PUDO ELIMINAR"); addMessage(FacesMessage.SEVERITY_ERROR, "ERROR", "No se pudo eliminar"); } + return m; } @Override - public void editar(Marca marca) { + public Mensaje editar(Marca marca) { MarcaDAO ed = new MarcaDAO(); Mensaje m = null; @@ -131,13 +136,20 @@ public class MarcaBL implements MarcaBLLocal { if (marcaEncontradoOptional.isPresent()) { marcaEncontradoOptional.get(); m = Mensaje.ELEMENTO_DUPLICADO; - System.out.println("NO SE PUEDE AGREGAR, YA EXISTE"); - addMessage(FacesMessage.SEVERITY_ERROR, "ERROR", "La marca ya existe"); + System.out.println("NO SE PUEDE EDITAR, LA MARCA YA EXISTE"); + addMessage(FacesMessage.SEVERITY_ERROR, "", "¡Error al editar! El elemento ya existe"); } else { ed.editar(marca); m = Mensaje.SIN_ERROR; System.out.println("AGREGADO CON EXITO"); - addMessage(FacesMessage.SEVERITY_INFO, "", "Marca editada correctamente"); + addMessage(FacesMessage.SEVERITY_INFO, "", "¡Elemento editado correctamente!"); } + return m; + } + + public List getAll() { + MarcaDAO p = new MarcaDAO(); + return p.buscarStatus(true); } + } diff --git a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/MarcaBLLocal.java b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/MarcaBLLocal.java index 5f7b770..abee381 100644 --- a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/MarcaBLLocal.java +++ b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/MarcaBLLocal.java @@ -16,7 +16,8 @@ import mx.edu.tjs.chapala.sistemas.msg.Mensaje; */ @Local public interface MarcaBLLocal { - Mensaje agregar(Marca marca); + + Mensaje agregar(Marca marca); Marca buscarId(Marca marca); @@ -25,7 +26,7 @@ public interface MarcaBLLocal { List buscarStatus(boolean b); - void eliminarId(Marca marca); + Mensaje eliminarId(Marca marca); - public void editar(Marca p); + Mensaje editar(Marca p); } diff --git a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/MarcaDAO.java b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/MarcaDAO.java index cb74e3e..a8dd123 100644 --- a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/MarcaDAO.java +++ b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/MarcaDAO.java @@ -30,6 +30,7 @@ private EntityManager em; //Manejador de entidades (entidad=bean del modelo) public void agregar(Marca p) { em.getTransaction().begin(); + p.setStatus(1); em.persist(p); //Almacenar en la BD em.getTransaction().commit(); } diff --git a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/ProveedorDAO.java b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/ProveedorDAO.java index a130530..4766c49 100644 --- a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/ProveedorDAO.java +++ b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/ProveedorDAO.java @@ -76,17 +76,52 @@ public class ProveedorDAO { Query q3 = em.createNamedQuery("Proveedor.findByTelefono"); q3.setParameter("telefono", p.getTelefono()); + + Query q4 = em.createNamedQuery("Proveedor.findByMunicipio"); + q4.setParameter("municipio", p.getMunicipio()); + + Query q5 = em.createNamedQuery("Proveedor.findByPais"); + q5.setParameter("pais", p.getPais()); + + Query q6 = em.createNamedQuery("Proveedor.findByEstado"); + q6.setParameter("estado", p.getEstado()); + + Query q7 = em.createNamedQuery("Proveedor.findByCp"); + q7.setParameter("cp", p.getCp()); + + Query q8 = em.createNamedQuery("Proveedor.findByCalle"); + q8.setParameter("calle", p.getCalle()); + + Query q9 = em.createNamedQuery("Proveedor.findByNumero"); + q9.setParameter("numero", p.getNumero()); + List resultadoNombre = q1.getResultList(); List resultadoCorreo = q2.getResultList(); List resultadoTelefono = q3.getResultList(); + List resultadoMunicipio = q4.getResultList(); + List resultadoPais = q5.getResultList(); + List resultadoEstado = q6.getResultList(); + List resultadoCp = q7.getResultList(); + List resultadoCalle = q8.getResultList(); + List resultadoNumero = q9.getResultList(); // Verifica si hay resultados para todos los campos - if (!resultadoNombre.isEmpty() && !resultadoCorreo.isEmpty() && !resultadoTelefono.isEmpty()) { - // Compara si el mismo autor está en los tres resultados + if (!resultadoNombre.isEmpty() && !resultadoCorreo.isEmpty() && !resultadoTelefono.isEmpty() + && !resultadoMunicipio.isEmpty() && !resultadoPais.isEmpty() && !resultadoEstado.isEmpty() + && !resultadoCp.isEmpty() && !resultadoCalle.isEmpty() && !resultadoNumero.isEmpty()) { + // Compara si el mismo autor está en los resultados Proveedor autorEncontrado = resultadoNombre.stream() .filter(resultadoCorreo::contains) .filter(resultadoTelefono::contains) + .filter(resultadoMunicipio::contains) + .filter(resultadoPais::contains) + .filter(resultadoEstado::contains) + .filter(resultadoCp::contains) + .filter(resultadoCalle::contains) + .filter(resultadoNumero::contains) + + .findFirst() .orElse(null); diff --git a/Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/vista/DemoBeanMarca.java b/Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/vista/DemoBeanMarca.java index 470c993..e18b04f 100644 --- a/Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/vista/DemoBeanMarca.java +++ b/Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/vista/DemoBeanMarca.java @@ -14,6 +14,9 @@ import mx.edu.tjs.chapala.sistemas.bl.CategoriaBLLocal; import mx.edu.tjs.chapala.sistemas.bl.MarcaBLLocal; import mx.edu.tjs.chapala.sistemas.modelo.Categoria; import mx.edu.tjs.chapala.sistemas.modelo.Marca; +import mx.edu.tjs.chapala.sistemas.msg.Mensaje; +import static mx.edu.tjs.chapala.sistemas.msg.Mensaje.ELEMENTO_DUPLICADO; +import static mx.edu.tjs.chapala.sistemas.msg.Mensaje.SIN_ERROR; import org.primefaces.PrimeFaces; import org.primefaces.util.LangUtils; @@ -35,57 +38,46 @@ public class DemoBeanMarca implements Serializable { public DemoBeanMarca() { } - public String agregar() { - Marca p = new Marca(); - p.setNombre("LG"); - p.setStatus(1); - - marcaBL.agregar(p); - return "index.xhtml"; - } - - ////////////////////////////////////////////////////////// public String agregarMarca() { - marca.setStatus(1); - marcaBL.agregar(marca); - marca = new Marca(); //refresca el campo - PrimeFaces.current().executeScript("PF('dlg'.hide()"); - return "marcaLista.xhtml"; - } + Mensaje mensaje = marcaBL.agregar(marca); - ///////////////////////////////////////////////////////// + switch (mensaje) { + case SIN_ERROR: + marca = new Marca(); //limpiar + PrimeFaces.current().executeScript("PF('dlg').hide()"); + PrimeFaces.current().ajax().update("formtabla:growl"); + return "marcaLista.xhtml"; - - - - - - - public String editar() { - Marca p = new Marca(); - p.setId(1); - p.setNombre("Samsung"); + case ELEMENTO_DUPLICADO: + return null; - p.setStatus(0); + default: + return null; + } - marcaBL.editar(p); - return "index.xhtml"; } - public String buscarID() { - Marca p = new Marca(); - p.setId(1); + public String editarmarca() { + Mensaje mensaje = marcaBL.editar(marca); - marcaBL.buscarId(p); - return "index.xhtml"; - } + switch (mensaje) { + case SIN_ERROR: + marca = new Marca(); + PrimeFaces.current().executeScript("PF('dlg').hide()"); + PrimeFaces.current().ajax().update("formtabla:growl"); + return "marcaLista.xhtml"; - public String buscarNombre() { - Marca p = new Marca(); - p.setNombre("LG"); + case ELEMENTO_DUPLICADO: + return null; - marcaBL.buscarNombre(p); - return "index.xhtml"; + default: + return null; + } + + } + + public void eliminarmarca() { + marcaBL.eliminarId(marca); } public String buscarActivos() { @@ -110,7 +102,7 @@ public class DemoBeanMarca implements Serializable { marcaBL.eliminarId(p); return "index.xhtml"; } - + public List getMarcas(){ return marcaBL.buscarStatus(true); } @@ -126,40 +118,33 @@ public class DemoBeanMarca implements Serializable { public String getTitulo() { return titulo; } - - public void preparareditar(Marca marca){ - nuevo=false; - titulo="Editar Marca"; - this.marca= marca; - } - public void prepararnuevo(){ - nuevo= true; - titulo="Agregar marca"; - marca=new Marca(); - } public boolean isNuevo() { return nuevo; } - public void editarmarca(){ - nuevo= false; - marcaBL.editar(marca); - PrimeFaces.current().executeScript("PF('dlg'.hide()"); + public void preparareditar(Marca marca) { + nuevo = false; + titulo = "E D I T A R"; + this.marca = marca; } - public void preparareliminar(Marca marca){ - this.marca= marca; - + + public void prepararnuevo() { + nuevo = true; + titulo = "A G R E G A R"; + marca = new Marca(); } - public void eliminarmarca(){ - marcaBL.eliminarId(marca); + + public void preparareliminar(Marca marca) { + this.marca = marca; + } - public boolean globalFilterFunction(Object value, Object filter, Locale locale) { + + public boolean globalFilterFunction(Object value, Object filter, Locale locale) { String filterText = (filter == null) ? null : filter.toString().trim().toLowerCase(); if (LangUtils.isBlank(filterText)) { return true; } - Marca customer = (Marca) value; return customer.getNombre().toLowerCase().contains(filterText) @@ -173,9 +158,42 @@ public class DemoBeanMarca implements Serializable { public void setFilteredCustomers3(List filteredCustomers3) { this.filteredCustomers3 = filteredCustomers3; } - - - - - -} \ No newline at end of file + + + + + + + + + + public String editar() { + Marca p = new Marca(); + p.setId(1); + p.setNombre("Samsung"); + + p.setStatus(0); + + marcaBL.editar(p); + return "index.xhtml"; + } + + public String buscarID() { + Marca p = new Marca(); + p.setId(1); + + marcaBL.buscarId(p); + return "index.xhtml"; + } + + public String buscarNombre() { + Marca p = new Marca(); + p.setNombre("LG"); + + marcaBL.buscarNombre(p); + return "index.xhtml"; + } + + + +} diff --git a/Inventario-war/web/marcaLista.xhtml b/Inventario-war/web/marcaLista.xhtml index 570294c..7f18e74 100644 --- a/Inventario-war/web/marcaLista.xhtml +++ b/Inventario-war/web/marcaLista.xhtml @@ -6,7 +6,7 @@ xmlns:f="http://xmlns.jcp.org/jsf/core" xmlns:p="http://primefaces.org/ui" xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"> - + @@ -17,9 +17,9 @@ - - - + + + @@ -29,47 +29,34 @@ - - - - - - - - - - - - - - - - + + - - + +
- - - - + + + - +
-
- - +
+ + @@ -82,72 +69,72 @@ - + - + - - - + + + - - - + + +
- - - - - - + + + + + + - + -

- - - - - - - - - - - - - -
- - - - - - - - - - - -
- +

+ + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
- - + +
- - + +
- + - + \ No newline at end of file