diff --git a/InventarioJakartaJIN-ejb/src/java/mx/edu/tsj/chapala/sistemas/jin/bl/UbicacionBL.java b/InventarioJakartaJIN-ejb/src/java/mx/edu/tsj/chapala/sistemas/jin/bl/UbicacionBL.java index 02c348b..4091d87 100644 --- a/InventarioJakartaJIN-ejb/src/java/mx/edu/tsj/chapala/sistemas/jin/bl/UbicacionBL.java +++ b/InventarioJakartaJIN-ejb/src/java/mx/edu/tsj/chapala/sistemas/jin/bl/UbicacionBL.java @@ -21,7 +21,7 @@ public class UbicacionBL implements UbicacionBLLocal { public Mensajes elimarId(Ubicacion ubicacion) { UbicacionDAO u = new UbicacionDAO(); Ubicacion existe = u.buscarPorId(ubicacion); - if(existe==null){ + if(existe==null && existe.getStatus()==0){ return Mensajes.ELEMENTO_ENCONTRADO; } else{ @@ -35,10 +35,6 @@ public class UbicacionBL implements UbicacionBLLocal { } - - - - // Add business logic below. (Right-click in editor and choose // "Insert Code > Add Business Method") diff --git a/InventarioJakartaJIN-war/src/java/mx/edu/tsj/chapala/sistemas/jin/servicios/UbicacionServlet.java b/InventarioJakartaJIN-war/src/java/mx/edu/tsj/chapala/sistemas/jin/servicios/UbicacionServlet.java new file mode 100644 index 0000000..fed9160 --- /dev/null +++ b/InventarioJakartaJIN-war/src/java/mx/edu/tsj/chapala/sistemas/jin/servicios/UbicacionServlet.java @@ -0,0 +1,176 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/Servlet.java to edit this template + */ +package mx.edu.tsj.chapala.sistemas.jin.servicios; + +import java.io.IOException; +import java.io.PrintWriter; +import javax.ejb.EJB; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import mx.edu.tsj.chapala.sistemas.jin.bl.UbicacionBLLocal; +import mx.edu.tsj.chapala.sistemas.jin.modelo.Ubicacion; +import mx.edu.tsj.chapala.sistemas.jin.msg.Mensajes; + +/** + * + * @author noemi + */ +@WebServlet(name = "UbicacionServlet", urlPatterns = {"/UbicacionServlet"}) +public class UbicacionServlet extends HttpServlet { + + @EJB + private UbicacionBLLocal ubicacionBL; + private static final String TOKEN = "4j*Lz8&mQ1^sT2n@Ew7#Vb9X%Rp6Aa"; + Ubicacion u; + /** + * Processes requests for both HTTP GET and POST + * methods. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + protected void processRequest(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html;charset=UTF-8"); + try (PrintWriter out = response.getWriter()) { + + String token = request.getParameter("token"); + if (!"4jLz8mQ1sT2nEw7Vb9XRp6Aa".equals(token)) { + out.print("Acceso Denegado ⚠️"); + + return; + } + + String opcion = request.getParameter("Opc"); + + /* TODO output your page here. You may use following sample code. */ + switch(opcion){ + case "1": + try { + int id = Integer.parseInt(request.getParameter("id")); + Ubicacion u = ubicacionBL.buscarIdInt(id); + + if (u == null || u.getStatus() == 0) { + out.print("No existe la ubicación ⚠️"); + } else { + + out.print("

Ubicación 📍

"); + out.print("
Pasillo: " + u.getPasillo() + "
"); + out.print("
Anaquel: " + u.getAnaquel() + "
"); + out.print("
Nivel: " + u.getNivel() + "
"); + } + } catch (NumberFormatException e) { + out.print("ID inválido"); + } + + break; + case "2": + u = ubicacionBL.buscarIdInt(Integer.parseInt(request.getParameter("id"))); + if(u.getStatus() == 0){ + out.print("No existe el elemento ⚠"); + }else{ + Mensajes resultado = ubicacionBL.elimarId(u); + if (resultado == Mensajes.SIN_ERROR) { + out.print("Eliminado con éxito ✅"); + } else { + out.print("No se pudo eliminar la ubicación ⚠"); + } + } + break; + case "3": + Ubicacion agregar = new Ubicacion(); + agregar.setStatus((short) 1); + agregar.setPasillo(request.getParameter("pasillo")); + agregar.setAnaquel(request.getParameter("anaquel")); + agregar.setNivel(request.getParameter("nivel")); + + ubicacionBL.agregarUbic(agregar); + out.print("Agregado con éxito ✅"); + break; + case "4": + + try { + int id = Integer.parseInt(request.getParameter("id")); + Ubicacion ubicacionExiste = ubicacionBL.buscarIdInt(id); + + if (ubicacionExiste == null || ubicacionExiste.getStatus() == 0) { + out.print("No existe esa ubicacion"); + } else { + String nuevoPasillo = request.getParameter("nombre"); + + // Actualizar los campos necesarios + if (nuevoPasillo != null && !nuevoPasillo.isEmpty()) { + ubicacionExiste.setPasillo(nuevoPasillo); + } + + // Aquí puedes agregar más campos si es necesario + // marcaExistente.setOtroCampo(request.getParameter("otroCampo")); + + ubicacionBL.editar(ubicacionExiste); + out.print("Editado con éxito"); + } + } catch (NumberFormatException e) { + out.print("ID no válido"); + } catch (Exception e) { + out.print("Ocurrió un error al editar la ubicacion"); + } + break; + + + default: + out.print("

No existe esa opcion

"); + break; + + } + + } + } + + + // + /** + * Handles the HTTP GET method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + processRequest(request, response); + } + + /** + * Handles the HTTP POST method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + processRequest(request, response); + } + + /** + * Returns a short description of the servlet. + * + * @return a String containing servlet description + */ + @Override + public String getServletInfo() { + return "Short description"; + }// + +} diff --git a/InventarioJakartaJIN-war/src/java/mx/edu/tsj/chapala/sistemas/jin/vista/ubiBean.java b/InventarioJakartaJIN-war/src/java/mx/edu/tsj/chapala/sistemas/jin/vista/ubiBean.java index 7763793..1bcd961 100644 --- a/InventarioJakartaJIN-war/src/java/mx/edu/tsj/chapala/sistemas/jin/vista/ubiBean.java +++ b/InventarioJakartaJIN-war/src/java/mx/edu/tsj/chapala/sistemas/jin/vista/ubiBean.java @@ -14,7 +14,6 @@ import javax.faces.application.FacesMessage; import javax.faces.context.FacesContext; import mx.edu.tsj.chapala.sistemas.jin.bl.UbicacionBLLocal; import mx.edu.tsj.chapala.sistemas.jin.modelo.Ubicacion; -import mx.edu.tsj.chapala.sistemas.jin.msg.Mensajes; import org.primefaces.PrimeFaces; /** @@ -30,7 +29,7 @@ public class ubiBean implements Serializable { private Ubicacion ubicacion = new Ubicacion(); private String titulo; private boolean nuevo; - private List ubicacionesLista; + private List ubicaciones; /** @@ -39,32 +38,30 @@ public class ubiBean implements Serializable { public ubiBean() { } - public List getUbicaciones(){ - return ubicacionBL.getTodos(); + public List getUbicaciones() { + ubicaciones = ubicacionBL.getTodos(); + + return ubicaciones; } - - public void agregarU(){ - System.out.println("entraste al bean de agregar"); - - if(ubicacion.getIdUbicacion() != null){ - ubicacionBL.editar(ubicacion); - FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Ubicación editada con éxito ✅")); - - }else { - Mensajes resultado = ubicacionBL.agregarUbic(ubicacion); - if (resultado == Mensajes.ELEMENTO_DUPLICADO) { - FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, "Error", "La ubicación ya existe ✅")); - } else if (resultado == Mensajes.SIN_ERROR) { - FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Ubicación agregada con éxito ✅")); - } - - ubicacion = new Ubicacion(); - PrimeFaces.current().ajax().update("form:dt-ubi"); + public void agregarU() { + if (ubicacion.getIdUbicacion() != null) { - PrimeFaces.current().ajax().update("PF('manageProductDialog')"); - - } + ubicacionBL.editar(ubicacion); + FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Ubicación editada con éxito ✅")); + } else { + ubicacion.setStatus((short) 1); + ubicacionBL.agregarUbic(ubicacion); + FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Ubicación agregada con éxito ✅")); } + + ubicacion = new Ubicacion(); + + // Actualizar la tabla de datos + PrimeFaces.current().ajax().update(":form:dt-ubi"); + + // Actualizar el diálogo de gestión + PrimeFaces.current().ajax().update("manageProductDialog"); +} public Ubicacion getUbicacion(){ return ubicacion; } @@ -96,11 +93,8 @@ public class ubiBean implements Serializable { System.out.println("entraste al metodo eliminar bean"); ubicacionBL.elimarId(ubicacion); - - - FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Ubicacion eliminada ❌")); - - PrimeFaces.current().ajax().update("form:messages", "form:dt-ubi"); + + PrimeFaces.current().ajax().update("form:messages", "form:dt-ubi"); } diff --git a/InventarioJakartaJIN-war/web/productoTablaNueva.xhtml b/InventarioJakartaJIN-war/web/productoTablaNueva.xhtml deleted file mode 100644 index 59f5650..0000000 --- a/InventarioJakartaJIN-war/web/productoTablaNueva.xhtml +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - INVENTARIO - - - -
- - - - - - - - - - - - - - - -
- Ubicaciones - - - -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - - - - - - - - - - - - - - -
- -
-
-
- - -
- - -
-
-
-
-
- -
- - diff --git a/InventarioJakartaJIN-war/web/ubiTablaPrueba.xhtml b/InventarioJakartaJIN-war/web/ubiTablaPrueba.xhtml index 9593b53..bb02950 100644 --- a/InventarioJakartaJIN-war/web/ubiTablaPrueba.xhtml +++ b/InventarioJakartaJIN-war/web/ubiTablaPrueba.xhtml @@ -109,21 +109,21 @@ -
- - -
-
+ message="¿Deseas eliminar este elemento?" header="Eliminar" severity="warn"> +
+ + +
+ - + \ No newline at end of file