Rev 582 | Rev 584 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 582 | Rev 583 | ||
|---|---|---|---|
| Line 2... | Line 2... | ||
| 2 | 2 | ||
| 3 | import java.util.ArrayList; |
3 | import java.util.ArrayList; |
| 4 | import java.util.Arrays; |
- | |
| 5 | import java.util.Iterator; |
- | |
| 6 | import java.util.List; |
4 | import java.util.List; |
| 7 | 5 | ||
| 8 | import org.springframework.stereotype.Service; |
6 | import org.springframework.stereotype.Service; |
| 9 | 7 | ||
| 10 | import br.com.ec.core.generic.AbstractService; |
8 | import br.com.ec.core.generic.AbstractService; |
| 11 | import br.com.ec.core.generic.GenericRepository; |
9 | import br.com.ec.core.generic.GenericRepository; |
| 12 | import br.com.ec.core.util.DataUtils; |
10 | import br.com.ec.core.util.DataUtils; |
| 13 | import br.com.ec.core.util.VerificadorUtil; |
11 | import br.com.ec.core.util.VerificadorUtil; |
| 14 | import br.com.ec.core.validador.Validador; |
12 | import br.com.ec.core.validador.Validador; |
| - | 13 | import br.com.ec.domain.dto.AlertasComprasGeralDTO; |
|
| 15 | import br.com.ec.domain.dto.AlertasGeralDTO; |
14 | import br.com.ec.domain.dto.AlertasGeralDTO; |
| 16 | import br.com.ec.domain.dto.RankingModeloDTO; |
15 | import br.com.ec.domain.dto.RankingModeloDTO; |
| 17 | import br.com.ec.domain.dto.RankingProdutoDTO; |
16 | import br.com.ec.domain.dto.RankingProdutoDTO; |
| 18 | import br.com.ec.domain.dto.consulta.ParametrosConsultaModelosMaisVendidosDTO; |
17 | import br.com.ec.domain.dto.consulta.ParametrosConsultaModelosMaisVendidosDTO; |
| 19 | import br.com.ec.domain.dto.consulta.ParametrosConsultaProdutosVendidosDTO; |
18 | import br.com.ec.domain.dto.consulta.ParametrosConsultaProdutosVendidosDTO; |
| 20 | import br.com.ec.domain.model.SubtipoProduto; |
19 | import br.com.ec.domain.model.SubtipoProduto; |
| - | 20 | import br.com.ec.domain.model.tipos.TipoOrdenacaoMaisVendidos; |
|
| 21 | import br.com.ec.domain.model.tipos.TipoProduto; |
21 | import br.com.ec.domain.model.tipos.TipoProduto; |
| 22 | import br.com.ec.domain.service.AlertasService; |
22 | import br.com.ec.domain.service.AlertasService; |
| 23 | import br.com.ec.domain.service.LojaService; |
23 | import br.com.ec.domain.service.LojaService; |
| 24 | import br.com.ec.domain.service.ModeloService; |
24 | import br.com.ec.domain.service.ModeloService; |
| 25 | import br.com.ec.domain.service.SubtipoProdutoService; |
25 | import br.com.ec.domain.service.SubtipoProdutoService; |
| Line 54... | Line 54... | ||
| 54 | List<RankingProdutoDTO> rankingProdutosDTO = new ArrayList<RankingProdutoDTO>(); |
54 | List<RankingProdutoDTO> rankingProdutosDTO = new ArrayList<RankingProdutoDTO>(); |
| 55 | 55 | ||
| 56 | ParametrosConsultaProdutosVendidosDTO parametrosConsulta = new ParametrosConsultaProdutosVendidosDTO(); |
56 | ParametrosConsultaProdutosVendidosDTO parametrosConsulta = new ParametrosConsultaProdutosVendidosDTO(); |
| 57 | parametrosConsulta.setDataFinal(DataUtils.getDataAtual()); |
57 | parametrosConsulta.setDataFinal(DataUtils.getDataAtual()); |
| 58 | parametrosConsulta.setDataInicial(DataUtils.acrescentarDias(DataUtils.getDataAtual(), alertasGeralDTO.getQuantidadeDiasVendas()*-1)); |
58 | parametrosConsulta.setDataInicial(DataUtils.acrescentarDias(DataUtils.getDataAtual(), alertasGeralDTO.getQuantidadeDiasVendas()*-1)); |
| - | 59 | parametrosConsulta.setTipoOrdenacao(TipoOrdenacaoMaisVendidos.QUANTIDADE.getValor()); |
|
| 59 | 60 | ||
| 60 | for (TipoProduto tipoProdutoSelecionado : alertasGeralDTO.getTiposProdutoSelecionados()) { |
61 | for (TipoProduto tipoProdutoSelecionado : alertasGeralDTO.getTiposProdutoSelecionados()) { |
| 61 | parametrosConsulta.setTipoProduto(tipoProdutoSelecionado.getValor()); |
62 | parametrosConsulta.setTipoProduto(tipoProdutoSelecionado.getValor()); |
| 62 | rankingProdutosDTO.addAll(vendaService.consultarProdutosVendidos(parametrosConsulta)); |
63 | rankingProdutosDTO.addAll(vendaService.consultarProdutosVendidos(parametrosConsulta)); |
| 63 | }
|
64 | }
|
| Line 69... | Line 70... | ||
| 69 | } else { |
70 | } else { |
| 70 | System.out.print("NÃO TEM SUBTIPO"); |
71 | System.out.print("NÃO TEM SUBTIPO"); |
| 71 | }
|
72 | }
|
| 72 | System.out.println(" - VENDAS: " + rankingProdutoDTO.getQuantidadeVendas() + ", ESTOQUE: " + rankingProdutoDTO.getQuantidadeEstoque()); |
73 | System.out.println(" - VENDAS: " + rankingProdutoDTO.getQuantidadeVendas() + ", ESTOQUE: " + rankingProdutoDTO.getQuantidadeEstoque()); |
| 73 | }
|
74 | }
|
| - | 75 | ||
| - | 76 | // CONSULTAR SUBTIPOS
|
|
| 74 | 77 | ||
| 75 | // VERIFICAR ITENS POR TIPO, SEM SUBTIPO
|
78 | // VERIFICAR ITENS POR TIPO, SEM SUBTIPO
|
| 76 | - | ||
| - | 79 | for (TipoProduto tipoProdutoSelecionado : alertasGeralDTO.getTiposProdutoSelecionados()) { |
|
| - | 80 | AlertasComprasGeralDTO alertasComprasGeralDTO = new AlertasComprasGeralDTO(); |
|
| - | 81 | alertasComprasGeralDTO.setTipoProduto(tipoProdutoSelecionado); |
|
| - | 82 | ||
| - | 83 | List<SubtipoProduto> subtiposProduto = subtipoProdutoService.consultarPorTipo(tipoProdutoSelecionado.getValor()); |
|
| - | 84 | List<RankingProdutoDTO> rankingProdutosDTOComSubtipo = new ArrayList<RankingProdutoDTO>(); |
|
| - | 85 | for (RankingProdutoDTO rankingProdutoDTO : rankingProdutosDTO) { |
|
| - | 86 | if (rankingProdutoDTO.getProduto().getTipo().equals(tipoProdutoSelecionado.getValor())) { |
|
| - | 87 | if (VerificadorUtil.estaNulo(rankingProdutoDTO.getProduto().getSubtipoProduto())) { |
|
| - | 88 | // ALERTA PARA CADA PRODUTO COM MENOS DE 15 DIAS
|
|
| - | 89 | if (rankingProdutoDTO.getTempoEstoque() <= alertasGeralDTO.getTempoDeEstoqueParaAlerta()) { |
|
| - | 90 | alertasComprasGeralDTO.getAlertasProdutosSemSubtipo().add(rankingProdutoDTO); |
|
| - | 91 | }
|
|
| - | 92 | } else { |
|
| - | 93 | rankingProdutosDTOComSubtipo.add(rankingProdutoDTO); |
|
| - | 94 | }
|
|
| - | 95 | }
|
|
| - | 96 | }
|
|
| - | 97 | ||
| - | 98 | for (SubtipoProduto subtipoProduto : subtiposProduto) { |
|
| - | 99 | for (RankingProdutoDTO rankingProdutoDTOComSubtipo : rankingProdutosDTOComSubtipo) { |
|
| - | 100 | if (subtipoProduto.equals(rankingProdutoDTOComSubtipo.getProduto().getSubtipoProduto())) { |
|
| - | 101 | ||
| - | 102 | }
|
|
| - | 103 | }
|
|
| - | 104 | }
|
|
| - | 105 | ||
| - | 106 | alertasGeralDTO.getAlertasComprasGeralDTO().add(alertasComprasGeralDTO); |
|
| - | 107 | }
|
|
| 77 | 108 | ||
| 78 | // CONSULTAR ITENS SEM SUBTIPO: TOTAL DE VENDAS (90 DIAS), TOTAL DE ESTOQUE, TEMPO DE ESTOQUE E QNT PARA COMPRAR (90 DIAS)
|
109 | // CONSULTAR ITENS SEM SUBTIPO: TOTAL DE VENDAS (90 DIAS), TOTAL DE ESTOQUE, TEMPO DE ESTOQUE E QNT PARA COMPRAR (90 DIAS)
|
| 79 | /*
|
110 | /*
|
| 80 | List<SubtipoProduto> subtiposProduto = new ArrayList<SubtipoProduto>();
|
111 | List<SubtipoProduto> subtiposProduto = new ArrayList<SubtipoProduto>();
|
| 81 | for (TipoProduto tipoProduto : tiposProduto) {
|
112 | for (TipoProduto tipoProduto : tiposProduto) {
|
| 82 | if (!tipoProduto.getValor().equals(TipoProduto.CAPA.getValor())) {
|
113 | if (!tipoProduto.getValor().equals(TipoProduto.CAPA.getValor())) {
|
| 83 | subtiposProduto.addAll(subtipoProdutoService.consultarPorTipo(tipoProduto.getValor()));
|
114 | subtiposProduto.addAll(subtipoProdutoService.consultarPorTipo(tipoProduto.getValor()));
|
| 84 | }
|
115 | }
|
| 85 | }
|
116 | }
|
| 86 | */
|
117 | */
|
| 87 | // ALERTA PARA CADA PRODUTO COM MENOS DE 15 DIAS
|
- | |
| - | 118 | ||
| 88 | 119 | ||
| 89 | // LISTA DE TODOS OS SUBTIPOS DO TIPO
|
120 | // LISTA DE TODOS OS SUBTIPOS DO TIPO
|
| 90 | // CONSULTAR ITENS DO SUBTIPO: TOTAL DE VENDAS (90 DIAS), TOTAL DE ESTOQUE, TEMPO DE ESTOQUE E QNT PARA COMPRAR (90 DIAS)
|
121 | // CONSULTAR ITENS DO SUBTIPO: TOTAL DE VENDAS (90 DIAS), TOTAL DE ESTOQUE, TEMPO DE ESTOQUE E QNT PARA COMPRAR (90 DIAS)
|
| 91 | // ALERTA PARA CADA SUBTIPO COM MENOS DE 15 DIAS DE ESTOQUE
|
122 | // ALERTA PARA CADA SUBTIPO COM MENOS DE 15 DIAS DE ESTOQUE
|
| 92 | 123 | ||