datasurvey/src/main/java/org/datasurvey/domain/UsuarioEncuesta.java

158 lines
4.0 KiB
Java

package org.datasurvey.domain;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import java.io.Serializable;
import java.time.ZonedDateTime;
import javax.persistence.*;
import javax.validation.constraints.*;
import org.datasurvey.domain.enumeration.EstadoColaborador;
import org.datasurvey.domain.enumeration.RolColaborador;
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
/**
* A UsuarioEncuesta.
*/
@Entity
@Table(name = "usuario_encuesta")
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
public class UsuarioEncuesta implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@NotNull
@Enumerated(EnumType.STRING)
@Column(name = "rol", nullable = false)
private RolColaborador rol;
@NotNull
@Enumerated(EnumType.STRING)
@Column(name = "estado", nullable = false)
private EstadoColaborador estado;
@NotNull
@Column(name = "fecha_agregado", nullable = false)
private ZonedDateTime fechaAgregado;
@ManyToOne
@JsonIgnoreProperties(value = { "user", "encuestas", "usuarioEncuestas", "plantillas" }, allowSetters = true)
private UsuarioExtra usuarioExtra;
@ManyToOne
@JsonIgnoreProperties(value = { "usuarioEncuestas", "usuarioExtra" }, allowSetters = true)
private Encuesta encuesta;
// jhipster-needle-entity-add-field - JHipster will add fields here
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public UsuarioEncuesta id(Long id) {
this.id = id;
return this;
}
public RolColaborador getRol() {
return this.rol;
}
public UsuarioEncuesta rol(RolColaborador rol) {
this.rol = rol;
return this;
}
public void setRol(RolColaborador rol) {
this.rol = rol;
}
public EstadoColaborador getEstado() {
return this.estado;
}
public UsuarioEncuesta estado(EstadoColaborador estado) {
this.estado = estado;
return this;
}
public void setEstado(EstadoColaborador estado) {
this.estado = estado;
}
public ZonedDateTime getFechaAgregado() {
return this.fechaAgregado;
}
public UsuarioEncuesta fechaAgregado(ZonedDateTime fechaAgregado) {
this.fechaAgregado = fechaAgregado;
return this;
}
public void setFechaAgregado(ZonedDateTime fechaAgregado) {
this.fechaAgregado = fechaAgregado;
}
public UsuarioExtra getUsuarioExtra() {
return this.usuarioExtra;
}
public UsuarioEncuesta usuarioExtra(UsuarioExtra usuarioExtra) {
this.setUsuarioExtra(usuarioExtra);
return this;
}
public void setUsuarioExtra(UsuarioExtra usuarioExtra) {
this.usuarioExtra = usuarioExtra;
}
public Encuesta getEncuesta() {
return this.encuesta;
}
public UsuarioEncuesta encuesta(Encuesta encuesta) {
this.setEncuesta(encuesta);
return this;
}
public void setEncuesta(Encuesta encuesta) {
this.encuesta = encuesta;
}
// jhipster-needle-entity-add-getters-setters - JHipster will add getters and setters here
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (!(o instanceof UsuarioEncuesta)) {
return false;
}
return id != null && id.equals(((UsuarioEncuesta) o).id);
}
@Override
public int hashCode() {
// see https://vladmihalcea.com/how-to-implement-equals-and-hashcode-using-the-jpa-entity-identifier/
return getClass().hashCode();
}
// prettier-ignore
@Override
public String toString() {
return "UsuarioEncuesta{" +
"id=" + getId() +
", rol='" + getRol() + "'" +
", estado='" + getEstado() + "'" +
", fechaAgregado='" + getFechaAgregado() + "'" +
"}";
}
}