/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package ec.gob.mcds.seguridades.model;
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.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.persistence.UniqueConstraint;
/**
*
* @author christian
*/
@Entity
@Table(name = "sch_seguridades.usuario", uniqueConstraints = {
@UniqueConstraint(columnNames = {"login", "password"})})
@NamedQueries({
@NamedQuery(name = "Usuario.findAll", query = "SELECT u FROM Usuario u")})
public class Usuario implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name = "usu_id", nullable = false)
private Long usuId;
@Basic(optional = false)
@Column(name = "login", nullable = false, length = 100)
private String login;
@Basic(optional = false)
@Column(name = "clave", nullable = false, length = 200)
private String clave;
@Basic(optional = false)
@Column(name = "estado", nullable = false)
private boolean estado;
@Basic(optional = false)
@Column(name = "nombres_autoriza", nullable = false, length = 200)
private String nombresAutoriza;
@Basic(optional = false)
@Column(name = "apellidos_autoriza", nullable = false, length = 200)
private String apellidosAutoriza;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "usuario", fetch = FetchType.LAZY)
private List<UsuarioRol> usuarioRolList;
@JoinColumn(name = "per_id", referencedColumnName = "per_id", nullable = false)
@ManyToOne(optional = false, fetch = FetchType.LAZY)
private Persona persona;
@Column(name="per_id",insertable=false,updatable=false)
private Long perId;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "usuario", fetch = FetchType.LAZY)
private List<Persona> personaList;
@Transient
private String cedula;
@Transient
private String apellidos;
public Usuario() {
}
public Usuario(Long usuId) {
this.usuId = usuId;
}
public Usuario(Long usuId, String login, String password, boolean estado, String nombresAutoriza, String apellidosAutoriza) {
this.usuId = usuId;
this.login = login;
this.estado = estado;
this.nombresAutoriza = nombresAutoriza;
this.apellidosAutoriza = apellidosAutoriza;
}
public Long getUsuId() {
return usuId;
}
public void setUsuId(Long usuId) {
this.usuId = usuId;
}
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
public boolean getEstado() {
return estado;
}
public void setEstado(boolean estado) {
this.estado = estado;
}
public String getNombresAutoriza() {
return nombresAutoriza;
}
public void setNombresAutoriza(String nombresAutoriza) {
this.nombresAutoriza = nombresAutoriza;
}
public String getApellidosAutoriza() {
return apellidosAutoriza;
}
public void setApellidosAutoriza(String apellidosAutoriza) {
this.apellidosAutoriza = apellidosAutoriza;
}
public List<UsuarioRol> getUsuarioRolList() {
return usuarioRolList;
}
public void setUsuarioRolList(List<UsuarioRol> usuarioRolList) {
this.usuarioRolList = usuarioRolList;
}
public Persona getPersona() {
return persona;
}
public void setPersona(Persona persona) {
this.persona = persona;
}
public List<Persona> getPersonaList() {
return personaList;
}
public void setPersonaList(List<Persona> personaList) {
this.personaList = personaList;
}
@Override
public int hashCode() {
int hash = 0;
hash += (usuId != null ? usuId.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 Usuario)) {
return false;
}
Usuario other = (Usuario) object;
if ((this.usuId == null && other.usuId != null) || (this.usuId != null && !this.usuId.equals(other.usuId))) {
return false;
}
return true;
}
@Override
public String toString() {
return "ec.gob.mcds.model.Usuario[usuId=" + usuId + "]";
}
/**
* @return the clave
*/
public String getClave() {
return clave;
}
/**
* @param clave the clave to set
*/
public void setClave(String clave) {
this.clave = clave;
}
/**
* @return the cedula
*/
public String getCedula() {
return cedula;
}
/**
* @param cedula the cedula to set
*/
public void setCedula(String cedula) {
this.cedula = cedula;
}
/**
* @return the apellidos
*/
public String getApellidos() {
return apellidos;
}
/**
* @param apellidos the apellidos to set
*/
public void setApellidos(String apellidos) {
this.apellidos = apellidos;
}
/**
* @return the perId
*/
public Long getPerId() {
return perId;
}
/**
* @param perId the perId to set
*/
public void setPerId(Long perId) {
this.perId = perId;
}
}