ModelUzyTUsuario.java 5.29 KB
Newer Older
1
package ec.edu.espe.movilidad.MovilidadWS.Model;
2 3 4


import com.fasterxml.jackson.annotation.JsonIgnore;
5 6
import lombok.Getter;
import lombok.Setter;
7 8

import javax.persistence.*;
9 10
import javax.validation.constraints.Size;
import java.time.LocalDate;
11
import java.util.LinkedHashSet;
12 13
import java.util.Set;

14 15
@Getter
@Setter
16 17 18 19 20
@Entity
@Table(name = "uzytusuario", schema = "UTIC1")
public class ModelUzyTUsuario {

    @Id
21 22
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "uzytusuario_id_seq")
    @SequenceGenerator(name = "uzytusuario_id_seq", sequenceName = "SEQ_UZYTUSUARIO", allocationSize = 1)
23 24 25
    @Column(name = "uzytusuario_id")
    private Long uzytusuario_id;

26 27
    @Size(max = 20)
    @Column(name = "uzytusuario_cc", length = 20)
28
    private String uzytusuario_cc;
29 30
    @Size(max = 100)
    @Column(name = "uzytusuario_clave", length = 100)
31
    private String uzytusuario_clave;
32 33
    @Size(max = 60)
    @Column(name = "uzytusuario_nombres", length = 60)
34
    private String uzytusuario_nombres;
35 36
    @Size(max = 60)
    @Column(name = "uzytusuario_apellidos", nullable = false, length = 60)
37
    private String uzytusuario_apellidos;
38 39
    @Size(max = 100)
    @Column(name = "uzytusuario_email", length = 100)
40 41 42
    private String uzytusuario_email;

    @Column(name = "uzytusuario_fecharegistro")
43 44 45
    private LocalDate uzytusuario_fecharegistro;
    @Size(max = 1)
    @Column(name = "uzytusuario_estado", length = 1)
46 47 48 49 50 51 52
    private String uzytusuario_estado;

    @Column(name = "uzytusuario_mail_sinformul")
    private Integer uzytusuario_mail_sinformul;

    @Column(name = "uzytusuario_mail_incompletos")
    private Integer uzytusuario_mail_incompletos;
53 54
    @Size(max = 30)
    @Column(name = "uzytusuario_tipo_doc", length = 30)
55
    private String uzytusuario_tipo_doc;
56 57
    @Size(max = 30)
    @Column(name = "uzytusuario_cod_senescyt", length = 30)
58 59 60
    private String uzytusuario_cod_senescyt;

    @Column(name = "uzytusuario_fecha_act_micuenta")
61 62 63
    private LocalDate uzytusuario_fecha_act_micuenta;
    @Size(max = 6)
    @Column(name = "uzytusuario_hexadecimalid", length = 6)
64
    private String uzytusuario_hexadecimalid;
65 66
    @Size(max = 25)
    @Column(name = "uzytusuario_tratamiento", length = 25)
67 68 69 70
    private String uzytusuario_tratamiento;

    @Column(name = "uzytusuario_modificacion")
    private Integer uzytusuario_modificacion;
71 72
    @Size(max = 1)
    @Column(name = "uzytusuario_tipo_user", length = 1)
73
    private String uzytusuario_tipo_user;
74 75
    @Size(max = 100)
    @Column(name = "uzytusuario_email_institucional", length = 100)
76
    private String uzytusuario_email_institucional;
77 78
    @Size(max = 10)
    @Column(name = "uzytusuario_telefono_fijo", length = 10)
79
    private String uzytusuario_telefono_fijo;
80 81
    @Size(max = 10)
    @Column(name = "uzytusuario_telefono_celular", length = 10)
82
    private String uzytusuario_telefono_celular;
83 84
    @Size(max = 9)
    @Column(name = "spriden_id", length = 9)
85 86 87 88
    private String spriden_id;

    @Column(name = "spriden_pidm")
    private Integer spriden_pidm;
89 90
    @Size(max = 200)
    @Column(name = "uzytusuario_clave_tmp", length = 200)
91
    private String uzytusuario_clave_tmp;
92 93
    @Size(max = 20)
    @Column(name = "spbpers_name_prefix", length = 20)
94 95
    private String spbpers_name_prefix;

96 97
    @Size(max = 1)
    @Column(name = "spbpers_sex", length = 1)
98
    private String spbpers_sex;
99 100
    @Size(max = 40)
    @Column(name = "uzytusuario_campus", length = 40)
101
    private String uzytusuario_campus;
102 103
    @Size(max = 20)
    @Column(name = "uzytusuario_departamento", length = 20)
104
    private String uzytusuario_departamento;
105 106
    @Size(max = 250)
    @Column(name = "uzytusuario_foto", length = 250)
107
    private String uzytusuario_foto;
108 109 110 111 112 113
    @Size(max = 3)
    @Column(name = "uzytusuario_CAMPUS_CODE", length = 3)
    private String uzytusuario_CAMPUS_CODE;
    @Size(max = 4)
    @Column(name = "uzytusuario_DEPARTAMENTO_CODE", length = 4)
    private String uzytusuario_DEPARTAMENTO_CODE;
114

115 116 117
    @Size(max = 2)
    @Column(name = "uzytusuario_CAMPUS_ABREV_CODE", length = 2)
    private String uzytusuario_CAMPUS_ABREV_CODE;
118

119 120
    @Size(max = 2)
    @Column(name = "uzytusuario_DPTO_ABREV_CODE", length = 2)
121 122 123
    private String uzytusuario_DPTO_ABREV_CODE;


124 125 126
    //RELACIÓN CON LA TABLA ANEXOSPR-TABLA HIJA

    @JsonIgnore
127
    @OneToMany(mappedBy = "uzytusuario")
128
    private Set<ModelUzyTavAnexoSPR> modelUzyTavAnexoSPRSet = new LinkedHashSet<>();
129 130 131 132

    //RELACIÓN CON LA TABLA COORDINADOR_VINCULACIÓN- TABLA HIJA

    @JsonIgnore
133
    @OneToMany(mappedBy = "uzytusuario")
134
    private Set<ModelUzyTavCoordinadorVincu> modelUzyTavCoordinadorVincuSet = new LinkedHashSet<>();
135 136 137

    //RELACIÓN CON LA TABLA RESPONSABLEPROG MEDIANTE EL CAMPO uzytusuario_id_docente-TABLA HIJA,
    @JsonIgnore
138
    @OneToMany(mappedBy = "iddocente")
139
    private Set<ModelUzyTavResponsableProg> modelUzyTavResponsableProgSet = new LinkedHashSet<>();
140 141 142 143
    //RELACIÓN CON PROYECTO-TABLA HIJA

    @JsonIgnore
    @OneToMany(mappedBy = "uzytusuario")
144
    private Set<ModelUzyTavProyec> modelUzyTavProyecSet = new LinkedHashSet<>();
145

146
    //RELACIÓN CON PERFIL
147 148

    @ManyToMany(fetch = FetchType.EAGER)
149 150 151 152 153
    @JoinTable(name = "UZYTPERFIL_USUARIO",
            joinColumns = @JoinColumn(name = "UZYTUSUARIO_ID"),
            inverseJoinColumns = @JoinColumn(name = "UZYTPERFIL_ID"))
    private Set<ModelUzyTPerfil> uzytperfils = new LinkedHashSet<>();

154
}