From 845a7a0cda1e562884ca1ca73b9918ba0403d25f Mon Sep 17 00:00:00 2001 From: nickdalyrendon Date: Tue, 28 May 2024 11:07:54 -0600 Subject: [PATCH] token de proveedor --- .../tjs/chapala/sistemas/bl/ProveedorBL.java | 22 +++ .../chapala/sistemas/bl/ProveedorBLLocal.java | 4 + .../chapala/sistemas/dao/ProveedorDAO.java | 15 ++ .../sistemas/servicios/ProveedorEndpoint.java | 88 ++++++++++ .../edu/tjs/servicios/ProveedorEndpointt.java | 158 ++++++++++++++++++ Inventario-war/web/proveedorLista.xhtml | 2 + 6 files changed, 289 insertions(+) create mode 100644 Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/servicios/ProveedorEndpoint.java create mode 100644 Inventario-war/src/java/mx/edu/tjs/servicios/ProveedorEndpointt.java diff --git a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/ProveedorBL.java b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/ProveedorBL.java index efced19..3175542 100644 --- a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/ProveedorBL.java +++ b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/ProveedorBL.java @@ -150,5 +150,27 @@ public class ProveedorBL implements ProveedorBLLocal { ProveedorDAO p = new ProveedorDAO(); return p.buscarStatus(true); } + + public void agregarP (Proveedor proveedor){ + ProveedorDAO proveedorDAO = new ProveedorDAO(); + proveedorDAO.agregar(proveedor); + + } + + public void eliminarP (Proveedor proveedor){ + ProveedorDAO a = new ProveedorDAO(); + a.eliminar(proveedor); + } + + public Proveedor buscarIdInt(int id) { + ProveedorDAO proveedorDAO = new ProveedorDAO(); + if(proveedorDAO==null){ + return null; + }else{ + return proveedorDAO.buscarIdInt(id); + } + } + + } diff --git a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/ProveedorBLLocal.java b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/ProveedorBLLocal.java index d3ac771..21bf10b 100644 --- a/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/ProveedorBLLocal.java +++ b/Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/ProveedorBLLocal.java @@ -29,4 +29,8 @@ public interface ProveedorBLLocal { Mensaje editar(Proveedor p); + + public Proveedor buscarIdInt (int id) ; + public void agregarP(Proveedor proveedor ); + public void eliminarP(Proveedor proveedor); } 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 4766c49..3c9fb75 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 @@ -168,5 +168,20 @@ public class ProveedorDAO { } + + public Proveedor buscarIdInt(int id){ + if (id == 0 ) { + return null; + } + Query q = em.createNamedQuery("Proveedor.findById"); + q.setParameter("id", id); + if(q.getResultList().isEmpty()){ + return null; + } else { + return (Proveedor) q.getResultList().get(0); + } + + } + } diff --git a/Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/servicios/ProveedorEndpoint.java b/Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/servicios/ProveedorEndpoint.java new file mode 100644 index 0000000..b23e93f --- /dev/null +++ b/Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/servicios/ProveedorEndpoint.java @@ -0,0 +1,88 @@ +/* + * 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.tjs.chapala.sistemas.servicios; + +import java.io.IOException; +import java.io.PrintWriter; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * + * @author nickdalyrendon + */ +@WebServlet(name = "ProveedorEndpoint", urlPatterns = {"/ProveedorEndpoint"}) +public class ProveedorEndpoint extends HttpServlet { + + /** + * 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()) { + /* TODO output your page here. You may use following sample code. */ + out.println(""); + out.println(""); + out.println(""); + out.println("Servlet ProveedorEndpoint"); + out.println(""); + out.println(""); + out.println("Parametro"+request.getParameter("test")); + out.println("

Servlet ProveedorEndpoint at " + request.getContextPath() + "

"); + out.println(""); + out.println(""); + } + } + + // + /** + * 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/Inventario-war/src/java/mx/edu/tjs/servicios/ProveedorEndpointt.java b/Inventario-war/src/java/mx/edu/tjs/servicios/ProveedorEndpointt.java new file mode 100644 index 0000000..af55fe6 --- /dev/null +++ b/Inventario-war/src/java/mx/edu/tjs/servicios/ProveedorEndpointt.java @@ -0,0 +1,158 @@ +/* + * 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.tjs.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.tjs.chapala.sistemas.bl.ProveedorBLLocal; +import mx.edu.tjs.chapala.sistemas.modelo.Proveedor; + +/** + * + * @author nickdalyrendon + */ +@WebServlet(name = "ProveedorEndpointt", urlPatterns = {"/ProveedorEndpointt"}) +public class ProveedorEndpointt extends HttpServlet { + + @EJB + private ProveedorBLLocal proveedorBL; + Proveedor m; + + /** + * 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 opcion = request.getParameter("opcion"); + // Verificar el token + String token = request.getParameter("t"); + if (!"tokenNickdaly160601".equals(token)) { + out.print("Acceso Denegado"); + + return; + } + + switch (opcion) { + case "1": + m = proveedorBL.buscarIdInt(Integer.parseInt(request.getParameter("id"))); + if (m.getStatus() == 0) { + out.print("No existe el proveedor"); + } else { + out.print("
"); + out.print("

Proveedor encontrado

"); + out.print("

Nombre: " + m.getNombre() + "

"); + out.print("
"); + } + + break; + + case "2": + m = proveedorBL.buscarIdInt(Integer.parseInt(request.getParameter("id"))); + if (m.getStatus() == 0) { + out.print("No existe ese elemento"); + } else { + proveedorBL.eliminarP(m); + out.print("Se elimino el proveedor"); + } + break; + + case "3": + Proveedor nuevo = new Proveedor(); + nuevo.setStatus((short) 1); + nuevo.setNombre(request.getParameter("nombre")); + proveedorBL.agregarP(nuevo); + out.print("Se agrego el proveedor"); + break; + + + case "4": + + try { + int id = Integer.parseInt(request.getParameter("id")); + Proveedor proveedorExistente = proveedorBL.buscarIdInt(id); + + if (proveedorExistente == null || proveedorExistente.getStatus() == 0) { + out.print("No existe el proveedor"); + } else { + String nuevoNombre = request.getParameter("nombre"); + + // Actualizar los campos necesarios + if (nuevoNombre != null && !nuevoNombre.isEmpty()) { + proveedorExistente.setNombre(nuevoNombre); + } + + proveedorBL.editar(proveedorExistente); + out.print("Editado con éxito"); + } + } catch (NumberFormatException e) { + out.print("ID de proveedor no válido"); + } catch (Exception e) { + out.print("Ocurrió un error al editar el proveedor"); + } + 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/Inventario-war/web/proveedorLista.xhtml b/Inventario-war/web/proveedorLista.xhtml index e125ba1..f9791a2 100644 --- a/Inventario-war/web/proveedorLista.xhtml +++ b/Inventario-war/web/proveedorLista.xhtml @@ -281,6 +281,8 @@ + +