Subversion Repositories Integrator Subversion

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 espaco 1
package br.edu.cesmac.sic.core.domain.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.JoinColumn;
11
import javax.persistence.ManyToOne;
12
import javax.persistence.Table;
13
import javax.validation.constraints.NotNull;
14
 
15
import org.hibernate.envers.AuditTable;
16
import org.hibernate.envers.Audited;
17
import org.hibernate.envers.RelationTargetAuditMode;
18
import org.hibernate.validator.constraints.NotEmpty;
19
 
20
import br.edu.cesmac.core.interfaces.Alterar;
21
import br.edu.cesmac.core.interfaces.Cadastrar;
22
import br.edu.cesmac.scf.shared.views.BancoView;
23
 
24
@Audited
25
@AuditTable(value="sic_aud_conta_bancaria", schema="admsic001")
26
@Entity
27
@Table(name="sic_conta_bancaria", schema="admsic001")
28
public class ContaBancaria implements Serializable {
29
 
30
        private static final long serialVersionUID = 1L;
31
 
32
        private Long sequencial;
33
        private BancoView banco;
34
        private String numeroAgencia;
35
        private String numeroDigitoAgencia;
36
        private String numeroContaBancaria;
37
        private String numeroDigitoContaBancaria;
38
 
39
        @Id
40
        @GeneratedValue(strategy=GenerationType.AUTO)
41
        @Column(name="seq_conta_bancaria", nullable=false)
42
        public Long getSequencial() {
43
                return sequencial;
44
        }
45
 
46
        public void setSequencial(Long sequencial) {
47
                this.sequencial = sequencial;
48
        }
49
 
50
        @Audited(targetAuditMode = RelationTargetAuditMode.NOT_AUDITED)
51
        @ManyToOne
52
        @NotNull(message="Obrigatório informar o banco", groups={Cadastrar.class, Alterar.class})
53
        @JoinColumn(name="cod_banco", referencedColumnName="cod_banco")
54
        public BancoView getBanco() {
55
                return banco;
56
        }
57
 
58
        public void setBanco(BancoView banco) {
59
                this.banco = banco;
60
        }
61
 
62
        @NotNull(message="Obrigatório informar o número da agência", groups={Cadastrar.class, Alterar.class})
63
        @NotEmpty(message="Obrigatório informar o número da agência", groups={Cadastrar.class, Alterar.class})
64
        @Column(name="num_agencia", nullable=false)
65
        public String getNumeroAgencia() {
66
                return numeroAgencia;
67
        }
68
 
69
        public void setNumeroAgencia(String numeroAgencia) {
70
                this.numeroAgencia = numeroAgencia;
71
        }
72
 
73
        @NotNull(message="Obrigatório informar o número dígito da agência", groups={Cadastrar.class, Alterar.class})
74
        @NotEmpty(message="Obrigatório informar o número dígito da agência", groups={Cadastrar.class, Alterar.class})
75
        @Column(name="num_digito_agencia")
76
        public String getNumeroDigitoAgencia() {
77
                return numeroDigitoAgencia;
78
        }
79
 
80
        public void setNumeroDigitoAgencia(String numeroDigitoAgencia) {
81
                this.numeroDigitoAgencia = numeroDigitoAgencia;
82
        }
83
 
84
        @NotNull(message="Obrigatório informar o número da conta bancária", groups={Cadastrar.class, Alterar.class})
85
        @NotEmpty(message="Obrigatório informar o número da conta bancária", groups={Cadastrar.class, Alterar.class})
86
        @Column(name="num_conta_bancaria", nullable=false)
87
        public String getNumeroContaBancaria() {
88
                return numeroContaBancaria;
89
        }
90
 
91
        public void setNumeroContaBancaria(String numeroContaBancaria) {
92
                this.numeroContaBancaria = numeroContaBancaria;
93
        }
94
 
95
        @NotNull(message="Obrigatório informar o número dígito da conta bancária", groups={Cadastrar.class, Alterar.class})
96
        @NotEmpty(message="Obrigatório informar o número dígito da conta bancária", groups={Cadastrar.class, Alterar.class})
97
        @Column(name="num_digito_conta_bancaria", nullable=false)
98
        public String getNumeroDigitoContaBancaria() {
99
                return numeroDigitoContaBancaria;
100
        }
101
 
102
        public void setNumeroDigitoContaBancaria(String numeroDigitoContaBancaria) {
103
                this.numeroDigitoContaBancaria = numeroDigitoContaBancaria;
104
        }
105
 
106
        @Override
107
        public int hashCode() {
108
                final int prime = 31;
109
                int result = 1;
110
                result = prime * result + ((sequencial == null) ? 0 : sequencial.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
                ContaBancaria other = (ContaBancaria) obj;
123
                if (sequencial == null) {
124
                        if (other.sequencial != null)
125
                                return false;
126
                } else if (!sequencial.equals(other.sequencial))
127
                        return false;
128
                return true;
129
        }
130
 
131
}