Experiencia.java 2.61 KB
Newer Older
1 2
package com.roshka.modelo;

3 4 5
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
6
import java.util.List;
7 8 9 10 11

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
12 13 14

import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonManagedReference;
15
import com.roshka.utils.Helper;
16

17 18
import lombok.Data;

19
import javax.persistence.*;
20 21 22
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Past;
23

24
@Entity @Data
25
@Table(name = "experiencia")
26
public class Experiencia {
27
    @Id
28
    @GeneratedValue(strategy = GenerationType.IDENTITY)
29
    private long id;
30

31
    @Column(name = "institucion")
32
    @NotBlank(message = "Este campo no puede estar vacio")
33
    private String institucion;
34

35
    @Column(name = "fecha_desde")
36 37
    @Past(message = "Este campo no puede estar en el futuro")
    @NotNull(message = "Este campo no puede estar vacio")
38
    private Date fechaDesde;
39

40 41
    @Column(name = "fecha_hasta")
    private Date fechaHasta;
42 43 44 45
    @Column(name = "nombre_referencia")
    private String nombreReferencia;
    @Column(name = "telefono_referencia")
    private String telefonoReferencia;
46
    @Column(name = "cargo")
47
    @NotBlank(message = "Este campo no puede estar vacio")
48
    private String cargo;
49

50 51
    @Column(name="motivo_salida")
    private String motivoSalida;
52

53
    @JsonBackReference(value = "experiencia-postulante")
54
    @ManyToOne(optional = false)
55 56
    @JoinColumn
    private Postulante postulante;
57

58 59
    @Column(name = "tipo_experiencia")
    @NotNull
60
    private TipoExperiencia tipoExperiencia;
61 62 63 64 65 66 67 68 69 70 71 72

    @Column(name = "descripcion")
    @NotBlank
    private String descripcion;

    public Date getFechaDesde() {
        return fechaDesde;
    }
    public TipoExperiencia getTipoExperiencia() {
        return tipoExperiencia;
    }
    
73

74 75 76
    public void setTipoExperiencia(TipoExperiencia tipoExperiencia) {
        this.tipoExperiencia = tipoExperiencia;
    }
77
    public void setFechaDesde(String fechaDesde) {
78
        this.fechaDesde = Helper.convertirFecha(fechaDesde);
79
    }
80 81 82 83 84 85
    public Date getFechaHasta() {
        return fechaHasta;
    }
    public void setFechaHasta(Date fechaHasta) {
        this.fechaHasta = fechaHasta;
    }
86
    public void setFechaHasta(String fechaHasta) {
87
        this.fechaHasta = Helper.convertirFecha(fechaHasta);
88
    }
89 90 91 92 93 94
    public void setPostulante(Postulante postulante) {
        this.postulante = postulante;
    }
    public Postulante getPostulante() {
        return postulante;
    }
95

96
}