Subversion Repositories Integrator Subversion

Rev

Rev 195 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
106 espaco 1
package br.com.ec.domain.dto;
2
 
3
import javax.persistence.Transient;
4
 
5
import br.com.ec.controller.util.UtilBean;
195 espaco 6
import br.com.ec.core.util.VerificadorUtil;
106 espaco 7
import br.com.ec.domain.model.Produto;
8
import br.com.ec.domain.model.Usuario;
9
import br.com.ec.domain.model.tipos.TipoProduto;
10
import br.com.ec.domain.util.CodigoBarraEAN;
11
 
12
public class TransferenciaProdutoDTO {
13
 
14
        private Long sequencialTransferencia;
15
        private Long sequencialProduto;
16
 
17
        private Integer quantidade;
18
        private Integer estoqueAtual = 0;
19
        private String codigoProduto;
20
        private String descricaoCompletaProduto;
21
        private String generoProduto;
22
        private String tipoProduto;
23
        private Boolean recebido;
24
        private String observacao;
25
        private String nomeUsuarioEntrada;
26
        private String nomeUsuarioSaida;
27
        private Usuario usuarioEntrada;
28
 
29
        public Long getSequencialTransferencia() {
30
                return sequencialTransferencia;
31
        }
32
        public void setSequencialTransferencia(Long sequencialTransferencia) {
33
                this.sequencialTransferencia = sequencialTransferencia;
34
        }
35
 
36
        public Long getSequencialProduto() {
37
                return sequencialProduto;
38
        }
39
        public void setSequencialProduto(Long sequencialProduto) {
40
                this.sequencialProduto = sequencialProduto;
41
        }
42
 
43
        public Integer getQuantidade() {
44
                return quantidade;
45
        }
46
        public void setQuantidade(Integer quantidade) {
47
                this.quantidade = quantidade;
48
        }
49
 
50
        public Integer getEstoqueAtual() {
51
                return estoqueAtual;
52
        }
53
        public void setEstoqueAtual(Integer estoqueAtual) {
54
                this.estoqueAtual = estoqueAtual;
55
        }
56
 
57
        public String getCodigoProduto() {
58
                return codigoProduto;
59
        }
60
        public void setCodigoProduto(String codigoProduto) {
61
                this.codigoProduto = codigoProduto;
62
        }
63
 
64
        public String getDescricaoCompletaProduto() {
65
                return descricaoCompletaProduto;
66
        }
67
        public void setDescricaoCompletaProduto(String descricaoCompletaProduto) {
68
                this.descricaoCompletaProduto = descricaoCompletaProduto;
69
        }
70
 
71
        public String getGeneroProduto() {
72
                return generoProduto;
73
        }
74
        public void setGeneroProduto(String generoProduto) {
75
                this.generoProduto = generoProduto;
76
        }
77
 
78
        public String getTipoProduto() {
79
                return tipoProduto;
80
        }
81
        public void setTipoProduto(String tipoProduto) {
82
                this.tipoProduto = tipoProduto;
83
        }
235 espaco 84
        public Boolean ehTipoProduto(String tipoProduto) {
85
                return TipoProduto.parse(tipoProduto).getValor().equals(getTipoProduto());
106 espaco 86
        }
87
 
88
        public Boolean getRecebido() {
89
                return recebido;
90
        }
91
        public void setRecebido(Boolean recebido) {
92
                this.recebido = recebido;
93
        }
94
 
95
        public String getObservacao() {
96
                return observacao;
97
        }
98
        public void setObservacao(String observacao) {
99
                this.observacao = observacao;
100
        }
101
        public Boolean contemAlertas() {
102
                return VerificadorUtil.naoEstaNuloOuVazio(getObservacao());
103
        }
104
 
105
        public String getNomeUsuarioEntrada() {
106
                return nomeUsuarioEntrada;
107
        }
108
        public void setNomeUsuarioEntrada(String nomeUsuarioEntrada) {
109
                this.nomeUsuarioEntrada = nomeUsuarioEntrada;
110
        }
111
 
112
        public String getNomeUsuarioSaida() {
113
                return nomeUsuarioSaida;
114
        }
115
        public void setNomeUsuarioSaida(String nomeUsuarioSaida) {
116
                this.nomeUsuarioSaida = nomeUsuarioSaida;
117
        }
118
 
119
        public Usuario getUsuarioEntrada() {
120
                return usuarioEntrada;
121
        }
122
        public void setUsuarioEntrada(Usuario usuarioEntrada) {
123
                this.usuarioEntrada = usuarioEntrada;
124
        }
125
 
126
        @Transient
127
        public String getCodigoProdutoPadrao() {
128
                try {
129
                        return VerificadorUtil.naoEstaNulo(codigoProduto) ? String.format("%06d", new Long(codigoProduto.trim())) : "";
130
                } catch (Exception e) {
131
                        return "";
132
                }
133
        }
134
 
135
        @Transient
136
        public Boolean verificarSeCodigoEhIgual(String codigoProduto) {
137
                if (CodigoBarraEAN.validarCodigoBarras(codigoProduto)) {
138
                        return this.getCodigoProdutoPadrao().equals(CodigoBarraEAN.retornarCodigoDoCodigoBarras(codigoProduto));
139
                } else {
140
                        return this.getCodigoProdutoPadrao().equals(UtilBean.padraoCodigoProduto(codigoProduto));
141
                }
142
        }
143
 
144
        @Override
145
        public int hashCode() {
146
                final int prime = 31;
147
                int result = 1;
148
                result = prime * result + ((sequencialProduto == null) ? 0 : sequencialProduto.hashCode());
149
                return result;
150
        }
151
 
152
        @Override
153
        public boolean equals(Object obj) {
154
                if (this == obj)
155
                        return true;
156
                if (obj == null)
157
                        return false;
158
                if (getClass() != obj.getClass())
159
                        return false;
160
                TransferenciaProdutoDTO other = (TransferenciaProdutoDTO) obj;
161
                if (sequencialProduto == null) {
162
                        if (other.sequencialProduto != null)
163
                                return false;
164
                } else if (!sequencialProduto.equals(other.sequencialProduto))
165
                        return false;
166
                return true;
167
        }
168
 
169
        public Produto retornarProdutoParaFoto() {
170
                Produto produto = new Produto();
115 espaco 171
                produto.setSequencial(getSequencialProduto());
106 espaco 172
                produto.setCodigo(getCodigoProduto());
115 espaco 173
                produto.setDescricao(getDescricaoCompletaProduto());
174
                produto.setGenero(getGeneroProduto());
175
                produto.setTipo(getTipoProduto());
106 espaco 176
                return produto;
177
        }
178
 
179
}