Subversion Repositories Integrator Subversion

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
399 espaco 1
package br.com.ec.domain.model;
2
 
3
import java.io.Serializable;
4
import java.util.Date;
5
 
6
import javax.persistence.Column;
7
import javax.persistence.Entity;
8
import javax.persistence.GeneratedValue;
9
import javax.persistence.GenerationType;
10
import javax.persistence.Id;
11
import javax.persistence.JoinColumn;
12
import javax.persistence.ManyToOne;
13
import javax.persistence.SequenceGenerator;
14
import javax.persistence.Table;
15
import javax.validation.constraints.NotNull;
16
import javax.validation.constraints.Size;
17
 
18
import org.hibernate.annotations.ForeignKey;
19
 
20
import br.com.ec.core.interfaces.Alterar;
21
import br.com.ec.core.interfaces.Cadastrar;
22
import br.com.ec.core.util.StringUtil;
23
 
24
@Entity
25
@Table(name="sec_contabancaria_transferencia", schema="sc_sec")
26
public class ContaBancariaTransferencia implements Serializable {
27
 
28
        private static final long serialVersionUID = 1L;
29
 
30
        private Long sequencial;
31
        private ContaBancaria contaBancariaEntrada;
32
        private ContaBancaria contaBancariaSaida;
33
        private Date dataOperacao;
34
        private Double valor;
35
        private String observacao;
36
        private Boolean indicadorConciliado;
37
 
38
        public ContaBancariaTransferencia() {}
39
 
40
        public ContaBancariaTransferencia(Long sequencial) {
41
                this.sequencial = sequencial;
42
        }
43
 
44
        @Id
45
        @SequenceGenerator(name = "sq_contabancariatransf")
46
        @GeneratedValue(strategy = GenerationType.IDENTITY)
47
        @Column(name="seq_contabancariatransf", nullable=false)
48
        public Long getSequencial() {
49
                return sequencial;
50
        }
51
        public void setSequencial(Long sequencial) {
52
                this.sequencial = sequencial;
53
        }
54
 
55
        @ManyToOne
56
        @ForeignKey(name = "fk_contabancariatransf_contabancariaentrada")
57
        @JoinColumn(name="seq_contabancaria_entrada", referencedColumnName="seq_conta_bancaria", insertable=true, updatable=true)
58
        @NotNull(message="Obrigatório informar a conta bancária de entrada", groups={Cadastrar.class, Alterar.class})
59
        public ContaBancaria getContaBancariaEntrada() {
60
                return contaBancariaEntrada;
61
        }
62
        public void setContaBancariaEntrada(ContaBancaria contaBancariaEntrada) {
63
                this.contaBancariaEntrada = contaBancariaEntrada;
64
        }
65
 
66
        @ManyToOne
67
        @ForeignKey(name = "fk_contabancariatransf_contabancariasaida")
68
        @JoinColumn(name="seq_contabancaria_saida", referencedColumnName="seq_conta_bancaria", insertable=true, updatable=true)
69
        @NotNull(message="Obrigatório informar a conta bancária de saída", groups={Cadastrar.class, Alterar.class})
70
        public ContaBancaria getContaBancariaSaida() {
71
                return contaBancariaSaida;
72
        }
73
        public void setContaBancariaSaida(ContaBancaria contaBancariaSaida) {
74
                this.contaBancariaSaida = contaBancariaSaida;
75
        }
76
 
77
        @Column(name="dth_operacao")
78
        @NotNull(message="Obrigatório informar a data da operação", groups={Cadastrar.class, Alterar.class})
79
        public Date getDataOperacao() {
80
                return dataOperacao;
81
        }
82
        public void setDataOperacao(Date dataOperacao) {
83
                this.dataOperacao = dataOperacao;
84
        }
85
 
86
        @Column(name="val_valor")
87
        @NotNull(message="Obrigatório informar o valor da operação", groups={Cadastrar.class, Alterar.class})
88
        public Double getValor() {
89
                return valor;
90
        }
91
        public void setValor(Double valor) {
92
                this.valor = valor;
93
        }
94
 
95
        @Column(name="dsc_observacao")
96
        @Size(max = 240, message = "Limite de caracteres ultrapassado: Observação")
97
        public String getObservacao() {
98
                return observacao;
99
        }
100
        public void setObservacao(String observacao) {
101
                this.observacao = StringUtil.setarUpperCaseComTrim(observacao);
102
        }
103
 
104
        @Column(name="ind_conciliado", nullable=false)
105
        public Boolean getIndicadorConciliado() {
106
                return indicadorConciliado;
107
        }
108
        public void setIndicadorConciliado(Boolean indicadorConciliado) {
109
                this.indicadorConciliado = indicadorConciliado;
110
        }
111
 
112
        @Override
113
        public int hashCode() {
114
                final int prime = 31;
115
                int result = 1;
116
                result = prime * result
117
                                + ((sequencial == null) ? 0 : sequencial.hashCode());
118
                return result;
119
        }
120
 
121
        @Override
122
        public boolean equals(Object obj) {
123
                if (this == obj)
124
                        return true;
125
                if (obj == null)
126
                        return false;
127
                if (getClass() != obj.getClass())
128
                        return false;
129
                ContaBancariaTransferencia other = (ContaBancariaTransferencia) obj;
130
                if (sequencial == null) {
131
                        if (other.sequencial != null)
132
                                return false;
133
                } else if (!sequencial.equals(other.sequencial))
134
                        return false;
135
                return true;
136
        }
137
 
138
}