/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package mx.edu.um.mateo.rh.model;
import java.io.Serializable;
import java.util.Date;
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.ManyToOne;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Version;
import mx.edu.um.mateo.contabilidad.model.CentroCosto;
import mx.edu.um.mateo.general.model.Empresa;
import mx.edu.um.mateo.general.model.Usuario;
import org.springframework.format.annotation.DateTimeFormat;
/**
*
* @author develop
*/
@Entity
public class Jefe implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Version
private Integer version;
@ManyToOne
private CentroCosto centroCosto;
@ManyToOne
private Empleado jefe;
@ManyToOne
private Empleado subjefe;
@ManyToOne(fetch = FetchType.LAZY)
private Usuario usuarioAlta;
@DateTimeFormat(pattern = "dd/MM/yyyy")
@Temporal(TemporalType.DATE)
@Column(name = "fechaAlta")
private Date fechaAlta;
@ManyToOne
private Empresa empresa;
public Jefe() {
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Integer getVersion() {
return version;
}
public void setVersion(Integer version) {
this.version = version;
}
public CentroCosto getCentroCosto() {
return centroCosto;
}
public void setCentroCosto(CentroCosto centroCosto) {
this.centroCosto = centroCosto;
}
public Empleado getJefe() {
return jefe;
}
public void setJefe(Empleado jefe) {
this.jefe = jefe;
}
public Empleado getSubjefe() {
return subjefe;
}
public void setSubjefe(Empleado subjefe) {
this.subjefe = subjefe;
}
public Usuario getUsuarioAlta() {
return usuarioAlta;
}
public void setUsuarioAlta(Usuario usuarioAlta) {
this.usuarioAlta = usuarioAlta;
}
public Date getFechaAlta() {
return fechaAlta;
}
public void setFechaAlta(Date fechaAlta) {
this.fechaAlta = fechaAlta;
}
public Empresa getEmpresa() {
return empresa;
}
public void setEmpresa(Empresa empresa) {
this.empresa = empresa;
}
@Override
public String toString() {
return "Jefe{" + "id=" + id + ", version=" + version + ", centroCosto=" + centroCosto + ", jefe=" + jefe
+ ", subjefe=" + subjefe + ", usuarioAlta=" + usuarioAlta + ", fechaAlta=" + fechaAlta
+ ", empresa=" + empresa + '}';
}
}