From cbde9352ad9373a65f3e8dbc5b828017337ef2c1 Mon Sep 17 00:00:00 2001 From: chore Date: Mon, 13 May 2024 23:10:07 -0500 Subject: [PATCH] proyecto inventario jakarta base de datos modificaciones v2 --- baseSC.mwb | Bin 21102 -> 20580 bytes baseSC.mwb.bak | Bin 15995 -> 21104 bytes baseSC.mwb.beforefix | Bin 0 -> 21104 bytes si-ejb/src/java/hola/BL/EstadoBL.java | 133 +++++++++++++++++ si-ejb/src/java/hola/BL/EstadoBLLocal.java | 28 ++++ si-ejb/src/java/hola/dao/EstadoDAO.java | 128 ++++++++++++++++ si-ejb/src/java/hola/modelo/Estado.java | 13 +- si-ejb/src/java/hola/modelo/Pais.java | 13 +- si-ejb/src/java/hola/modelo/Registro.java | 138 ++++++++++++++++++ si-ejb/src/java/hola/modelo/Rol.java | 13 +- .../src/java/hola/vista/DemoBeanEstado.java | 125 ++++++++++++++++ si-war/web/UsuarioCrear.xhtml | 11 ++ 12 files changed, 599 insertions(+), 3 deletions(-) create mode 100644 baseSC.mwb.beforefix create mode 100644 si-ejb/src/java/hola/BL/EstadoBL.java create mode 100644 si-ejb/src/java/hola/BL/EstadoBLLocal.java create mode 100644 si-ejb/src/java/hola/dao/EstadoDAO.java create mode 100644 si-ejb/src/java/hola/modelo/Registro.java create mode 100644 si-war/src/java/hola/vista/DemoBeanEstado.java diff --git a/baseSC.mwb b/baseSC.mwb index e82cbb83ce3d221551e3d70d56a4730b908177c0..0492cdc61fe4f655b43dd8fb6f5bee1f9db1fd6a 100644 GIT binary patch delta 15996 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 xn14R|@6{4qDFy&Ix>z`+T`UgOj2^M|frmbbg3 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 literal 15995 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 diff --git a/baseSC.mwb.beforefix b/baseSC.mwb.beforefix new file mode 100644 index 0000000000000000000000000000000000000000..37d6335340c9b2e1ae9c16d77dfa7b829db00bbc GIT binary patch literal 21104 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 literal 0 HcmV?d00001 diff --git a/si-ejb/src/java/hola/BL/EstadoBL.java b/si-ejb/src/java/hola/BL/EstadoBL.java new file mode 100644 index 0000000..dd522f8 --- /dev/null +++ b/si-ejb/src/java/hola/BL/EstadoBL.java @@ -0,0 +1,133 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/J2EE/EJB30/StatelessEjbClass.java to edit this template + */ +package hola.BL; + +import hola.dao.EstadoDAO; +import hola.modelo.Estado; +import hola.msg.Mensaje; +import java.util.List; +import java.util.Optional; +import javax.ejb.Stateless; +import javax.faces.application.FacesMessage; +import javax.faces.context.FacesContext; + +/** + * + * @author chore + */ +@Stateless +public class EstadoBL implements EstadoBLLocal { + + // Add business logic below. (Right-click in editor and choose + // "Insert Code > Add Business Method") + @Override + public Mensaje agregar(Estado estado) { + // Comentario de lógica: Método para agregar un proveedor +//, Registro registro// + System.out.println("Llegaste al metodo de agregar Usuario"); + EstadoDAO estadoDAO = new EstadoDAO(); + Mensaje m = null; + + // Validar que los campos requeridos no estén vacíos + if (estado.getNombre().isEmpty()) { + System.out.println(Mensaje.CAMPOS_INCOMPLETOS); + // Enviar mensaje de error si algún campo está incompleto + return Mensaje.CAMPOS_INCOMPLETOS; + } + + // Buscar si el proveedor ya existe en la base de datos + Optional usuarioEncontradoOptional = estadoDAO.buscarEstado(estado); + + if (usuarioEncontradoOptional.isPresent()) { + // Manejar el caso en el que se encontró al menos un proveedor duplicado + usuarioEncontradoOptional.get(); + addMessage(FacesMessage.SEVERITY_ERROR, "Error", "Elemento duplicado"); + m = Mensaje.ELEMENTO_DUPLICADO; + } else { + // Agregar el proveedor a la base de datos si no está duplicado + estadoDAO.agregar(estado); + //registroDAO.agregar(registro); + m = Mensaje.SIN_ERROR; + } + + return m; + } + + @Override + public Estado buscarId(Estado estado) { + // Comentario de lógica: Método para buscar un proveedor por ID + EstadoDAO edao = new EstadoDAO(); + return edao.buscarPorId(estado); + } + + @Override + public void eliminarId(Estado estado) { + // Comentario de lógica: Método para eliminar un proveedor por ID + EstadoDAO edao = new EstadoDAO(); + if (edao.eliminar(estado)) { + System.out.println(Mensaje.SIN_ERROR); + } else { + System.out.println(Mensaje.NO_EXISTE); + } + } + + @Override + public Mensaje editar(Estado estado) { + // Comentario de lógica: Método para editar un proveedor + Mensaje m; + EstadoDAO estadoDAO = new EstadoDAO(); + + // Validar que los campos requeridos no estén vacíos + if (estado.getNombre().isEmpty() + || estado.getStatus() == null) { + + // Enviar mensaje de error si algún campo está incompleto + m = Mensaje.CAMPOS_INCOMPLETOS; + System.out.println(Mensaje.CAMPOS_INCOMPLETOS); + return m; + } + + try { + // Editar el proveedor solo si todas las validaciones son exitosas + Optional user = estadoDAO.buscarEstado(estado); + if (user.isPresent()) { + + addMessage(FacesMessage.SEVERITY_ERROR, "Error", "Elemento duplicado"); + m = Mensaje.ELEMENTO_DUPLICADO; + } else { + + if (estadoDAO.editar(estado) == true) { + m = Mensaje.SIN_ERROR; + System.out.println(Mensaje.SIN_ERROR); + return m; + } else { + m = Mensaje.N0_EXISTE; + System.out.println(Mensaje.NO_EXISTE); + return m; + } + } + } catch (Exception e) { + // Capturar cualquier excepción que ocurra durante la edición del proveedor + m = Mensaje.DATOS_INCORRECTOS; + System.out.println(Mensaje.DATOS_INCORRECTOS); + e.printStackTrace(); + } + return m; + + } + + @Override + public List buscarValidos(boolean estado) { + EstadoDAO estadoDAO = new EstadoDAO(); + List l = estadoDAO.buscarValidos(estado); + // Llama al método buscarValidos de ProductoDAO y devuelve la lista resultante + System.out.println(l); + return l; + } + + public void addMessage(FacesMessage.Severity severity, String summary, String detail) { + FacesContext.getCurrentInstance().addMessage("MensajeUsuario", new FacesMessage(severity, summary, detail)); + } +} diff --git a/si-ejb/src/java/hola/BL/EstadoBLLocal.java b/si-ejb/src/java/hola/BL/EstadoBLLocal.java new file mode 100644 index 0000000..369251b --- /dev/null +++ b/si-ejb/src/java/hola/BL/EstadoBLLocal.java @@ -0,0 +1,28 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/J2EE/EJB30/SessionLocal.java to edit this template + */ +package hola.BL; + +import hola.modelo.Estado; +import hola.msg.Mensaje; +import java.util.List; +import javax.ejb.Local; + +/** + * + * @author chore + */ +@Local +public interface EstadoBLLocal { + + public Mensaje agregar(Estado estado); + + public Estado buscarId(Estado estado); + + public void eliminarId(Estado estado); + + public Mensaje editar(Estado estado); + + public List buscarValidos(boolean estado); +} diff --git a/si-ejb/src/java/hola/dao/EstadoDAO.java b/si-ejb/src/java/hola/dao/EstadoDAO.java new file mode 100644 index 0000000..834e2ed --- /dev/null +++ b/si-ejb/src/java/hola/dao/EstadoDAO.java @@ -0,0 +1,128 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package hola.dao; + +import hola.modelo.Estado; +import java.util.List; +import java.util.Optional; +import javax.persistence.EntityManager; +import javax.persistence.EntityManagerFactory; +import javax.persistence.Persistence; +import javax.persistence.Query; + +/** + * + * @author chore + */ +public class EstadoDAO { + + private EntityManager em; + public EstadoDAO() { + EntityManagerFactory emf = Persistence.createEntityManagerFactory("si-ejbPU"); + em = emf.createEntityManager(); + + } + public void agregar(Estado estado) { + em.getTransaction().begin(); + estado.setStatus(1); + em.persist(estado);//Almacenar en DB + em.getTransaction().commit(); + + } + + public boolean editar(Estado estado) { + if (buscarPorId(estado) == null) { + return false; + } else { + em.getTransaction().begin(); + em.merge(estado);//edita en la base de datos + em.getTransaction().commit(); + return true; + } + + } + + public boolean eliminar(Estado estado) { + if (buscarPorId(estado) == null) { + return false; + } else { + + // Iniciar transacción + em.getTransaction().begin(); + + // Obtener proveedor actualizado desde la base de datos + Estado u = em.find(Estado.class, estado.getId()); + + // Conservar datos existentes + estado.setNombre(u.getNombre()); + + + + // Modificar solo el estado + estado.setStatus(0); + em.merge(estado); + em.getTransaction().commit(); + return true; + } + + } + + public Estado buscarPorId(Estado estado) { + Query q = em.createNamedQuery("Estado.findById"); + q.setParameter("id", estado.getId()); + if (q.getResultList().isEmpty()) { + return null; + } else { + return (Estado) q.getResultList().get(0); + } + + } + + public List buscarValidos(boolean status) { + Query q = em.createNamedQuery("Estado.findByStatus"); + int s = status ? 1 : 0; + q.setParameter("status", s); + if (s == 1) { + System.out.println("Activos"); + } else { + System.out.println("Inactivos"); + } + return q.getResultList(); + } + + public Estado buscarPorNombre(Estado estado) { + Query q = em.createNamedQuery("Estado.findByNombre"); + q.setParameter("nombre", estado.getNombre()); + if (q.getResultList().isEmpty()) { + return null; + } else { + return (Estado) q.getResultList().get(0); + } + } + + public Optional buscarEstado(Estado estado) { + + Query q1 = em.createNamedQuery("Estado.findByNombre"); + q1.setParameter("nombre", estado.getNombre()); + + + + List resultadoNombre = q1.getResultList(); + + + // Verifica si hay resultados para todos los campos + if (!resultadoNombre.isEmpty()) { + // Compara si la misma editorial está en los tres resultados + Estado usuarioEncontrado = resultadoNombre.stream() + .findFirst() + .orElse(null); + + return Optional.ofNullable(usuarioEncontrado); + } else { + // Devuelve Optional vacío para indicar ausencia de resultados + return Optional.empty(); + } + } +} diff --git a/si-ejb/src/java/hola/modelo/Estado.java b/si-ejb/src/java/hola/modelo/Estado.java index 25365a6..f634fa1 100644 --- a/si-ejb/src/java/hola/modelo/Estado.java +++ b/si-ejb/src/java/hola/modelo/Estado.java @@ -33,7 +33,8 @@ import javax.xml.bind.annotation.XmlTransient; @NamedQueries({ @NamedQuery(name = "Estado.findAll", query = "SELECT e FROM Estado e"), @NamedQuery(name = "Estado.findById", query = "SELECT e FROM Estado e WHERE e.id = :id"), - @NamedQuery(name = "Estado.findByNombre", query = "SELECT e FROM Estado e WHERE e.nombre = :nombre")}) + @NamedQuery(name = "Estado.findByNombre", query = "SELECT e FROM Estado e WHERE e.nombre = :nombre"), + @NamedQuery(name = "Estado.findByStatus", query = "SELECT e FROM Estado e WHERE e.status = :status")}) public class Estado implements Serializable { private static final long serialVersionUID = 1L; @@ -45,6 +46,8 @@ public class Estado implements Serializable { @Size(max = 45) @Column(name = "nombre") private String nombre; + @Column(name = "status") + private Integer status; @JoinColumn(name = "pais_idpais", referencedColumnName = "id") @ManyToOne(optional = false) private Pais paisIdpais; @@ -76,6 +79,14 @@ public class Estado implements Serializable { this.nombre = nombre; } + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + public Pais getPaisIdpais() { return paisIdpais; } diff --git a/si-ejb/src/java/hola/modelo/Pais.java b/si-ejb/src/java/hola/modelo/Pais.java index 0718fdb..3a1b865 100644 --- a/si-ejb/src/java/hola/modelo/Pais.java +++ b/si-ejb/src/java/hola/modelo/Pais.java @@ -30,7 +30,8 @@ import javax.xml.bind.annotation.XmlTransient; @NamedQueries({ @NamedQuery(name = "Pais.findAll", query = "SELECT p FROM Pais p"), @NamedQuery(name = "Pais.findById", query = "SELECT p FROM Pais p WHERE p.id = :id"), - @NamedQuery(name = "Pais.findByNombre", query = "SELECT p FROM Pais p WHERE p.nombre = :nombre")}) + @NamedQuery(name = "Pais.findByNombre", query = "SELECT p FROM Pais p WHERE p.nombre = :nombre"), + @NamedQuery(name = "Pais.findByStatus", query = "SELECT p FROM Pais p WHERE p.status = :status")}) public class Pais implements Serializable { private static final long serialVersionUID = 1L; @@ -42,6 +43,8 @@ public class Pais implements Serializable { @Size(max = 45) @Column(name = "nombre") private String nombre; + @Column(name = "status") + private Integer status; @OneToMany(cascade = CascadeType.ALL, mappedBy = "paisIdpais") private List estadoList; @@ -68,6 +71,14 @@ public class Pais implements Serializable { this.nombre = nombre; } + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + @XmlTransient public List getEstadoList() { return estadoList; diff --git a/si-ejb/src/java/hola/modelo/Registro.java b/si-ejb/src/java/hola/modelo/Registro.java new file mode 100644 index 0000000..72a9b65 --- /dev/null +++ b/si-ejb/src/java/hola/modelo/Registro.java @@ -0,0 +1,138 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package hola.modelo; + +import java.io.Serializable; +import javax.persistence.Basic; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.Table; +import javax.validation.constraints.Size; +import javax.xml.bind.annotation.XmlRootElement; + +/** + * + * @author chore + */ +@Entity +@Table(name = "registro", catalog = "sistemadeinventario", schema = "") +@XmlRootElement +@NamedQueries({ + @NamedQuery(name = "Registro.findAll", query = "SELECT r FROM Registro r"), + @NamedQuery(name = "Registro.findById", query = "SELECT r FROM Registro r WHERE r.id = :id"), + @NamedQuery(name = "Registro.findByEntrada", query = "SELECT r FROM Registro r WHERE r.entrada = :entrada"), + @NamedQuery(name = "Registro.findBySalida", query = "SELECT r FROM Registro r WHERE r.salida = :salida"), + @NamedQuery(name = "Registro.findByAlta", query = "SELECT r FROM Registro r WHERE r.alta = :alta"), + @NamedQuery(name = "Registro.findByBaja", query = "SELECT r FROM Registro r WHERE r.baja = :baja"), + @NamedQuery(name = "Registro.findByStatus", query = "SELECT r FROM Registro r WHERE r.status = :status")}) +public class Registro implements Serializable { + + private static final long serialVersionUID = 1L; + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Basic(optional = false) + @Column(name = "id") + private Integer id; + @Size(max = 10) + @Column(name = "Entrada") + private String entrada; + @Size(max = 10) + @Column(name = "salida") + private String salida; + @Size(max = 45) + @Column(name = "Alta") + private String alta; + @Size(max = 45) + @Column(name = "baja") + private String baja; + @Column(name = "status") + private Integer status; + + public Registro() { + } + + public Registro(Integer id) { + this.id = id; + } + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getEntrada() { + return entrada; + } + + public void setEntrada(String entrada) { + this.entrada = entrada; + } + + public String getSalida() { + return salida; + } + + public void setSalida(String salida) { + this.salida = salida; + } + + public String getAlta() { + return alta; + } + + public void setAlta(String alta) { + this.alta = alta; + } + + public String getBaja() { + return baja; + } + + public void setBaja(String baja) { + this.baja = baja; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + + @Override + public int hashCode() { + int hash = 0; + hash += (id != null ? id.hashCode() : 0); + return hash; + } + + @Override + public boolean equals(Object object) { + // TODO: Warning - this method won't work in the case the id fields are not set + if (!(object instanceof Registro)) { + return false; + } + Registro other = (Registro) object; + if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) { + return false; + } + return true; + } + + @Override + public String toString() { + return "hola.modelo.Registro[ id=" + id + " ]"; + } + +} diff --git a/si-ejb/src/java/hola/modelo/Rol.java b/si-ejb/src/java/hola/modelo/Rol.java index 4760f17..228af48 100644 --- a/si-ejb/src/java/hola/modelo/Rol.java +++ b/si-ejb/src/java/hola/modelo/Rol.java @@ -31,7 +31,8 @@ import javax.xml.bind.annotation.XmlTransient; @NamedQueries({ @NamedQuery(name = "Rol.findAll", query = "SELECT r FROM Rol r"), @NamedQuery(name = "Rol.findById", query = "SELECT r FROM Rol r WHERE r.id = :id"), - @NamedQuery(name = "Rol.findByNombre", query = "SELECT r FROM Rol r WHERE r.nombre = :nombre")}) + @NamedQuery(name = "Rol.findByNombre", query = "SELECT r FROM Rol r WHERE r.nombre = :nombre"), + @NamedQuery(name = "Rol.findByStatus", query = "SELECT r FROM Rol r WHERE r.status = :status")}) public class Rol implements Serializable { private static final long serialVersionUID = 1L; @@ -43,6 +44,8 @@ public class Rol implements Serializable { @Size(max = 20) @Column(name = "nombre") private String nombre; + @Column(name = "status") + private Integer status; @OneToMany(cascade = CascadeType.ALL, mappedBy = "rolIdrol") private List usuarioList; @@ -69,6 +72,14 @@ public class Rol implements Serializable { this.nombre = nombre; } + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + @XmlTransient public List getUsuarioList() { return usuarioList; diff --git a/si-war/src/java/hola/vista/DemoBeanEstado.java b/si-war/src/java/hola/vista/DemoBeanEstado.java new file mode 100644 index 0000000..2b063cf --- /dev/null +++ b/si-war/src/java/hola/vista/DemoBeanEstado.java @@ -0,0 +1,125 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/JSF/JSFManagedBean.java to edit this template + */ +package hola.vista; + +import hola.BL.EstadoBLLocal; +import hola.modelo.Estado; +import hola.msg.Mensaje; +import javax.inject.Named; +import javax.enterprise.context.SessionScoped; +import java.io.Serializable; +import java.util.List; +import java.util.Locale; +import javax.ejb.EJB; +import org.primefaces.util.LangUtils; + +/** + * + * @author chore + */ +@Named(value = "demoBeanEstado") +@SessionScoped +public class DemoBeanEstado implements Serializable { + + @EJB + private EstadoBLLocal estadodBL; + /** + * Creates a new instance of DemoBeanEstado + */ + public DemoBeanEstado() { + } + private Estado estado = new Estado(); + private String titulo; + private boolean nuevo; + + private List filteredCustomers3; + + public List getFilteredCustomers3() { + return filteredCustomers3; + } + + public void setFilteredCustomers3(List filteredCustomers3) { + this.filteredCustomers3 = filteredCustomers3; + } + + public boolean globalFilterFunction(Object value, Object filter, Locale locale) { + String filterText = (filter == null) ? null : filter.toString().trim().toLowerCase(); + if (LangUtils.isBlank(filterText)) { + return true; + } +//BUSCADOR DE CADA CAMPO + Estado customer = (Estado) value; + return customer.getNombre().toLowerCase().contains(filterText); + } + + public String agregarUsuario() { + + estado.setStatus(1); + // limpiarFormulario(); + Mensaje mensaje = estadodBL.agregar(estado); + + switch (mensaje) { + case SIN_ERROR: + estado = new Estado(); + return "Estado.xhtml";//"productoLista?faces-redirect=true"; // Redirecciona a la lista de productos + case ELEMENTO_DUPLICADO: + return null; + case CAMPOS_INCOMPLETOS: + return null; + case DATOS_INCORRECTOS: + return null; + default: + return null; + } + + } + + public List getEstados() { + return estadodBL.buscarValidos(true); + } + + public Estado getTEstado() { + return estado; + } + + public void setEstado(Estado estado) { + this.estado = estado; + } + + public void prepararEditar(Estado estado) { + nuevo = false; + titulo = "Editar usuario"; + this.estado = estado; + + } + + public String getTitulo() { + return titulo; + } + + public boolean isNuevo() { + return nuevo; + } + + public void preparar() { + nuevo = true; + titulo = "Agregar Estado"; + estado = new Estado(); + } + + public void editarEstado() { + + estadodBL.editar(estado); + + } + + public void prepararEliminar(Estado estado) { + this.estado = estado; + } + + public void eliminaEstado() { + estadodBL.eliminarId(estado); + } +} diff --git a/si-war/web/UsuarioCrear.xhtml b/si-war/web/UsuarioCrear.xhtml index 155bd0b..7354c58 100644 --- a/si-war/web/UsuarioCrear.xhtml +++ b/si-war/web/UsuarioCrear.xhtml @@ -87,6 +87,17 @@ + + + + + + +