Subversion Repositories Integrator Subversion

Rev

Rev 182 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 espaco 1
package br.com.ec.domain.dto;
2
 
3
import java.util.Date;
4
 
5
import br.com.ec.domain.model.Fornecedor;
6
import br.com.ec.domain.model.Loja;
7
import br.com.ec.domain.model.Marca;
8
import br.com.ec.domain.model.Modelo;
9
import br.com.ec.domain.model.Produto;
10
import br.com.ec.domain.model.Vendedor;
11
import br.com.ec.domain.model.tipos.TipoOrdenacaoMaisVendidos;
12
import br.com.ec.domain.model.tipos.TipoPeriodoConsulta;
13
import br.edu.cesmac.core.consulta.ParametrosConsulta;
14
import br.edu.cesmac.core.util.DataUtils;
15
import br.edu.cesmac.core.util.VerificadorUtil;
16
 
17
public class ParametrosConsultaProdutosVendidosDTO extends ParametrosConsulta<RankingProdutoDTO> implements Cloneable {
18
 
19
        private Produto produto;
20
        private Loja loja;
21
        private Integer quantidadeProdutos;
22
        private String tipoProduto;
23
        private String tipoOrdenacao;
24
        private Marca marca;
25
        private Modelo modelo;
26
        private Fornecedor fornecedor;
27
        private Vendedor vendedor;
28
 
29
        private String tipoPeriodoConsulta;
30
        private Date dataInicial;
31
        private Date dataFinal;
32
 
33
        private Integer quantidadeMinimaComprar;
34
        private Boolean somenteParaComprar = true;
35
 
36
        private Loja lojaSelecionada;
37
        private Integer estoqueMinimo;
38
        private Boolean consultarPorEstoque;
39
        private int primeiroRegistro;
40
        private int tamanhoPagina;
41
 
42
        @SuppressWarnings("static-access")
43
        public ParametrosConsultaProdutosVendidosDTO() {
44
                setDataInicial(new DataUtils().getDataComHorarioMinimo(new DataUtils().getPrimeiroDiaDoMesAtual()));
45
                setDataFinal(new DataUtils().getDataComHorarioMaximo(new DataUtils().getUltimoDiaDoMesAtual()));
46
                setTipoPeriodoConsulta(TipoPeriodoConsulta.ULTIMOS_15_DIAS.getValor());
47
                atualizarPeriodo();
48
                setQuantidadeMinimaComprar(1);
49
        }
50
 
51
        public Produto getProduto() {
52
                return produto;
53
        }
54
        public void setProduto(Produto produto) {
55
                this.produto = produto;
56
        }
57
 
58
        public Loja getLoja() {
59
                return loja;
60
        }
61
        public void setLoja(Loja loja) {
62
                this.loja = loja;
63
        }
64
 
65
        public Integer getQuantidadeProdutos() {
66
                return quantidadeProdutos;
67
        }
68
        public void setQuantidadeProdutos(Integer quantidadeProdutos) {
69
                this.quantidadeProdutos = quantidadeProdutos;
70
        }
71
 
72
        public String getTipoProduto() {
73
                return tipoProduto;
74
        }
75
        public void setTipoProduto(String tipoProduto) {
76
                this.tipoProduto = tipoProduto;
77
        }
78
 
79
        public String getTipoOrdenacao() {
80
                return tipoOrdenacao;
81
        }
82
        public void setTipoOrdenacao(String tipoOrdenacao) {
83
                this.tipoOrdenacao = tipoOrdenacao;
84
        }
85
 
86
        public Marca getMarca() {
87
                return marca;
88
        }
89
        public void setMarca(Marca marca) {
90
                this.marca = marca;
91
        }
92
 
93
        public Modelo getModelo() {
94
                return modelo;
95
        }
96
        public void setModelo(Modelo modelo) {
97
                this.modelo = modelo;
98
        }
99
 
100
        public Fornecedor getFornecedor() {
101
                return fornecedor;
102
        }
103
        public void setFornecedor(Fornecedor fornecedor) {
104
                this.fornecedor = fornecedor;
105
        }
106
 
107
        public Vendedor getVendedor() {
108
                return vendedor;
109
        }
110
        public void setVendedor(Vendedor vendedor) {
111
                this.vendedor = vendedor;
112
        }
113
 
114
        public String getTipoPeriodoConsulta() {
115
                return tipoPeriodoConsulta;
116
        }
117
        public void setTipoPeriodoConsulta(String tipoPeriodoConsulta) {
118
                this.tipoPeriodoConsulta = tipoPeriodoConsulta;
119
        }
120
 
121
        public Date getDataInicial() {
122
                return dataInicial;
123
        }
124
        public void setDataInicial(Date dataInicial) {
125
                this.dataInicial = dataInicial;
126
        }
127
 
128
        public Date getDataFinal() {
129
                return dataFinal;
130
        }
131
        public void setDataFinal(Date dataFinal) {
132
                this.dataFinal = dataFinal;
133
        }
134
 
135
        public Integer getQuantidadeMinimaComprar() {
136
                return quantidadeMinimaComprar;
137
        }
138
        public void setQuantidadeMinimaComprar(Integer quantidadeMinimaComprar) {
139
                this.quantidadeMinimaComprar = quantidadeMinimaComprar;
140
        }
141
 
142
        public Boolean getSomenteParaComprar() {
143
                return somenteParaComprar;
144
        }
145
        public void setSomenteParaComprar(Boolean somenteParaComprar) {
146
                this.somenteParaComprar = somenteParaComprar;
147
        }
148
 
149
        public Loja getLojaSelecionada() {
150
                return lojaSelecionada;
151
        }
152
        public void setLojaSelecionada(Loja lojaSelecionada) {
153
                this.lojaSelecionada = lojaSelecionada;
154
        }
155
 
156
        public Integer getEstoqueMinimo() {
157
                return estoqueMinimo;
158
        }
159
        public void setEstoqueMinimo(Integer estoqueMinimo) {
160
                this.estoqueMinimo = estoqueMinimo;
161
        }
162
 
163
        public Boolean getConsultarPorEstoque() {
164
                return consultarPorEstoque;
165
        }
166
        public void setConsultarPorEstoque(Boolean consultarPorEstoque) {
167
                this.consultarPorEstoque = consultarPorEstoque;
168
        }
169
 
170
        public int getPrimeiroRegistro() {
171
                return primeiroRegistro;
172
        }
173
        public void setPrimeiroRegistro(int primeiroRegistro) {
174
                this.primeiroRegistro = primeiroRegistro;
175
        }
176
 
177
        public int getTamanhoPagina() {
178
                return tamanhoPagina;
179
        }
180
        public void setTamanhoPagina(int tamanhoPagina) {
181
                this.tamanhoPagina = tamanhoPagina;
182
        }
183
 
184
        public Boolean ordenadoPorData() {
185
                return VerificadorUtil.naoEstaNuloOuVazio(getTipoOrdenacao())? getTipoOrdenacao().equals(TipoOrdenacaoMaisVendidos.DATA.getValor())? true : false : false;
186
        }
187
 
188
        public void atualizarPeriodo() {
189
                if (getTipoPeriodoConsulta().equals(TipoPeriodoConsulta.ULTIMOS_7_DIAS.getValor())) {
190
                        setDataInicial(new DataUtils().getDataComHorarioMinimo(DataUtils.acrescentarDias(DataUtils.getDataAtual(), -7)));
191
                        setDataFinal(new DataUtils().getDataComHorarioMaximo(DataUtils.getDataAtual()));
192
                }
193
                if (getTipoPeriodoConsulta().equals(TipoPeriodoConsulta.ULTIMOS_15_DIAS.getValor())) {
194
                        setDataInicial(new DataUtils().getDataComHorarioMinimo(DataUtils.acrescentarDias(DataUtils.getDataAtual(), -15)));
195
                        setDataFinal(new DataUtils().getDataComHorarioMaximo(DataUtils.getDataAtual()));
196
                }
197
                if (getTipoPeriodoConsulta().equals(TipoPeriodoConsulta.ULTIMOS_30_DIAS.getValor())) {
198
                        setDataInicial(new DataUtils().getDataComHorarioMinimo(DataUtils.acrescentarDias(DataUtils.getDataAtual(), -30)));
199
                        setDataFinal(new DataUtils().getDataComHorarioMaximo(DataUtils.getDataAtual()));
200
                }
201
                if (getTipoPeriodoConsulta().equals(TipoPeriodoConsulta.ULTIMOS_60_DIAS.getValor())) {
202
                        setDataInicial(new DataUtils().getDataComHorarioMinimo(DataUtils.acrescentarDias(DataUtils.getDataAtual(), -60)));
203
                        setDataFinal(new DataUtils().getDataComHorarioMaximo(DataUtils.getDataAtual()));
204
                }
205
                if (getTipoPeriodoConsulta().equals(TipoPeriodoConsulta.ULTIMOS_90_DIAS.getValor())) {
206
                        setDataInicial(new DataUtils().getDataComHorarioMinimo(DataUtils.acrescentarDias(DataUtils.getDataAtual(), -90)));
207
                        setDataFinal(new DataUtils().getDataComHorarioMaximo(DataUtils.getDataAtual()));
208
                }
209
                if (getTipoPeriodoConsulta().equals(TipoPeriodoConsulta.MES_ATUAL.getValor())) {
210
                        setDataInicial(new DataUtils().getDataComHorarioMinimo(DataUtils.getPrimeiroDiaDoMesAtual()));
211
                        setDataFinal(new DataUtils().getDataComHorarioMaximo(DataUtils.getUltimoDiaDoMesAtual()));
212
                }
213
        }
214
 
215
        public Boolean ehTipoPeriodoEspecifico() {
216
                return getTipoPeriodoConsulta().equals(TipoPeriodoConsulta.PERIODO_ESPECIFICO.getValor());
217
        }
218
 
219
        @Override
220
        public ParametrosConsultaProdutosVendidosDTO clone() {
221
                try {
222
                        return (ParametrosConsultaProdutosVendidosDTO)super.clone();
223
                } catch (CloneNotSupportedException e) {
224
                        e.printStackTrace();
225
                }
226
                return null;
227
        }
228
 
229
}