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.scs.model;
2
 
3
import java.io.Serializable;
4
 
5
import javax.persistence.EmbeddedId;
6
import javax.persistence.Entity;
7
import javax.persistence.JoinColumn;
8
import javax.persistence.ManyToOne;
9
import javax.persistence.MapsId;
10
import javax.persistence.Table;
11
 
12
import org.hibernate.annotations.ForeignKey;
13
 
14
import br.gov.al.saude.framework.core.util.VerificadorUtil;
15
import br.gov.al.saude.scg.model.view.PessoaFisicaView;
16
 
17
@Entity
18
@Table(name = "scs_turma_representante", schema = "sc_scs")
19
public class TurmaRepresentante implements Serializable {
20
 
21
        private static final long serialVersionUID = 1L;
22
 
23
        private TurmaRepresentanteId turmaRepresentanteId = new TurmaRepresentanteId();
24
 
25
        private Turma turma;
26
        private PessoaFisicaView pessoa;
27
 
28
        @EmbeddedId
29
        public TurmaRepresentanteId getTurmaRepresentanteId() {
30
                return turmaRepresentanteId;
31
        }
32
        public void setTurmaRepresentanteId(TurmaRepresentanteId turmaRepresentanteId) {
33
                this.turmaRepresentanteId = turmaRepresentanteId;
34
        }
35
 
36
        @MapsId("sequencialTurma")
37
        @ManyToOne
38
        @ForeignKey(name = "fk_turmarepresen_turma")
39
        @JoinColumn(name = "seq_turma", referencedColumnName = "seq_turma", nullable = false, updatable = false, insertable = false)
40
        public Turma getTurma() {
41
                return turma;
42
        }
43
 
44
        public void setTurma(Turma turma) {
45
                if(VerificadorUtil.naoEstaNulo(turma)){
46
                        getTurmaRepresentanteId().setSequencialTurma(turma.getSequencial());
47
                }
48
                this.turma = turma;
49
        }
50
 
51
        @ManyToOne
52
        @ForeignKey(name = "fk_turmarepresen_pessoafisica")
53
        @JoinColumn(name = "seq_pessoa", referencedColumnName = "seq_pessoa", insertable = false, updatable = false, nullable = false)
54
        public PessoaFisicaView getPessoa() {
55
                return pessoa;
56
        }
57
 
58
        public void setPessoa(PessoaFisicaView pessoa) {
59
                if(VerificadorUtil.naoEstaNulo(pessoa) && VerificadorUtil.naoEstaNulo(pessoa.getSequencialPessoa())){
60
                        turmaRepresentanteId.setSequencialPessoa(pessoa.getSequencialPessoa());
61
                }
62
                this.pessoa = pessoa;
63
        }
64
 
65
        @Override
66
        public int hashCode() {
67
                final int prime = 31;
68
                int result = 1;
69
                result = prime * result
70
                                + ((turmaRepresentanteId == null) ? 0 : turmaRepresentanteId.hashCode());
71
                return result;
72
        }
73
 
74
        @Override
75
        public boolean equals(Object obj) {
76
                if (this == obj)
77
                        return true;
78
                if (obj == null)
79
                        return false;
80
                if (getClass() != obj.getClass())
81
                        return false;
82
                TurmaRepresentante other = (TurmaRepresentante) obj;
83
                if (turmaRepresentanteId == null) {
84
                        if (other.turmaRepresentanteId != null)
85
                                return false;
86
                } else if (!turmaRepresentanteId.equals(other.turmaRepresentanteId))
87
                        return false;
88
                return true;
89
        }
90
 
91
}