Subversion Repositories Integrator Subversion

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 espaco 1
package br.gov.al.saude.rhd.model;
2
 
3
import java.io.Serializable;
4
 
5
import javax.persistence.Column;
6
import javax.persistence.Entity;
7
import javax.persistence.GeneratedValue;
8
import javax.persistence.GenerationType;
9
import javax.persistence.Id;
10
import javax.persistence.SequenceGenerator;
11
import javax.persistence.Table;
12
import javax.persistence.Transient;
13
 
14
import br.gov.al.saude.rhd.tipo.TipoQuestao;
15
 
16
@Entity
17
@Table(name = "rhd_questao_avaliadesemp", schema = "sc_rhd")
18
public class QuestaoAvaliacaoDesempenho implements Serializable, Comparable<QuestaoAvaliacaoDesempenho> {
19
 
20
        private static final long serialVersionUID = 1L;
21
        private Long sequencial;
22
        private String descricao;
23
        private String tipoQuestao;
24
        private String tipoAvaliacao;
25
        private Integer numeroQuestao;
26
        private AvaliacaoDesempenho avaliacaoDesempenho;
27
 
28
        public QuestaoAvaliacaoDesempenho(Long sequencial, String descricao, String tipoQuestao, String tipoAvaliacao, AvaliacaoDesempenho avaliacaoDesempenho) {
29
                super();
30
                this.sequencial = sequencial;
31
                this.descricao = descricao;
32
                this.tipoQuestao = tipoQuestao;
33
                this.tipoAvaliacao = tipoAvaliacao;
34
                this.avaliacaoDesempenho = avaliacaoDesempenho;
35
        }
36
 
37
        public QuestaoAvaliacaoDesempenho() {}
38
 
39
        @Id
40
        @Column(name="seq_questao_avaliadesemp", nullable=false)
41
        @GeneratedValue(generator = "QUESTAO_AVALIACAODESEMP_GENERATOR", strategy = GenerationType.SEQUENCE)
42
        @SequenceGenerator(name = "QUESTAO_AVALIACAODESEMP_GENERATOR", sequenceName = "sq_questaavalia", initialValue = 1, allocationSize = 1)
43
        public Long getSequencial() {
44
                return sequencial;
45
        }
46
 
47
        public void setSequencial(Long sequencial) {
48
                this.sequencial = sequencial;
49
        }
50
 
51
        @Column(name="dsc_questao_avaliadesemp")
52
        public String getDescricao() {
53
                return descricao;
54
        }
55
 
56
        public void setDescricao(String descricao) {
57
                this.descricao = descricao;
58
        }
59
 
60
        @Column(name="tip_questao")
61
        public String getTipoQuestao() {
62
                return tipoQuestao;
63
        }
64
 
65
        public void setTipoQuestao(String tipoQuestao) {
66
                this.tipoQuestao = tipoQuestao;
67
        }
68
 
69
        @Column(name="tip_avaliacao_desempenho")
70
        public String getTipoAvaliacao() {
71
                return tipoAvaliacao;
72
        }
73
 
74
        public void setTipoAvaliacao(String tipoAvaliacao) {
75
                this.tipoAvaliacao = tipoAvaliacao;
76
        }
77
 
78
        @Column(name="num_questao")
79
        public Integer getNumeroQuestao() {
80
                return numeroQuestao;
81
        }
82
 
83
        public void setNumeroQuestao(Integer numeroQuestao) {
84
                this.numeroQuestao = numeroQuestao;
85
        }
86
 
87
        @Transient
88
        public AvaliacaoDesempenho getAvaliacaoDesempenho() {
89
                return avaliacaoDesempenho;
90
        }
91
 
92
        public void setAvaliacaoDesempenho(AvaliacaoDesempenho avaliacaoDesempenho) {
93
                this.avaliacaoDesempenho = avaliacaoDesempenho;
94
        }
95
 
96
        @Transient
97
        public Boolean isQuestaoAberta(){
98
                return getTipoQuestao().equals(TipoQuestao.ABERTA.getValue());
99
        }
100
 
101
        @Transient
102
        public Boolean isQuestaoMultiplaEscolha(){
103
                return getTipoQuestao().equals(TipoQuestao.MULTIPLA_ESCOLHA.getValue());
104
        }
105
 
106
        @Override
107
        public int hashCode() {
108
                final int prime = 31;
109
                int result = 1;
110
                result = prime * result + ((getSequencial() == null) ? 0 : getSequencial().hashCode());
111
                return result;
112
        }
113
 
114
        @Override
115
        public boolean equals(Object obj) {
116
                if (this == obj)
117
                        return true;
118
                if (obj == null)
119
                        return false;
120
                if (getClass() != obj.getClass())
121
                        return false;
122
                Etapa other = (Etapa) obj;
123
                if (getSequencial() == null) {
124
                        if (other.getId() != null)
125
                                return false;
126
                } else if (!getSequencial().equals(other.getId()))
127
                        return false;
128
                return true;
129
        }
130
 
131
        @Override
132
        public int compareTo(QuestaoAvaliacaoDesempenho o) {
133
                return descricao.compareTo(o.descricao);
134
        }
135
 
136
}