Browse Source

login terminado

master
Ely 4 months ago
parent
commit
b51fda2eec
  1. 130
      Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/RolBL.java
  2. 30
      Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/RolBLLocal.java
  3. 45
      Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/UsuariosBL.java
  4. 4
      Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/UsuariosBLLocal.java
  5. 128
      Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/RolDAO.java
  6. 85
      Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/UsuariosDAO.java
  7. 204
      Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/modelo/Domicilio.java
  8. 242
      Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/modelo/Rol.java
  9. 612
      Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/modelo/Usuarios.java
  10. 33
      Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/seguridad/Login.java
  11. 49
      Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/vista/DemoBeanUsuarios.java
  12. 41
      Inventario-war/web/index.xhtml
  13. 2
      Inventario-war/web/resources/css/cssLayout.css
  14. BIN
      Inventario-war/web/resources/imagen/usuario.png
  15. 149
      Inventario-war/web/rolLista.xhtml
  16. 331
      Inventario-war/web/usuariosLista.xhtml

130
Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/RolBL.java

@ -0,0 +1,130 @@
/*
* 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 mx.edu.tjs.chapala.sistemas.bl;
import java.util.List;
import java.util.Optional;
import javax.ejb.Stateless;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import mx.edu.tjs.chapala.sistemas.dao.RolDAO;
import mx.edu.tjs.chapala.sistemas.modelo.Rol;
import mx.edu.tjs.chapala.sistemas.msg.Mensaje;
/**
*
* @author Ely
*/
@Stateless
public class RolBL implements RolBLLocal {
// 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));
}
@Override
public Mensaje agregar(Rol rol) {
System.out.println("Llegaste al metodo de agregar rol");
RolDAO rolDAO = new RolDAO();
Mensaje m = null;
//Toda la logica
Optional<Rol> rolEncontradoOptional =rolDAO.buscarRol(rol);
if (rolEncontradoOptional.isPresent()) {
rolEncontradoOptional.get();
m = Mensaje.ELEMENTO_DUPLICADO;
System.out.println("NO SE PUEDE AGREGAR, EL ROL YA EXISTE");
addMessage(FacesMessage.SEVERITY_ERROR, "", "¡Error! El elemento ya existe");
} else {
rolDAO.agregar(rol);
m = Mensaje.SIN_ERROR;
System.out.println("AGREGADO CON EXITO");
addMessage(FacesMessage.SEVERITY_INFO, "", "¡Elemento agregado con éxito!");
}
return m;
}
@Override
public Rol buscarId(Rol rol) {
System.out.println("Llegaste al metodo de buscar por id");
RolDAO r = new RolDAO();
Mensaje m = null;
Rol rolEncontrado = r.buscarPorId(rol);
if (rolEncontrado == null) {
m = Mensaje.ELEMENTO_NO_ENCONTRADO;
System.out.println("NO EXISTE EL rol");
return rolEncontrado;
} else {
m = Mensaje.SIN_ERROR;
System.out.println("ROL ENCONTRADO CON EXITO: " + rolEncontrado.getId());
return rolEncontrado;
}
}
@Override
public Rol buscarNombre(Rol rol) {
System.out.println("Llegaste al metodo de buscar por nombre");
RolDAO r = new RolDAO();
Mensaje m = null;
Rol rolEncontrado = r.buscarPorRol(rol);
if (rolEncontrado == null) {
m = Mensaje.ELEMENTO_NO_ENCONTRADO;
System.out.println("NO EXISTE EL Usuarios");
return rolEncontrado;
} else {
m = Mensaje.SIN_ERROR;
System.out.println("Usuarios ENCONTRADO CON EXITO: " + rolEncontrado.getRol());
return rolEncontrado;
}
}
@Override
public List<Rol> buscarStatus(boolean b) {
RolDAO r = new RolDAO();
List l = r.buscarStatus(b);
System.out.println(l);
return l;
}
@Override
public void eliminarId(Rol r) {
RolDAO rl = new RolDAO();
Mensaje m = null;
if (rl.eliminar(r)) {
m = Mensaje.SIN_ERROR;
System.out.println("ELIMINADO CON EXITO");
addMessage(FacesMessage.SEVERITY_INFO, "", "¡rol eliminado correctamente!");
} else {
m = Mensaje.ELEMENTO_NO_ENCONTRADO;
System.out.println("NO SE PUDO ELIMINAR");
addMessage(FacesMessage.SEVERITY_WARN, "", "¡Error! No se pudo eliminar el rol");
}
}
@Override
public void editar(Rol rol) {
RolDAO r = new RolDAO();
Mensaje m = null;
r.editar(rol);
}
}

30
Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/RolBLLocal.java

@ -0,0 +1,30 @@
/*
* 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 mx.edu.tjs.chapala.sistemas.bl;
import java.util.List;
import javax.ejb.Local;
import mx.edu.tjs.chapala.sistemas.modelo.Rol;
import mx.edu.tjs.chapala.sistemas.msg.Mensaje;
/**
*
* @author Ely
*/
@Local
public interface RolBLLocal {
public void editar(Rol rol);
public void eliminarId(Rol r);
public List<Rol> buscarStatus(boolean b);
public Rol buscarNombre(Rol rol);
public Rol buscarId(Rol rol);
public Mensaje agregar(Rol rol);
}

45
Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/UsuariosBL.java

@ -124,10 +124,49 @@ public class UsuariosBL implements UsuariosBLLocal {
@Override @Override
public void editar(Usuarios usuarios) { public Mensaje editar(Usuarios usuarios) {
UsuariosDAO u = new UsuariosDAO(); UsuariosDAO usuariosDAO = new UsuariosDAO();
Mensaje m = null; Mensaje m = null;
u.editar(usuarios);
//Toda la logica
Optional<Usuarios> usuariosEncontradoOptional = usuariosDAO.buscarUsuarios(usuarios);
if (usuariosEncontradoOptional.isPresent()) {
usuariosEncontradoOptional.get();
m = Mensaje.ELEMENTO_DUPLICADO;
System.out.println("NO SE PUEDE AGREGAR, EL usuario YA EXISTE");
addMessage(FacesMessage.SEVERITY_ERROR, "", "¡Error! El elemento ya existe");
} else {
usuariosDAO.agregar(usuarios);
m = Mensaje.SIN_ERROR;
System.out.println("AGREGADO CON EXITO");
addMessage(FacesMessage.SEVERITY_INFO, "", "¡Elemento agregado con éxito!");
}
return m;
}
@Override
public Mensaje loginValidar(Usuarios usuarios) {
UsuariosDAO usuariosDAO=new UsuariosDAO();
Mensaje m = null;
//Toda la logica
Optional<Usuarios> EncontradoOptional = usuariosDAO.validar(usuarios);
if (EncontradoOptional.isPresent()) {
EncontradoOptional.get();
usuariosDAO.validar(usuarios);
m = Mensaje.SIN_ERROR;
System.out.println("No Se Inisio Sesion");
addMessage(FacesMessage.SEVERITY_ERROR, "", "¡Error! algun campo incorecto");
} else {
usuariosDAO.validar(usuarios);
m = Mensaje.ELEMENTO_DUPLICADO;System.out.println("Inisio Sesion");
addMessage(FacesMessage.SEVERITY_INFO, "", "¡entrado!");
}
return m;
} }

4
Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/bl/UsuariosBLLocal.java

@ -16,7 +16,7 @@ import mx.edu.tjs.chapala.sistemas.msg.Mensaje;
@Local @Local
public interface UsuariosBLLocal { public interface UsuariosBLLocal {
public void editar(Usuarios usuarios); public Mensaje editar(Usuarios usuarios);
public void eliminarId(Usuarios usuarios); public void eliminarId(Usuarios usuarios);
@ -28,4 +28,6 @@ public interface UsuariosBLLocal {
public Mensaje agregar(Usuarios usuarios); public Mensaje agregar(Usuarios usuarios);
public Mensaje loginValidar(Usuarios usuarios);
} }

128
Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/RolDAO.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 mx.edu.tjs.chapala.sistemas.dao;
import java.util.List;
import java.util.Optional;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
import mx.edu.tjs.chapala.sistemas.modelo.Rol;
/**
*
* @author Ely
*/
public class RolDAO {
private EntityManager em; //Manejador de entidades (entidad=bean del modelo)
public RolDAO() {
//conexion
EntityManagerFactory emf = Persistence.createEntityManagerFactory("Inventario-ejbPU");
em = emf.createEntityManager();
}
public void agregar(Rol r) {
em.getTransaction().begin();
r.setStatus(1);
em.persist(r); //Almacenar en la BD
em.getTransaction().commit();
}
public void editar(Rol r) {
buscarPorId(r);
em.getTransaction().begin();
em.merge(r); //Editar en la BD
em.getTransaction().commit();
}
public boolean eliminar(Rol r) {
if (buscarPorId(r) == null) {
return false;
} else {
em.getTransaction().begin();
// Obtener usuarios actualizado desde la base de datos
Rol ro = em.find(Rol.class, r.getId());
r.setRol(ro.getRol());
// Modificar solo el estado
r.setStatus(0);
em.merge(r);
em.getTransaction().commit();
return true;
}
}
public Optional<Rol> buscarRol(Rol r) {
Query q1 = em.createNamedQuery("Rol.findByRol");
q1.setParameter("rol",r.getRol());
List<Rol> resultadoRol = q1.getResultList();
// Verifica si hay resultados para todos los campos
if (!resultadoRol.isEmpty()) {
// Compara si el mismo autor está en los tres resultados
Rol rolEncontrado = resultadoRol.stream()
.findFirst()
.orElse(null);
return Optional.ofNullable(rolEncontrado);
} else {
// Devuelve Optional vacío para indicar ausencia de resultados
return Optional.empty();
}
}
public Rol buscarPorId(Rol r) {
Query q = em.createNamedQuery("Rol.findById");
q.setParameter("id", r.getId());
if (q.getResultList().isEmpty()) {
return null;
} else {
return (Rol) q.getResultList().get(0);
}
}
public Rol buscarPorRol(Rol r) {
Query q = em.createNamedQuery("Rol.findByRol");
q.setParameter("rol", r.getRol());
if (q.getResultList().isEmpty()) {
return null;
} else {
return (Rol) q.getResultList().get(0);
}
}
public List<Rol> buscarStatus(boolean status) {
Query q = em.createNamedQuery("Rol.findByStatus");
int s = status ? 1 : 0;
if(s==1){
System.out.println("Rol activos");
} else {
System.out.println("Rol inactivos");
}
q.setParameter("status", s);
return q.getResultList();
}
}

85
Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/dao/UsuariosDAO.java

@ -32,6 +32,32 @@ public class UsuariosDAO {
em.persist(u); //Almacenar en la BD em.persist(u); //Almacenar en la BD
em.getTransaction().commit(); em.getTransaction().commit();
} }
public Optional<Usuarios> validar(Usuarios u) {
Query q = em.createNamedQuery("Usuarios.findByUsuario");
q.setParameter("usuario", u.getUsuario());
Query q1 = em.createNamedQuery("Usuarios.findByContrasenia");
q1.setParameter("contrasenia", u.getContrasenia());
List<Usuarios> uresultado = q.getResultList();
List<Usuarios> cresultado = q1.getResultList();
if (!uresultado.isEmpty() && !cresultado.isEmpty()) {
Usuarios Encontrado = uresultado.stream()
.filter(uresultado::contains)
.filter(cresultado::contains)
.findFirst()
.orElse(null);
return Optional.ofNullable(Encontrado);
} else {
// Devuelve Optional vacío para indicar ausencia de resultados
return Optional.empty();
}
}
public void editar(Usuarios u) { public void editar(Usuarios u) {
buscarPorId(u); buscarPorId(u);
@ -65,18 +91,65 @@ public class UsuariosDAO {
} }
public Optional<Usuarios> buscarUsuarios(Usuarios u) { public Optional<Usuarios> buscarUsuarios(Usuarios u) {
Query q1 = em.createNamedQuery("Usuarios.findByUsuario"); Query q = em.createNamedQuery("Usuarios.findByNombre");
q1.setParameter("usuario", u.getUsuario()); q.setParameter("nombre", u.getNombre());
Query q1 = em.createNamedQuery("Usuarios.findByApellidop");
q1.setParameter("apellidop", u.getApellidop());
Query q2 = em.createNamedQuery("Usuarios.findByApellidom");
q2.setParameter("apellidom", u.getApellidom());
Query q3 = em.createNamedQuery("Usuarios.findByUsuario");
q3.setParameter("usuario", u.getUsuario());
Query q5 = em.createNamedQuery("Usuarios.findByPais");
q5.setParameter("pais", u.getPais());
Query q6 = em.createNamedQuery("Usuarios.findByEstado");
q6.setParameter("estado", u.getEstado());
Query q7 = em.createNamedQuery("Usuarios.findByMunicipio");
q7.setParameter("municipio", u.getMunicipio());
Query q8 = em.createNamedQuery("Usuarios.findByLocalidad");
q8.setParameter("localidad", u.getLocalidad());
List<Usuarios> resultadoNombre = q.getResultList();
List<Usuarios> resultadoApellidop = q1.getResultList();
List<Usuarios> resultadoApellidom = q2.getResultList();
List<Usuarios> resultadoUsuarios = q3.getResultList();
List<Usuarios> resultadoPais = q5.getResultList();
List<Usuarios> resultadoEstado = q6.getResultList();
List<Usuarios> resultadoMunicipio = q7.getResultList();
List<Usuarios> resultadoUsuarios = q1.getResultList(); List<Usuarios> resultadoLocalidad = q8.getResultList();
// Verifica si hay resultados para todos los campos // Verifica si hay resultados para todos los campos
if (!resultadoUsuarios.isEmpty()) { if (!resultadoNombre.isEmpty() && !resultadoApellidop.isEmpty() && !resultadoApellidom.isEmpty()
&& !resultadoUsuarios.isEmpty() && !resultadoPais.isEmpty()
&& !resultadoEstado.isEmpty() && !resultadoMunicipio.isEmpty() && !resultadoLocalidad.isEmpty()) {
// Compara si el mismo autor está en los tres resultados // Compara si el mismo autor está en los tres resultados
Usuarios usuariosEncontrado = resultadoUsuarios.stream() Usuarios usuariosEncontrado = resultadoUsuarios.stream()
.filter(resultadoNombre::contains)
.filter(resultadoApellidop::contains)
.filter(resultadoApellidom::contains)
.filter(resultadoUsuarios::contains)
.filter(resultadoPais::contains)
.filter(resultadoEstado::contains)
.filter(resultadoMunicipio::contains)
.filter(resultadoLocalidad::contains)
.findFirst() .findFirst()
.orElse(null); .orElse(null);

204
Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/modelo/Domicilio.java

@ -1,204 +0,0 @@
/*
* 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 mx.edu.tjs.chapala.sistemas.modelo;
import java.io.Serializable;
import java.util.List;
import javax.persistence.Basic;
import javax.persistence.CascadeType;
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.OneToMany;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
/**
*
* @author nickdalyrendon
*/
@Entity
@Table(name = "domicilio")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Domicilio.findAll", query = "SELECT d FROM Domicilio d"),
@NamedQuery(name = "Domicilio.findById", query = "SELECT d FROM Domicilio d WHERE d.id = :id"),
@NamedQuery(name = "Domicilio.findByPais", query = "SELECT d FROM Domicilio d WHERE d.pais = :pais"),
@NamedQuery(name = "Domicilio.findByEstado", query = "SELECT d FROM Domicilio d WHERE d.estado = :estado"),
@NamedQuery(name = "Domicilio.findByMunicipio", query = "SELECT d FROM Domicilio d WHERE d.municipio = :municipio"),
@NamedQuery(name = "Domicilio.findByLocalidad", query = "SELECT d FROM Domicilio d WHERE d.localidad = :localidad"),
@NamedQuery(name = "Domicilio.findByCp", query = "SELECT d FROM Domicilio d WHERE d.cp = :cp"),
@NamedQuery(name = "Domicilio.findByCalle", query = "SELECT d FROM Domicilio d WHERE d.calle = :calle"),
@NamedQuery(name = "Domicilio.findByNumero", query = "SELECT d FROM Domicilio d WHERE d.numero = :numero")})
public class Domicilio implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "id")
private Integer id;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 45)
@Column(name = "pais")
private String pais;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 45)
@Column(name = "estado")
private String estado;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 45)
@Column(name = "municipio")
private String municipio;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 45)
@Column(name = "localidad")
private String localidad;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 45)
@Column(name = "cp")
private String cp;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 45)
@Column(name = "calle")
private String calle;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 45)
@Column(name = "numero")
private String numero;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "domicilioId")
private List<Usuarios> usuariosList;
public Domicilio() {
}
public Domicilio(Integer id) {
this.id = id;
}
public Domicilio(Integer id, String pais, String estado, String municipio, String localidad, String cp, String calle, String numero) {
this.id = id;
this.pais = pais;
this.estado = estado;
this.municipio = municipio;
this.localidad = localidad;
this.cp = cp;
this.calle = calle;
this.numero = numero;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getPais() {
return pais;
}
public void setPais(String pais) {
this.pais = pais;
}
public String getEstado() {
return estado;
}
public void setEstado(String estado) {
this.estado = estado;
}
public String getMunicipio() {
return municipio;
}
public void setMunicipio(String municipio) {
this.municipio = municipio;
}
public String getLocalidad() {
return localidad;
}
public void setLocalidad(String localidad) {
this.localidad = localidad;
}
public String getCp() {
return cp;
}
public void setCp(String cp) {
this.cp = cp;
}
public String getCalle() {
return calle;
}
public void setCalle(String calle) {
this.calle = calle;
}
public String getNumero() {
return numero;
}
public void setNumero(String numero) {
this.numero = numero;
}
@XmlTransient
public List<Usuarios> getUsuariosList() {
return usuariosList;
}
public void setUsuariosList(List<Usuarios> usuariosList) {
this.usuariosList = usuariosList;
}
@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 Domicilio)) {
return false;
}
Domicilio other = (Domicilio) 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 "mx.edu.tjs.chapala.sistemas.modelo.Domicilio[ id=" + id + " ]";
}
}

242
Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/modelo/Rol.java

@ -1,114 +1,128 @@
/* /*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * 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 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/ */
package mx.edu.tjs.chapala.sistemas.modelo; package mx.edu.tjs.chapala.sistemas.modelo;
import java.io.Serializable; import java.io.Serializable;
import java.util.List; import java.util.List;
import javax.persistence.Basic; import javax.persistence.Basic;
import javax.persistence.CascadeType; import javax.persistence.CascadeType;
import javax.persistence.Column; import javax.persistence.Column;
import javax.persistence.Entity; import javax.persistence.Entity;
import javax.persistence.GeneratedValue; import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType; import javax.persistence.GenerationType;
import javax.persistence.Id; import javax.persistence.Id;
import javax.persistence.NamedQueries; import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery; import javax.persistence.NamedQuery;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size; import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient; import javax.xml.bind.annotation.XmlTransient;
/** /**
* *
* @author nickdalyrendon * @author Ely
*/ */
@Entity @Entity
@Table(name = "rol") @Table(name = "rol")
@XmlRootElement @XmlRootElement
@NamedQueries({ @NamedQueries({
@NamedQuery(name = "Rol.findAll", query = "SELECT r FROM Rol r"), @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.findById", query = "SELECT r FROM Rol r WHERE r.id = :id"),
@NamedQuery(name = "Rol.findByRol", query = "SELECT r FROM Rol r WHERE r.rol = :rol")}) @NamedQuery(name = "Rol.findByRol", query = "SELECT r FROM Rol r WHERE r.rol = :rol"),
public class Rol implements Serializable { @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;
@Id private static final long serialVersionUID = 1L;
@GeneratedValue(strategy = GenerationType.IDENTITY) @Id
@Basic(optional = false) @GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id") @Basic(optional = false)
private Integer id; @Column(name = "id")
@Basic(optional = false) private Integer id;
@NotNull @Basic(optional = false)
@Size(min = 1, max = 45) @NotNull
@Column(name = "rol") @Size(min = 1, max = 45)
private String rol; @Column(name = "rol")
@OneToMany(cascade = CascadeType.ALL, mappedBy = "rolId") private String rol;
private List<Usuarios> usuariosList; @Basic(optional = false)
@NotNull
public Rol() { @Column(name = "status")
} private int status;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "rolId")
public Rol(Integer id) { private List<Usuarios> usuariosList;
this.id = id;
} public Rol() {
}
public Rol(Integer id, String rol) {
this.id = id; public Rol(Integer id) {
this.rol = rol; this.id = id;
} }
public Integer getId() { public Rol(Integer id, String rol, int status) {
return id; this.id = id;
} this.rol = rol;
this.status = status;
public void setId(Integer id) { }
this.id = id;
} public Integer getId() {
return id;
public String getRol() { }
return rol;
} public void setId(Integer id) {
this.id = id;
public void setRol(String rol) { }
this.rol = rol;
} public String getRol() {
return rol;
@XmlTransient }
public List<Usuarios> getUsuariosList() {
return usuariosList; public void setRol(String rol) {
} this.rol = rol;
}
public void setUsuariosList(List<Usuarios> usuariosList) {
this.usuariosList = usuariosList; public int getStatus() {
} return status;
}
@Override
public int hashCode() { public void setStatus(int status) {
int hash = 0; this.status = status;
hash += (id != null ? id.hashCode() : 0); }
return hash;
} @XmlTransient
public List<Usuarios> getUsuariosList() {
@Override return usuariosList;
public boolean equals(Object object) { }
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Rol)) { public void setUsuariosList(List<Usuarios> usuariosList) {
return false; this.usuariosList = usuariosList;
} }
Rol other = (Rol) object;
if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) { @Override
return false; public int hashCode() {
} int hash = 0;
return true; hash += (id != null ? id.hashCode() : 0);
} return hash;
}
@Override
public String toString() { @Override
return "mx.edu.tjs.chapala.sistemas.modelo.Rol[ id=" + id + " ]"; public boolean equals(Object object) {
} // TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Rol)) {
} return false;
}
Rol other = (Rol) 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 "mx.edu.tjs.chapala.sistemas.modelo.Rol[ id=" + id + " ]";
}
}

612
Inventario-ejb/src/java/mx/edu/tjs/chapala/sistemas/modelo/Usuarios.java

@ -1,259 +1,353 @@
/* /*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * 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 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/ */
package mx.edu.tjs.chapala.sistemas.modelo; package mx.edu.tjs.chapala.sistemas.modelo;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import javax.persistence.Basic; import javax.persistence.Basic;
import javax.persistence.Column; import javax.persistence.Column;
import javax.persistence.Entity; import javax.persistence.Entity;
import javax.persistence.GeneratedValue; import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType; import javax.persistence.GenerationType;
import javax.persistence.Id; import javax.persistence.Id;
import javax.persistence.JoinColumn; import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne; import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries; import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery; import javax.persistence.NamedQuery;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size; import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlRootElement;
/** /**
* *
* @author nickdalyrendon * @author Ely
*/ */
@Entity @Entity
@Table(name = "usuarios") @Table(name = "usuarios")
@XmlRootElement @XmlRootElement
@NamedQueries({ @NamedQueries({
@NamedQuery(name = "Usuarios.findAll", query = "SELECT u FROM Usuarios u"), @NamedQuery(name = "Usuarios.findAll", query = "SELECT u FROM Usuarios u"),
@NamedQuery(name = "Usuarios.findById", query = "SELECT u FROM Usuarios u WHERE u.id = :id"), @NamedQuery(name = "Usuarios.findById", query = "SELECT u FROM Usuarios u WHERE u.id = :id"),
@NamedQuery(name = "Usuarios.findByUsuario", query = "SELECT u FROM Usuarios u WHERE u.usuario = :usuario"), @NamedQuery(name = "Usuarios.findByNombre", query = "SELECT u FROM Usuarios u WHERE u.nombre = :nombre"),
@NamedQuery(name = "Usuarios.findByContrasenia", query = "SELECT u FROM Usuarios u WHERE u.contrasenia = :contrasenia"), @NamedQuery(name = "Usuarios.findByApellidop", query = "SELECT u FROM Usuarios u WHERE u.apellidop = :apellidop"),
@NamedQuery(name = "Usuarios.findByStatus", query = "SELECT u FROM Usuarios u WHERE u.status = :status"), @NamedQuery(name = "Usuarios.findByApellidom", query = "SELECT u FROM Usuarios u WHERE u.apellidom = :apellidom"),
@NamedQuery(name = "Usuarios.findByNombre", query = "SELECT u FROM Usuarios u WHERE u.nombre = :nombre"), @NamedQuery(name = "Usuarios.findByGenero", query = "SELECT u FROM Usuarios u WHERE u.genero = :genero"),
@NamedQuery(name = "Usuarios.findByApellidom", query = "SELECT u FROM Usuarios u WHERE u.apellidom = :apellidom"), @NamedQuery(name = "Usuarios.findByFechanacimiento", query = "SELECT u FROM Usuarios u WHERE u.fechanacimiento = :fechanacimiento"),
@NamedQuery(name = "Usuarios.findByApellidop", query = "SELECT u FROM Usuarios u WHERE u.apellidop = :apellidop"), @NamedQuery(name = "Usuarios.findByUsuario", query = "SELECT u FROM Usuarios u WHERE u.usuario = :usuario"),
@NamedQuery(name = "Usuarios.findByFechanacimiento", query = "SELECT u FROM Usuarios u WHERE u.fechanacimiento = :fechanacimiento"), @NamedQuery(name = "Usuarios.findByContrasenia", query = "SELECT u FROM Usuarios u WHERE u.contrasenia = :contrasenia"),
@NamedQuery(name = "Usuarios.findByCorreo", query = "SELECT u FROM Usuarios u WHERE u.correo = :correo"), @NamedQuery(name = "Usuarios.findByCorreo", query = "SELECT u FROM Usuarios u WHERE u.correo = :correo"),
@NamedQuery(name = "Usuarios.findByGenero", query = "SELECT u FROM Usuarios u WHERE u.genero = :genero"), @NamedQuery(name = "Usuarios.findByTelefono", query = "SELECT u FROM Usuarios u WHERE u.telefono = :telefono"),
@NamedQuery(name = "Usuarios.findByTelefono", query = "SELECT u FROM Usuarios u WHERE u.telefono = :telefono")}) @NamedQuery(name = "Usuarios.findByPais", query = "SELECT u FROM Usuarios u WHERE u.pais = :pais"),
public class Usuarios implements Serializable { @NamedQuery(name = "Usuarios.findByEstado", query = "SELECT u FROM Usuarios u WHERE u.estado = :estado"),
@NamedQuery(name = "Usuarios.findByMunicipio", query = "SELECT u FROM Usuarios u WHERE u.municipio = :municipio"),
private static final long serialVersionUID = 1L; @NamedQuery(name = "Usuarios.findByLocalidad", query = "SELECT u FROM Usuarios u WHERE u.localidad = :localidad"),
@Id @NamedQuery(name = "Usuarios.findByCalle", query = "SELECT u FROM Usuarios u WHERE u.calle = :calle"),
@GeneratedValue(strategy = GenerationType.IDENTITY) @NamedQuery(name = "Usuarios.findByNumero", query = "SELECT u FROM Usuarios u WHERE u.numero = :numero"),
@Basic(optional = false) @NamedQuery(name = "Usuarios.findByCp", query = "SELECT u FROM Usuarios u WHERE u.cp = :cp"),
@Column(name = "id") @NamedQuery(name = "Usuarios.findByStatus", query = "SELECT u FROM Usuarios u WHERE u.status = :status")})
private Integer id; public class Usuarios implements Serializable {
@Basic(optional = false)
@NotNull private static final long serialVersionUID = 1L;
@Size(min = 1, max = 45) @Id
@Column(name = "usuario") @GeneratedValue(strategy = GenerationType.IDENTITY)
private String usuario; @Basic(optional = false)
@Basic(optional = false) @Column(name = "id")
@NotNull private Integer id;
@Size(min = 1, max = 45) @Basic(optional = false)
@Column(name = "contrasenia") @NotNull
private String contrasenia; @Size(min = 1, max = 45)
@Basic(optional = false) @Column(name = "nombre")
@NotNull private String nombre;
@Column(name = "status") @Basic(optional = false)
private int status; @NotNull
@Basic(optional = false) @Size(min = 1, max = 45)
@NotNull @Column(name = "apellidop")
@Size(min = 1, max = 45) private String apellidop;
@Column(name = "nombre") @Basic(optional = false)
private String nombre; @NotNull
@Basic(optional = false) @Size(min = 1, max = 45)
@NotNull @Column(name = "apellidom")
@Size(min = 1, max = 45) private String apellidom;
@Column(name = "apellidom") @Basic(optional = false)
private String apellidom; @NotNull
@Basic(optional = false) @Column(name = "genero")
@NotNull private Character genero;
@Size(min = 1, max = 45) @Basic(optional = false)
@Column(name = "apellidop") @NotNull
private String apellidop; @Column(name = "fechanacimiento")
@Basic(optional = false) @Temporal(TemporalType.DATE)
@NotNull private Date fechanacimiento;
@Column(name = "fechanacimiento") @Basic(optional = false)
@Temporal(TemporalType.DATE) @NotNull
private Date fechanacimiento; @Size(min = 1, max = 45)
@Basic(optional = false) @Column(name = "usuario")
@NotNull private String usuario;
@Size(min = 1, max = 45) @Basic(optional = false)
@Column(name = "correo") @NotNull
private String correo; @Size(min = 1, max = 45)
@Basic(optional = false) @Column(name = "contrasenia")
@NotNull private String contrasenia;
@Column(name = "genero") @Basic(optional = false)
private Character genero; @NotNull
@Basic(optional = false) @Size(min = 1, max = 45)
@NotNull @Column(name = "correo")
@Size(min = 1, max = 20) private String correo;
@Column(name = "telefono") @Basic(optional = false)
private String telefono; @NotNull
@JoinColumn(name = "domicilio_id", referencedColumnName = "id") @Size(min = 1, max = 20)
@ManyToOne(optional = false) @Column(name = "telefono")
private Domicilio domicilioId; private String telefono;
@JoinColumn(name = "rol_id", referencedColumnName = "id") @Basic(optional = false)
@ManyToOne(optional = false) @NotNull
private Rol rolId; @Size(min = 1, max = 45)
@Column(name = "pais")
public Usuarios() { private String pais;
} @Basic(optional = false)
@NotNull
public Usuarios(Integer id) { @Size(min = 1, max = 45)
this.id = id; @Column(name = "estado")
} private String estado;
@Basic(optional = false)
public Usuarios(Integer id, String usuario, String contrasenia, int status, String nombre, String apellidom, String apellidop, Date fechanacimiento, String correo, Character genero, String telefono) { @NotNull
this.id = id; @Size(min = 1, max = 45)
this.usuario = usuario; @Column(name = "municipio")
this.contrasenia = contrasenia; private String municipio;
this.status = status; @Basic(optional = false)
this.nombre = nombre; @NotNull
this.apellidom = apellidom; @Size(min = 1, max = 45)
this.apellidop = apellidop; @Column(name = "localidad")
this.fechanacimiento = fechanacimiento; private String localidad;
this.correo = correo; @Basic(optional = false)
this.genero = genero; @NotNull
this.telefono = telefono; @Size(min = 1, max = 45)
} @Column(name = "calle")
private String calle;
public Integer getId() { @Basic(optional = false)
return id; @NotNull
} @Size(min = 1, max = 45)
@Column(name = "numero")
public void setId(Integer id) { private String numero;
this.id = id; @Basic(optional = false)
} @NotNull
@Size(min = 1, max = 45)
public String getUsuario() { @Column(name = "cp")
return usuario; private String cp;
} @Basic(optional = false)
@NotNull
public void setUsuario(String usuario) { @Column(name = "status")
this.usuario = usuario; private int status;
} @JoinColumn(name = "rol_id", referencedColumnName = "id")
@ManyToOne(optional = false)
public String getContrasenia() { private Rol rolId;
return contrasenia;
} public Usuarios() {
}
public void setContrasenia(String contrasenia) {
this.contrasenia = contrasenia; public Usuarios(Integer id) {
} this.id = id;
}
public int getStatus() {
return status; public Usuarios(Integer id, String nombre, String apellidop, String apellidom, Character genero, Date fechanacimiento, String usuario, String contrasenia, String correo, String telefono, String pais, String estado, String municipio, String localidad, String calle, String numero, String cp, int status) {
} this.id = id;
this.nombre = nombre;
public void setStatus(int status) { this.apellidop = apellidop;
this.status = status; this.apellidom = apellidom;
} this.genero = genero;
this.fechanacimiento = fechanacimiento;
public String getNombre() { this.usuario = usuario;
return nombre; this.contrasenia = contrasenia;
} this.correo = correo;
this.telefono = telefono;
public void setNombre(String nombre) { this.pais = pais;
this.nombre = nombre; this.estado = estado;
} this.municipio = municipio;
this.localidad = localidad;
public String getApellidom() { this.calle = calle;
return apellidom; this.numero = numero;
} this.cp = cp;
this.status = status;
public void setApellidom(String apellidom) { }
this.apellidom = apellidom;
} public Integer getId() {
return id;
public String getApellidop() { }
return apellidop;
} public void setId(Integer id) {
this.id = id;
public void setApellidop(String apellidop) { }
this.apellidop = apellidop;
} public String getNombre() {
return nombre;
public Date getFechanacimiento() { }
return fechanacimiento;
} public void setNombre(String nombre) {
this.nombre = nombre;
public void setFechanacimiento(Date fechanacimiento) { }
this.fechanacimiento = fechanacimiento;
} public String getApellidop() {
return apellidop;
public String getCorreo() { }
return correo;
} public void setApellidop(String apellidop) {
this.apellidop = apellidop;
public void setCorreo(String correo) { }
this.correo = correo;
} public String getApellidom() {
return apellidom;
public Character getGenero() { }
return genero;
} public void setApellidom(String apellidom) {
this.apellidom = apellidom;
public void setGenero(Character genero) { }
this.genero = genero;
} public Character getGenero() {
return genero;
public String getTelefono() { }
return telefono;
} public void setGenero(Character genero) {
this.genero = genero;
public void setTelefono(String telefono) { }
this.telefono = telefono;
} public Date getFechanacimiento() {
return fechanacimiento;
public Domicilio getDomicilioId() { }
return domicilioId;
} public void setFechanacimiento(Date fechanacimiento) {
this.fechanacimiento = fechanacimiento;
public void setDomicilioId(Domicilio domicilioId) { }
this.domicilioId = domicilioId;
} public String getUsuario() {
return usuario;
public Rol getRolId() { }
return rolId;
} public void setUsuario(String usuario) {
this.usuario = usuario;
public void setRolId(Rol rolId) { }
this.rolId = rolId;
} public String getContrasenia() {
return contrasenia;
@Override }
public int hashCode() {
int hash = 0; public void setContrasenia(String contrasenia) {
hash += (id != null ? id.hashCode() : 0); this.contrasenia = contrasenia;
return hash; }
}
public String getCorreo() {
@Override return correo;
public boolean equals(Object object) { }
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Usuarios)) { public void setCorreo(String correo) {
return false; this.correo = correo;
} }
Usuarios other = (Usuarios) object;
if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) { public String getTelefono() {
return false; return telefono;
} }
return true;
} public void setTelefono(String telefono) {
this.telefono = telefono;
@Override }
public String toString() {
return "mx.edu.tjs.chapala.sistemas.modelo.Usuarios[ id=" + id + " ]"; public String getPais() {
} return pais;
}
}
public void setPais(String pais) {
this.pais = pais;
}
public String getEstado() {
return estado;
}
public void setEstado(String estado) {
this.estado = estado;
}
public String getMunicipio() {
return municipio;
}
public void setMunicipio(String municipio) {
this.municipio = municipio;
}
public String getLocalidad() {
return localidad;
}
public void setLocalidad(String localidad) {
this.localidad = localidad;
}
public String getCalle() {
return calle;
}
public void setCalle(String calle) {
this.calle = calle;
}
public String getNumero() {
return numero;
}
public void setNumero(String numero) {
this.numero = numero;
}
public String getCp() {
return cp;
}
public void setCp(String cp) {
this.cp = cp;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public Rol getRolId() {
return rolId;
}
public void setRolId(Rol rolId) {
this.rolId = rolId;
}
@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 Usuarios)) {
return false;
}
Usuarios other = (Usuarios) 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 "mx.edu.tjs.chapala.sistemas.modelo.Usuarios[ id=" + id + " ]";
}
}

33
Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/seguridad/Login.java

@ -7,8 +7,14 @@ package mx.edu.tjs.chapala.sistemas.seguridad;
import javax.inject.Named; import javax.inject.Named;
import javax.enterprise.context.SessionScoped; import javax.enterprise.context.SessionScoped;
import java.io.Serializable; import java.io.Serializable;
import javax.ejb.EJB;
import javax.faces.context.FacesContext; import javax.faces.context.FacesContext;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
import mx.edu.tjs.chapala.sistemas.bl.UsuariosBLLocal;
import mx.edu.tjs.chapala.sistemas.modelo.Usuarios;
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;
/** /**
* *
@ -18,6 +24,11 @@ import javax.servlet.http.HttpSession;
@SessionScoped @SessionScoped
public class Login implements Serializable { public class Login implements Serializable {
@EJB
private UsuariosBLLocal usuariosBL;
private Usuarios usuarios= new Usuarios();
private static HttpSession httpSession; private static HttpSession httpSession;
@ -34,22 +45,36 @@ private static HttpSession httpSession;
//metodo para salir //metodo para salir
public static String logout(){ public String logout(){
httpSession.removeAttribute("sesionActiva"); httpSession.removeAttribute("sesionActiva");
httpSession.invalidate(); httpSession.invalidate();
return "index.xhtml"; return "index.xhtml";
} }
public static String login(){ public String login() {
//llamar bl para autenticacion que regresa un boolean //llamar bl para autenticacion que regresa un boolean
//todo:hacer un metodo en el bl que reciba el usuario y pass //todo:hacer un metodo en el bl que reciba el usuario y passMensaje mensaje = usuariosBL.loginValidar(usuarios);
boolean login=true; Mensaje mensaje = usuariosBL.loginValidar(usuarios);
boolean login=true;
switch (mensaje) {
case SIN_ERROR:
usuarios = new Usuarios();
return null;
case ELEMENTO_DUPLICADO:
if(login){ if(login){
httpSession.setAttribute("sesionActiva","true"); httpSession.setAttribute("sesionActiva","true");
return "ProductoLista.xhtml"; return "ProductoLista.xhtml";
}else{ }else{
return "index.xhtml"; return "index.xhtml";
} }
default:
return null;
}
} }

49
Inventario-war/src/java/mx/edu/tjs/chapala/sistemas/vista/DemoBeanUsuarios.java

@ -12,6 +12,10 @@ import java.util.Locale;
import javax.ejb.EJB; import javax.ejb.EJB;
import mx.edu.tjs.chapala.sistemas.bl.UsuariosBLLocal; import mx.edu.tjs.chapala.sistemas.bl.UsuariosBLLocal;
import mx.edu.tjs.chapala.sistemas.modelo.Usuarios; import mx.edu.tjs.chapala.sistemas.modelo.Usuarios;
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; import org.primefaces.util.LangUtils;
/** /**
@ -40,15 +44,39 @@ public class DemoBeanUsuarios implements Serializable {
} }
public String agregar() { public String agregar() {
usuarios.setStatus(1); Mensaje mensaje =usuariosBL.agregar(usuarios);
usuariosBL.agregar(usuarios); switch(mensaje){
usuarios= new Usuarios(); case SIN_ERROR:
return "usuariosLista.xhtml"; usuarios.setStatus(1);
usuarios = new Usuarios();
PrimeFaces.current().executeScript("PF('dlg'.hide()");
PrimeFaces.current().ajax().update("formtabla:growl");
return "usuariosLista.xhtml";
case ELEMENTO_DUPLICADO:
return null;
default:
return null;
}
} }
public String editar() { public String editar() {
usuariosBL.editar(usuarios); Mensaje mensaje =usuariosBL.editar(usuarios);
switch(mensaje){
case SIN_ERROR:
usuarios =new Usuarios();
PrimeFaces.current().executeScript("PF('dlg'.hide()");
PrimeFaces.current().ajax().update("formtabla:growl");
return "usuariosLista.xhtml"; return "usuariosLista.xhtml";
case ELEMENTO_DUPLICADO:
return null;
default:
return null;
}
} }
public String eliminar() { public String eliminar() {
@ -104,7 +132,7 @@ public class DemoBeanUsuarios implements Serializable {
} }
public void prepararEditar(Usuarios usuarios){ public void prepararEditar(Usuarios usuarios){
nuevo =false; nuevo =false;
titulo="editando Usuario"; titulo="Editando Usuario";
this.usuarios=usuarios; this.usuarios=usuarios;
} }
@ -135,7 +163,14 @@ public class DemoBeanUsuarios implements Serializable {
Usuarios customer = (Usuarios) value; Usuarios customer = (Usuarios) value;
return customer.getUsuario().toLowerCase().contains(filterText) return customer.getUsuario().toLowerCase().contains(filterText)
|| customer.getUsuario().toLowerCase().contains(filterText); || customer.getNombre().toLowerCase().contains(filterText)
|| customer.getApellidop().toLowerCase().contains(filterText)
|| customer.getApellidom().toLowerCase().contains(filterText)
|| customer.getCp().toLowerCase().contains(filterText)
|| customer.getEstado().toLowerCase().contains(filterText)
|| customer.getLocalidad().toLowerCase().contains(filterText)
|| customer.getMunicipio().toLowerCase().contains(filterText)
|| customer.getPais().toLowerCase().contains(filterText);
} }

41
Inventario-war/web/index.xhtml

@ -1,23 +1,38 @@
<?xml version='1.0' encoding='UTF-8' ?> <?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" <html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"> xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:p="http://primefaces.org/ui">
<h:head> <h:head>
<title>Inventario</title> <title>Inventario</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/> <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
</h:head> </h:head>
<h:body> <body style="background-color: #036FAB;" >
<div >
<h2>login</h2> <center>
<h:form> <h:form>
<h:commandButton value="Login" action="#{login.login()}"/> <div style=" height: 500px; width: 500px; background-color: #ffffff; align-content:center; margin-top: 100px; border-radius: 15px;">
<p:graphicImage value="/resources/imagen/usuario.png" style="height: 200px; width: 300px; "/>
<p:growl id="growl" showDetail="true" />
<center>
<h:panelGrid columns="2" >
<p:inputText id="usuario" required="true" style="margin-top:20px" placeholder="usuario" requiredMessage="campo obligatorio" />
<p:messages for="usuario"/>
<p:password id="contrasenia" required="true" style="margin-top:20px" placeholder= "contraseña" requiredMessage="campo obligatorio" />
<p:messages for="contrasenia"/>
</h:panelGrid>
<p:commandButton ajax="false" value="Login" update="growl" action="#{login.login()}" style=" background-color:#036FAB; margin-top: 20px" />
</center>
</div>
</h:form> </h:form>
</center>
</div>
</body>
</h:body>
</html> </html>

2
Inventario-war/web/resources/css/cssLayout.css

@ -102,7 +102,7 @@
align-items: center; align-items: center;
color:black; color:black;
width: 160px; width: 160px;
height: 98px; height: 88px;
margin-right: 2px; margin-right: 2px;
margin-right: -1px; margin-right: -1px;
} }

BIN
Inventario-war/web/resources/imagen/usuario.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 696 KiB

149
Inventario-war/web/rolLista.xhtml

@ -0,0 +1,149 @@
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:p="http://primefaces.org/ui">
<body>
<ui:composition template="./template/principal.xhtml">
<ui:define name="top">
<center><H2> R O L </H2></center>
</ui:define>
<ui:define name="left">
<h:form>
<p:menu style="border-color: gray; margin: 1px; width: 163px; height: 600px; " >
<p:menuitem action="ProductoLista.xhtml" value="Productos" ajax="false" icon="pi pi-shopping-bag" iconPos="left" style="background-color: lightgray" styleClass="botonMenu" />
<p:menuitem action="proveedorLista.xhtml" value="Proveedores" ajax="false" icon="pi pi-id-card" iconPos="left" style="background-color: white " styleClass="botonMenu"/>
<p:menuitem action="marcaLista.xhtml" value="Marcas" ajax="false" icon="pi pi-tag" iconPos="left" style="background-color: lightgray" styleClass="botonMenu" />
<p:menuitem action="categoriaLista.xhtml" value="Categorias" ajax="false" icon="pi pi-star" iconPos="left" style="background-color: white" styleClass="botonMenu" />
<p:menuitem action="UbicacionAlmacenLista.xhtml" value="Almacen" ajax="false" icon="pi pi-map-marker" iconPos="left" style="background-color: lightgray" styleClass="botonMenu"/>
<p:menuitem action="usuariosLista.xhtml" value="Usuarios" ajax="false" icon="pi pi-users" iconPos="left" style="background-color: white" styleClass="botonMenu" />
<p:menuitem action="rolLista.xhtml" value="Rol" ajax="false" icon="pi pi-sitemap" iconPos="left" style="background-color: lightgray" styleClass="botonMenu" />
</p:menu>
</h:form>
</ui:define>
<ui:define name="content">
<f:view>
<h:form id="formtabla">
<p:growl id="grsowl" showDetail="true" />
<p:dataTable id="tabla" value="#{demoBeanRol.all}" var="item"
widgetVar="Rol" emptyMessage="No se han encontrado el usuario"
filteredValue="#{demoBeanRol.filteredCustomers3}"
globalFilterFunction="#{demoBeanRol.globalFilterFunction}"
scrollable="true" scrollHeight="480" >
<f:facet name="header">
<div class="flex justify-content-end" style="height: 30px;" >
<div>
<p:commandButton ajax="true" oncomplete="PF('dlg').show();" actionListener="#{demoBeanRol.prepararNuevo()}"
update=":dialog" value="Nuevo" icon="pi pi-plus" />
<i class="pi pi-search" style="margin-left: 765px; margin-top: 10px;"></i>
<p:inputText id="globalFilter" onkeyup="PF('rol').filter()" placeholder="Buscar rol"
style="width:300px; margin-left: 10px; float: right; margin-top: -40px;"/>
</div>
</div>
</f:facet>
<p:column styleClass="columnaId2">
<f:facet name="header">
<h:outputText value="Id" style=" font-weight:bolder; float: left" />
</f:facet>
<h:outputText value="#{item.id}"/>
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="Rol" style=" font-weight:bolder; float: left" />
</f:facet>
<h:outputText value="#{item.rol}"/>
</p:column>
<p:column styleClass="columnaOpc">
<f:facet name="header">
<h:outputText value="Opciones" style=" font-weight:bolder;"/>
</f:facet>
<p:commandButton ajax="true" oncomplete="PF('dlg').show();" actionListener="#{demoBeanRol.prepararEditar(item)}"
icon="pi pi-file-edit" update=":dialog" style="margin-right: 10px "/>
<p:commandButton ajax="true" oncomplete="PF('dlg2').show();" actionListener="#{demoBeanRol.prepararEliminar(item)}"
update=":dialog2" style="background-color: red; color:white; border-color: red; " icon="pi pi-trash" />
</p:column>
</p:dataTable>
</h:form>
<!-- crear/editar''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' -->
<p:dialog id="dialog" widgetVar="dlg" width="600" height="150" modal="true" appendTo="@(body)" >
<h:form style="height: 600px;" class="form-container" >
<p:growl id="growl" for="proveedorMsj" showDetail="true" />
<h1 style="text-align: center; background-color: #ADD8E6; padding: 20px; color: #000; font-size: 2em; margin-bottom: 10px;">
<h:outputText value="#{demoBeanRol.titulo}"/></h1>
<h:panelGrid id="grid" columns="3" style="width: 100%">
<p:outputLabel value="Rol:" for="rol" style=" font-weight:bolder"/>
<p:inputText id="rol" value="#{demoBeanRol.rol.rol}" title="Rol" required="true" requiredMessage="este campo es obligatorio" styleClass="formulario-elemento"/>
<p:message for="rol"/>
</h:panelGrid>
<p:commandButton action="#{demoBeanRol.agregar()}" update="grid, formtabla:tabla, growl" rendered="#{demoBeanRol.nuevo}" ajax="false" icon="pi pi-check"
style="margin-right: 10px; margin-top: 10px; background-color: green; color:white; border-color:green;" />
<p:commandButton action="#{demoBeanRol.editar()}" update="grid, formtabla:tabla, growl" ajax="true" rendered="#{!demoBeanRol.nuevo}" icon="pi pi-check"
style="margin-right: 10px; margin-top: 10px; background-color: green; color:white; border-color:green;" />
<p:commandButton action="rolLista.xhtml" immediate="true" ajax="false" icon="pi pi-times" style="background-color: red; color:white; border-color: red; margin-right: 15px;"/>
</h:form>
</p:dialog>
<!-- elimininar -->
<p:dialog id="dialog2" widgetVar="dlg2" width="600" height="150" modal="true" >
<h:form>
<h1 style="text-align: center; background-color: #ADD8E6; padding: 30px; color: #000; font-size: 2em; margin-bottom: 20px;">
<h:outputText value="Eliminar"/></h1>
<div>
<h:panelGrid id="grid" columns="4" style="width: 100%;" cellpadding="20" >
<h:outputText value="Id:"/>
<h:outputText value="#{demoBeanRol.rol.id}" title="Id"/>
<h:outputText value="Rol:"/>
<h:outputText value="#{demoBeanRol.rol.rol}" title="Rol"/>
</h:panelGrid>
</div>
<div style="margin-top: 20px;">
<p:commandButton action="rolLista.xhtml" icon="pi pi-times" ajax="false" immediate="true"
style="margin-left: 10px; background-color:red; border-color:red; float: right;" />
<p:commandButton action="rolLista.xhtml" actionListener="#{demoBeanRol.eliminar()}"
ajax="false" icon="pi pi-check"
style=" background-color:green; border-color:green; float: right;"/>
</div>
</h:form>
</p:dialog>
</f:view>
</ui:define>
</ui:composition>
</body>
</html>

331
Inventario-war/web/usuariosLista.xhtml

@ -11,37 +11,43 @@
<ui:composition template="./template/principal.xhtml"> <ui:composition template="./template/principal.xhtml">
<ui:define name="top"> <ui:define name="top">
<center> <H2> U S U A R I O S </H2></center> <h:form>
<p:commandButton ajax="false" icon="pi pi-sign-out" action="#{login.logout()}" style="background-color: #036FAB; width: 30px; " />
</h:form>
<center><H2> U S U A R I O S </H2></center>
</ui:define> </ui:define>
<ui:define name="left"> <ui:define name="left">
<h:form > <h:form >
<p:menu style="border-color: gray; margin: 1px; width: 163px; height: 600px;"> <p:menu style="border-color: gray; margin: 1px; width: 163px; height: 600px;">
<p:menuitem action="ProductoLista.xhtml" value="Productos" ajax="false" icon="pi pi-database" iconPos="left" style="background-color: lightgray" styleClass="botonMenu" /> <p:menuitem action="ProductoLista.xhtml" value="Productos" ajax="false" icon="pi pi-shopping-bag" iconPos="left" style="background-color: lightgray" styleClass="botonMenu" />
<p:menuitem action="proveedorLista.xhtml" value="Proveedores" ajax="false" icon="pi pi-id-card" iconPos="left" style="background-color: white " styleClass="botonMenu"/> <p:menuitem action="proveedorLista.xhtml" value="Proveedores" ajax="false" icon="pi pi-id-card" iconPos="left" style="background-color: white " styleClass="botonMenu"/>
<p:menuitem action="marcaLista.xhtml" value="Marcas" ajax="false" icon="pi pi-tag" iconPos="left" style="background-color: lightgray" styleClass="botonMenu" /> <p:menuitem action="marcaLista.xhtml" value="Marcas" ajax="false" icon="pi pi-tag" iconPos="left" style="background-color: lightgray" styleClass="botonMenu" />
<p:menuitem action="categoriaLista.xhtml" value="Categorias" ajax="false" icon="pi pi-star" iconPos="left" style="background-color: white" styleClass="botonMenu" /> <p:menuitem action="categoriaLista.xhtml" value="Categorias" ajax="false" icon="pi pi-star" iconPos="left" style="background-color: white" styleClass="botonMenu" />
<p:menuitem action="UbicacionAlmacenLista.xhtml" value="Almacen" ajax="false" icon="pi pi-map-marker" iconPos="left" style="background-color: lightgray" styleClass="botonMenu"/> <p:menuitem action="UbicacionAlmacenLista.xhtml" value="Almacen" ajax="false" icon="pi pi-map-marker" iconPos="left" style="background-color: lightgray" styleClass="botonMenu"/>
<p:menuitem action="usuariosLista.xhtml" value="Usuarios" ajax="false" icon="pi pi-users" iconPos="left" style="background-color: white" styleClass="botonMenu" /> <p:menuitem action="usuariosLista.xhtml" value="Usuarios" ajax="false" icon="pi pi-users" iconPos="left" style="background-color: white" styleClass="botonMenu" />
</p:menu> <p:menuitem action="rolLista.xhtml" value="Rol" ajax="false" icon="pi pi-sitemap" iconPos="left" style="background-color: lightgray" styleClass="botonMenu" />
</p:menu>
       </h:form>        </h:form>
</ui:define> </ui:define>
<ui:define name="content"> <ui:define name="content">
<f:view> <f:view>
<h:form style="width: 100%"> <h:form id="formtabla" >
<p:growl id="growl" showDetail="true" /> <p:growl id="growl" showDetail="true" />
<p:dataTable value="#{demoBeanUsuarios.all}" var="item" <p:dataTable id="tabla" value="#{demoBeanUsuarios.all}" var="item"
widgetVar="Usuarios" emptyMessage="No se han encontrado el usuario" widgetVar="Usuarios" emptyMessage="No se han encontrado el usuario"
filteredValue="#{demoBeanUsuarios.filteredCustomers3}" filteredValue="#{demoBeanUsuarios.filteredCustomers3}"
globalFilterFunction="#{demoBeanUsuarios.globalFilterFunction}" globalFilterFunction="#{demoBeanUsuarios.globalFilterFunction}"
scrollable="true" scrollHeight="480" > scrollable="true" scrollHeight="480" >
<f:facet name="header">
<f:facet name="header">
<div class="flex justify-content-end" style="height: 30px;" > <div class="flex justify-content-end" style="height: 30px;" >
<div> <div>
<p:commandButton action="usuariosCrearEditar.xhtml" actionListener="#{demoBeanUsuarios.prepararNuevo()}" icon="pi pi-plus" value="Nuevo" ajax="false"/> <p:commandButton ajax="true" oncomplete="PF('dlg').show();" actionListener="#{demoBeanUsuarios.prepararNuevo()}"
update=":dialog" icon="pi pi-plus" value="Nuevo"/>
<i class="pi pi-search" style="margin-left: 765px; margin-top: 10px;"></i> <i class="pi pi-search" style="margin-left: 765px; margin-top: 10px;"></i>
<p:inputText id="globalFilter" onkeyup="PF('usuario').filter()" style="width:300px; margin-left: 10px; margin-top: -40px; float: right;" <p:inputText id="globalFilter" onkeyup="PF('usuario').filter()" style="width:300px; margin-left: 10px; margin-top: -40px; float: right;"
@ -51,49 +57,334 @@
</div> </div>
</f:facet> </f:facet>
<p:column styleClass="columnaOpc"> <p:column styleClass="columnaId2">
<f:facet name="header"> <f:facet name="header">
<h:outputText value="Id"/> <h:outputText value="Id" style=" font-weight:bolder; float: left" />
</f:facet> </f:facet>
<h:outputText value="#{item.id}"/> <h:outputText value="#{item.id}"/>
</p:column> </p:column>
<p:column>
<f:facet name="header">
<h:outputText value="Nombre" style=" font-weight:bolder; float: left"/>
</f:facet>
<h:outputText value="#{item.nombre}"/>
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="Primer Apellidos" style=" font-weight:bolder; float: left"/>
</f:facet>
<h:outputText value="#{item.apellidop}"/>
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="segundo Apellido" style=" font-weight:bolder; float: left"/>
</f:facet>
<h:outputText value="#{item.apellidom}"/>
</p:column>
<p:column> <p:column>
<f:facet name="header"> <f:facet name="header">
<h:outputText value="Usuario" style=" font-weight:bolder; float: left"/> <h:outputText value="Usuario" style=" font-weight:bolder; float: left"/>
</f:facet> </f:facet>
<h:outputText value="#{item.usuario}"/> <h:outputText value="#{item.usuario}"/>
</p:column> </p:column>
<p:column> <p:column>
<f:facet name="header"> <f:facet name="header">
<h:outputText value="Contraseña" style=" font-weight:bolder; float: left"/> <h:outputText value="Correo" style=" font-weight:bolder; float: left"/>
</f:facet> </f:facet>
<h:outputText value="#{item.contrasenia}"/> <h:outputText value="#{item.correo}"/>
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="Telefono" style=" font-weight:bolder; float: left"/>
</f:facet>
<h:outputText value="#{item.telefono}"/>
</p:column> </p:column>
<p:column> <p:column>
<f:facet name="header"> <f:facet name="header">
<h:outputText value="Status" style=" font-weight:bolder; float: left" /> <h:outputText value="Rol" style=" font-weight:bolder; float: left"/>
</f:facet> </f:facet>
<h:outputText value="#{item.status==1?'Activo':'inactivo'}"/> <h:outputText value="#{item.rolId.rol}"/>
</p:column> </p:column>
<p:column styleClass="columnaOpc"> <p:column styleClass="columnaOpc">
<f:facet name="header"> <f:facet name="header">
<h:outputText value="Opciones" style=" font-weight:bolder;"/> <h:outputText value="Opciones" style=" font-weight:bolder;"/>
</f:facet> </f:facet>
<p:commandButton action="usuariosCrearEditar.xhtml" actionListener="#{demoBeanUsuarios.prepararEditar(item)}" ajax="false" style="margin-right: 10px; " icon="pi pi-file-edit" /> <p:commandButton ajax="true" oncomplete="PF('dlg').show();" actionListener="#{demoBeanUsuarios.prepararEditar(item)}"
<p:commandButton action="usuarioEliminar.xhtml" actionListener="#{demoBeanUsuarios.prepararEliminar(item)}" ajax="false" style="background-color: red; color:white; border-color: red; " icon="pi pi-trash" /> update=":dialog" style="margin-right: 10px; " icon="pi pi-file-edit" />
<p:commandButton ajax="true" oncomplete="PF('dlg2').show();" actionListener="#{demoBeanUsuarios.prepararEliminar(item)}"
update=":dialog2" style="background-color: red; color:white; border-color: red; " icon="pi pi-trash" />
<p:commandButton ajax="true" oncomplete="PF('dlg3').show();" actionListener="#{demoBeanUsuarios.prepararEditar(item)}"
update=":dialog3" icon="pi pi-eye" style="background-color: #88DC65; color:black; margin-right: 10px; width: 85px; margin-top: 10px" />
</p:column> </p:column>
</p:dataTable> </p:dataTable>
</h:form> </h:form>
</f:view>
<!-- crear/editar''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' -->
<p:dialog id="dialog" widgetVar="dlg" width="800" height="500" modal="true" appendTo="@(body)" >
<h:form style="height: 600px; " class="form-container">
<p:growl id="growl" for="usuariosMsj" showDetail="true" />
<h1 style="text-align: center; background-color: #036FAB; padding: 20px; color: #FFFFFF; font-size: 2em; margin-bottom: 10px;">
<h:outputText value="#{demoBeanUsuarios.titulo}"/></h1>
<h:panelGrid id="grid" columns="3" style="width: 100%">
<p:outputLabel style="font-weight:bolder" value="Nombre:" for="nombre" />
<p:inputText id="nombre" value="#{demoBeanUsuarios.usuarios.nombre}" title="Nombre" required="true" requiredMessage="campo obligatorio" validatorMessage=" el numbre debe enpesar con mayuscula " >
<f:validateRegex pattern="^[A-Z][a-z]{4,9}$" for="nombre"/>
</p:inputText>
<p:messages for="nombre"/>
<p:outputLabel style="font-weight:bolder" value="Primer Apellido:" for="apellidop" />
<p:inputText id="apellidop" value="#{demoBeanUsuarios.usuarios.apellidop}" title="Apellidop" required="true" requiredMessage="campo obligatorio" >
<f:validateRegex pattern="^[A-Z][a-z]{4,9}$" for="apellidop"/>
</p:inputText>
<p:messages for="apellidop"/>
<p:outputLabel style="font-weight:bolder" value="Segundo Apellido:" for="apellidom" />
<p:inputText id="apellidom" value="#{demoBeanUsuarios.usuarios.apellidom}" title="Apellidom" required="true" requiredMessage="campo obligatorio" validatorMessage="el apellido debe enpesar con mayuscula" >
<f:validateRegex pattern="^[A-Z][a-z]{4,9}$" for="apellidom"/>
</p:inputText>
<p:messages for="apellidom"/>
<p:outputLabel style="font-weight:bolder" value="Genero:" for="genero" />
<p:inputText id="genero" value="#{demoBeanUsuarios.usuarios.genero}" title="Genero" required="true" requiredMessage="campo obligatorio" >
</p:inputText>
<p:messages for="genero"/>
<p:outputLabel style="font-weight:bolder" value="Fechanacimiento:" for="fechanacimiento" />
<p:inputText id="fechanacimiento" value="#{demoBeanUsuarios.usuarios.fechanacimiento}" title="Fechanacimiento" required="true" requiredMessage="campo obligatorio" validatorMessage="La fecha tine que ir como yyyy/mm/dd" >
<f:convertDateTime pattern="MM/dd/yyyy" />
</p:inputText>
<p:messages for="fechanacimiento"/>
<p:outputLabel style="font-weight:bolder" value="Usuario:" for="usuario" />
<p:inputText id="usuario" value="#{demoBeanUsuarios.usuarios.usuario}" title="Usuario" required="true" requiredMessage="campo obligatorio" validatorMessage="el usuario requiere la primera letra mayuscula y porlomenos 5 caracteres" >
<f:validateRegex pattern="^[A-Z][a-z]{4,9}$" for="usuario"/>
</p:inputText>
<p:messages for="usuario"/>
<p:outputLabel style="font-weight:bolder" value="Contrasenia:" for="contrasenia" />
<p:inputText id="contrasenia" value="#{demoBeanUsuarios.usuarios.contrasenia}" title="Contrasenia" required="true" requiredMessage="campo obligatorio" validatorMessage=" la contraseña requiere 8 caracteres entre letras y numeros" >
<f:validateRegex pattern="^(?=.*[a-zA-Z])(?=.*[0-9])[a-zA-Z0-9]{8}$" for="contrasenia"/>
</p:inputText>
<p:messages for="contrasenia"/>
<p:outputLabel style="font-weight:bolder" value="Correo:" for="correo" />
<p:inputText id="correo" value="#{demoBeanUsuarios.usuarios.correo}" title="Correo" required="true" requiredMessage="campo obligatorio" validatorMessage="el correo es incorecto o no cumple con el formato requerid">
<f:validateRegex pattern="^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$" for="correo"/>
</p:inputText>
<p:messages for="correo"/>
<p:outputLabel style="font-weight:bolder" value="Telefono:" for="telefono" />
<p:inputText id="telefono" value="#{demoBeanUsuarios.usuarios.telefono}" title="Telefono" required="true" requiredMessage="campo obligatorio" validatorMessage="el numero esta incompleto revise que si coresponda" >
<f:validateRegex pattern="^[0-9]{10}$" for="telefono"/>
</p:inputText>
<p:messages for="telefono"/>
<p:outputLabel style="font-weight:bolder" value="Pais:" for="pais" />
<p:inputText id="pais" value="#{demoBeanUsuarios.usuarios.pais}" title="Pais" required="true" requiredMessage="campo obligatorio" validatorMessage="el pais debe empezar con mayuscula" >
<f:validateRegex pattern="^[A-Z][a-z]{4,19}$" for="pais"/>
</p:inputText>
<p:messages for="pais"/>
<p:outputLabel style="font-weight:bolder" value="Estado:" for="estado" />
<p:inputText id="estado" value="#{demoBeanUsuarios.usuarios.estado}" title="Estado" required="true" requiredMessage="campo obligatorio" validatorMessage="el estado debe empezar con mayuscula" >
<f:validateRegex pattern="^[A-Z][a-z]{4,19}$" for="estado"/>
</p:inputText>
<p:messages for="estado"/>
<p:outputLabel style="font-weight:bolder" value="Municipio:" for="municipio" />
<p:inputText id="municipio" value="#{demoBeanUsuarios.usuarios.municipio}" title="Municipio" required="true" requiredMessage="campo obligatorio" validatorMessage="el municipio debe empezar con mayuscula" >
<f:validateRegex pattern="^[A-Z][a-z]{4,19}$" for="municipio"/>
</p:inputText>
<p:messages for="municipio"/>
<p:outputLabel style="font-weight:bolder" value="Localidad:" for="localidad" />
<p:inputText id="localidad" value="#{demoBeanUsuarios.usuarios.localidad}" title="Localidad" required="true" requiredMessage="campo obligatorio" validatorMessage="la localidad debe empezar con mayuscula" >
<f:validateRegex pattern="^[A-Z][a-z]{4,19}$" for="localidad"/>
</p:inputText>
<p:messages for="localidad"/>
<p:outputLabel style="font-weight:bolder" value="Calle:" for="calle" />
<p:inputText id="calle" value="#{demoBeanUsuarios.usuarios.calle}" title="Calle" required="true" requiredMessage="campo obligatorio" validatorMessage="la calle debe empezar con mayuscula">
<f:validateRegex pattern="^[A-Z][a-z]{4,19}$" for="calle"/>
</p:inputText>
<p:messages for="calle"/>
<p:outputLabel style="font-weight:bolder" value="Numero:" for="numero" />
<p:inputText id="numero" value="#{demoBeanUsuarios.usuarios.numero}" title="Numero" required="true" requiredMessage="campo obligatorio">
<f:validateRegex pattern="^[0-9]+(\s[A-Z])?$" for="numero"/>
</p:inputText>
<p:messages for="numero"/>
<p:outputLabel style="font-weight:bolder" value="Codigo Postal:" for="cp" />
<p:inputText id="cp" value="#{demoBeanUsuarios.usuarios.cp}" title="Cp" required="true" requiredMessage="campo obligatorio" validatorMessage="el codigo posta es incorrecto revisaelo" >
<f:validateRegex pattern="^[0-9]{4}$" for="cp"/>
</p:inputText>
<p:messages for="cp" style=""/>
<p:outputLabel style="font-weight:bolder;" value="Rol:" for="rolId" />
<p:selectOneMenu id="rolId" value="#{demoBeanUsuarios.usuarios.rolId}" converter="selectOneMenuConverter" >
<f:selectItems value="#{demoBeanRol.all}" var="item" itemLabel="#{item.rol}" itemValue="#{item}"/>
</p:selectOneMenu>
</h:panelGrid>
<p:commandButton action="usuariosLista.xhtml" ajax="false" icon="pi pi-times"
immediate="true" update="grid, formtabla:tabla, growl"
style="background-color: red; border-color:red; float: right;"/>
<p:commandButton actionListener="#{demoBeanUsuarios.agregar()}" update="grid, formtabla:tabla, growl"
ajax="true" rendered="#{demoBeanUsuarios.nuevo}" icon="pi pi-check"
style="margin-right: 10px; background-color:green; border-color:green; float: right; " />
<p:commandButton actionListener="#{demoBeanUsuarios.editar()}" update="grid, formtabla:tabla, growl"
ajax="true" rendered="#{!demoBeanUsuarios.nuevo}" icon="pi pi-check"
style="margin-right: 10px; background-color:green; border-color:green; float: right;" />
</h:form>
</p:dialog>
<!-- eliminiar''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' -->
<p:dialog id="dialog2" widgetVar="dlg2" width="800" height="500" modal="true" >
<h:form>
<h1 style="text-align: center; background-color: #036FAB; padding: 20px; color: #FFFFFF; font-size: 2em; margin-bottom: 10px;">
<h:outputText value="Eliminar"/></h1>
<div>
<h:panelGrid id="grid" columns="4" style="width: 100%" cellpadding="20">
<h:outputText value="Id:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.id}" title="Id"/>
<h:outputText value="Nombre:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.nombre}" title="Nombre"/>
<h:outputText value="Primer Apellido:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.apellidop}" title="Apellidop"/>
<h:outputText value="Segundo Apellido:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.apellidom}" title="Apellidom"/>
<h:outputText value="Genero:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.genero}" title="Genero"/>
<h:outputText value="Fechanacimiento:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.fechanacimiento}" title="Fechanacimiento">
<f:convertDateTime pattern="MM/dd/yyyy" />
</h:outputText>
<h:outputText value="Usuario:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.usuario}" title="Usuario"/>
<h:outputText value="Contrasenia:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.contrasenia}" title="Contrasenia"/>
<h:outputText value="Correo:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.correo}" title="Correo"/>
<h:outputText value="Telefono:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.telefono}" title="Telefono"/>
<h:outputText value="Pais:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.pais}" title="Pais"/>
<h:outputText value="Estado:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.estado}" title="Estado"/>
<h:outputText value="Municipio:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.municipio}" title="Municipio"/>
<h:outputText value="Localidad:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.localidad}" title="Localidad"/>
<h:outputText value="Calle:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.calle}" title="Calle"/>
<h:outputText value="Numero:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.numero}" title="Numero"/>
<h:outputText value="Codigo Postal:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.cp}" title="Cp"/>
<h:outputText value="Rol:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.rolId.rol}" title="RolId"/>
</h:panelGrid>
</div>
<div style="margin-top: 20px;">
<p:commandButton action="usuariosLista.xhtml" immediate="true" ajax="false" icon="pi pi-times"
style="margin-left: 10px; background-color:red; border-color:red; float: right;"/>
<p:commandButton action="usuariosLista.xhtml" actionListener="#{demoBeanUsuarios.eliminar()}"
ajax="false" icon="pi pi-check"
style=" background-color:green; border-color:green; float: right;"/>
</div>
</h:form>
</p:dialog>
<!-- info''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' -->
<p:dialog id="dialog3" widgetVar="dlg3" width="800" height="500" modal="true" >
<h:form>
<h1 style="text-align: center; background-color: #036FAB; padding: 20px; color: #FFFFFF; font-size: 2em; margin-bottom: 10px;">
<h:outputText value="Detalles"/></h1>
<div>
<h:panelGrid id="grid" columns="4" style="width: 100%" cellpadding="20">
<h:outputText value="Id:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.id}" title="Id"/>
<h:outputText value="Nombre:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.nombre}" title="Nombre"/>
<h:outputText value="Primer Apellido:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.apellidop}" title="Apellidop"/>
<h:outputText value="Segundo Apellido:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.apellidom}" title="Apellidom"/>
<h:outputText value="Genero:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.genero}" title="Genero"/>
<h:outputText value="Fechanacimiento:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.fechanacimiento}" title="Fechanacimiento">
<f:convertDateTime pattern="MM/dd/yyyy" />
</h:outputText>
<h:outputText value="Usuario:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.usuario}" title="Usuario"/>
<h:outputText value="Contrasenia:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.contrasenia}" title="Contrasenia"/>
<h:outputText value="Correo:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.correo}" title="Correo"/>
<h:outputText value="Telefono:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.telefono}" title="Telefono"/>
<h:outputText value="Pais:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.pais}" title="Pais"/>
<h:outputText value="Estado:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.estado}" title="Estado"/>
<h:outputText value="Municipio:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.municipio}" title="Municipio"/>
<h:outputText value="Localidad:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.localidad}" title="Localidad"/>
<h:outputText value="Calle:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.calle}" title="Calle"/>
<h:outputText value="Numero:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.numero}" title="Numero"/>
<h:outputText value="Cp:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.cp}" title="Cp"/>
<h:outputText value="RolId:" style=" font-weight:bolder"/>
<h:outputText value="#{demoBeanUsuarios.usuarios.rolId.rol}" title="RolId"/>
</h:panelGrid>
</div>
<div style="margin-top: 20px;">
<p:commandButton action="usuariosLista.xhtml" icon="pi pi-arrow-left"
style="margin-left: 10px; border-color:red; float: right;" ajax="false" immediate="true"/>
</div>
</h:form>
</p:dialog>
</f:view>
</ui:define> </ui:define>

Loading…
Cancel
Save