Subversion Repositories Integrator Subversion

Rev

Rev 586 | Rev 611 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 586 Rev 588
Line 4... Line 4...
4
import java.util.Date;
4
import java.util.Date;
-
 
5
import java.util.Iterator;
5
import java.util.List;
6
import java.util.List;
6
7
7
import org.springframework.stereotype.Service;
8
import org.springframework.stereotype.Service;
8
9
9
import br.com.ec.core.exception.NegocioException;
10
import br.com.ec.core.exception.NegocioException;
Line 20... Line 21...
20
import br.com.ec.domain.dto.RankingComprasTransferenciasEstiloDTO;
21
import br.com.ec.domain.dto.RankingComprasTransferenciasEstiloDTO;
21
import br.com.ec.domain.dto.RankingComprasTransferenciasEstiloPorLojaDTO;
22
import br.com.ec.domain.dto.RankingComprasTransferenciasEstiloPorLojaDTO;
22
import br.com.ec.domain.dto.RankingModeloDTO;
23
import br.com.ec.domain.dto.RankingModeloDTO;
23
import br.com.ec.domain.dto.RankingProdutoDTO;
24
import br.com.ec.domain.dto.RankingProdutoDTO;
24
import br.com.ec.domain.dto.RankingProdutoDTONovo;
25
import br.com.ec.domain.dto.RankingProdutoDTONovo;
-
 
26
import br.com.ec.domain.dto.RankingTransferenciasModeloDTO;
-
 
27
import br.com.ec.domain.dto.RankingTransferenciasModeloPorLojaDTO;
25
import br.com.ec.domain.dto.consulta.ParametrosConsultaModelosMaisVendidosDTO;
28
import br.com.ec.domain.dto.consulta.ParametrosConsultaModelosMaisVendidosDTO;
26
import br.com.ec.domain.dto.consulta.ParametrosConsultaPorPeriodoDTO;
29
import br.com.ec.domain.dto.consulta.ParametrosConsultaPorPeriodoDTO;
27
import br.com.ec.domain.dto.consulta.ParametrosConsultaProdutosVendidosDTO;
30
import br.com.ec.domain.dto.consulta.ParametrosConsultaProdutosVendidosDTO;
28
import br.com.ec.domain.dto.consulta.ParametrosConsultaVendasDTO;
31
import br.com.ec.domain.dto.consulta.ParametrosConsultaVendasDTO;
29
import br.com.ec.domain.model.Venda;
32
import br.com.ec.domain.model.Venda;
30
import br.com.ec.domain.model.tipos.TipoEstiloProduto;
33
import br.com.ec.domain.model.tipos.TipoEstiloProduto;
-
 
34
import br.com.ec.domain.model.tipos.TipoProduto;
31
import br.com.ec.domain.model.tipos.TipoSituacaoVenda;
35
import br.com.ec.domain.model.tipos.TipoSituacaoVenda;
32
import br.com.ec.domain.service.LojaService;
36
import br.com.ec.domain.service.LojaService;
33
import br.com.ec.domain.service.ModeloService;
37
import br.com.ec.domain.service.ModeloService;
34
import br.com.ec.domain.service.VendaService;
38
import br.com.ec.domain.service.VendaService;
35
import br.com.ec.repository.VendaRepository;
39
import br.com.ec.repository.VendaRepository;
Line 111... Line 115...
111
                ParametrosConsultaPorPeriodoDTO parametrosConsultaPorPeriodoDTO = new ParametrosConsultaPorPeriodoDTO();
115
                ParametrosConsultaPorPeriodoDTO parametrosConsultaPorPeriodoDTO = new ParametrosConsultaPorPeriodoDTO();
112
                parametrosConsultaPorPeriodoDTO.setDataFinal(DataUtils.getDataAtual());
116
                parametrosConsultaPorPeriodoDTO.setDataFinal(DataUtils.getDataAtual());
113
                parametrosConsultaPorPeriodoDTO.setDataInicial(DataUtils.acrescentarDias(DataUtils.getDataAtual(), quantidadeDiasVendas*-1));
117
                parametrosConsultaPorPeriodoDTO.setDataInicial(DataUtils.acrescentarDias(DataUtils.getDataAtual(), quantidadeDiasVendas*-1));
114
               
118
               
115
                for (RankingModeloDTO rankingModelo : modelosMaisVendidos) {
119
                for (RankingModeloDTO rankingModelo : modelosMaisVendidos) {
116
                        if (rankingModelo.getModelo().getSequencial().equals(new Long(946))) {
-
 
117
                                System.out.println("TESTAR");
-
 
118
                        }
-
 
119
                        RankingComprasTransferenciasDTO rankingComprasTransferenciasDTO = new RankingComprasTransferenciasDTO();
120
                        RankingComprasTransferenciasDTO rankingComprasTransferenciasDTO = new RankingComprasTransferenciasDTO();
120
                        rankingComprasTransferenciasDTO.setRankingModelo(rankingModelo);
121
                        rankingComprasTransferenciasDTO.setRankingModelo(rankingModelo);
121
122
122
                        // CONSULTAR POR ESTILO
123
                        // CONSULTAR POR ESTILO
123
                        List<RankingComprasTransferenciasEstiloDTO> rankEstiloDTO = new ArrayList<RankingComprasTransferenciasEstiloDTO>();
124
                        List<RankingComprasTransferenciasEstiloDTO> rankEstiloDTO = new ArrayList<RankingComprasTransferenciasEstiloDTO>();
Line 248... Line 249...
248
                List<RankingProdutoDTONovo> produtosVendidosConsultados = vendaRepository.consultarProdutosVendidosDTO(parametrosConsulta);
249
                List<RankingProdutoDTONovo> produtosVendidosConsultados = vendaRepository.consultarProdutosVendidosDTO(parametrosConsulta);
249
                for (RankingProdutoDTONovo produtoVendido : produtosVendidosConsultados) {
250
                for (RankingProdutoDTONovo produtoVendido : produtosVendidosConsultados) {
250
                        produtoVendido.atualizarTempoEstoque(parametrosConsulta.getDataInicial(), parametrosConsulta.getDataFinal());
251
                        produtoVendido.atualizarTempoEstoque(parametrosConsulta.getDataInicial(), parametrosConsulta.getDataFinal());
251
                }
252
                }
252
                return produtosVendidosConsultados;
253
                return produtosVendidosConsultados;
-
 
254
        }
-
 
255
       
-
 
256
        @Override
-
 
257
        public List<RankingTransferenciasModeloDTO> consultarModelosParaRedistribuicao() {
-
 
258
                List<RankingTransferenciasModeloDTO> modelosParaRedistribuicao = new ArrayList<RankingTransferenciasModeloDTO>();
-
 
259
               
-
 
260
                // CONSULTAR MODELOS MAIS VENDIDOS (90 DIAS, CAPAS)
-
 
261
                List<RankingModeloDTO> modelosMaisVendidos = new ArrayList<RankingModeloDTO>();
-
 
262
                ParametrosConsultaModelosMaisVendidosDTO parametrosConsulta = new ParametrosConsultaModelosMaisVendidosDTO();
-
 
263
                parametrosConsulta.setDataFinal(DataUtils.getDataAtual());
-
 
264
                parametrosConsulta.setDataInicial(DataUtils.acrescentarDias(DataUtils.getDataAtual(), -90));
-
 
265
                modelosMaisVendidos.addAll(this.consultarRankingModelos(parametrosConsulta, true));
-
 
266
               
-
 
267
                // REFAZER: CONSULTAR E ATUALIZAR TOTAIS (POR LOJA)
-
 
268
                Integer quantidadeTotalVendas = 0;
-
 
269
                Integer quantidadeTotalEstoque = 0;
-
 
270
                for (RankingModeloDTO modeloMaisVendidos : modelosMaisVendidos) {
-
 
271
                        if (VerificadorUtil.naoEstaNulo(modeloMaisVendidos.getQuantidadeEstoqueGeral())) {
-
 
272
                                quantidadeTotalEstoque += modeloMaisVendidos.getQuantidadeEstoqueGeral();
-
 
273
                        }      
-
 
274
                        if (VerificadorUtil.naoEstaNulo(modeloMaisVendidos.getQuantidadeVendas())) {
-
 
275
                                quantidadeTotalVendas += modeloMaisVendidos.getQuantidadeVendas();
-
 
276
                        }
-
 
277
                }
-
 
278
                for (RankingModeloDTO modeloMaisVendidos : modelosMaisVendidos) {
-
 
279
                        modeloMaisVendidos.setQuantidadeTotalEstoqueGeral(quantidadeTotalEstoque);
-
 
280
                        modeloMaisVendidos.setQuantidadeTotalVendas(quantidadeTotalVendas);
-
 
281
                }
-
 
282
               
-
 
283
                // CONSULTAR VENDAS/ESTOQUE POR LOJA
-
 
284
                List<LojaDTO> lojasDTO = lojaService.consultarLojasAtivas();
-
 
285
                for (RankingModeloDTO modeloMaisVendidos : modelosMaisVendidos) {
-
 
286
                        RankingTransferenciasModeloDTO modeloParaRedistribuicao = new RankingTransferenciasModeloDTO();
-
 
287
                        modeloParaRedistribuicao.setModeloDTO(modeloMaisVendidos.getModelo());
-
 
288
                       
-
 
289
                        List<RankingTransferenciasModeloPorLojaDTO> rankingTransferenciasModeloPorLojaDTO = new ArrayList<RankingTransferenciasModeloPorLojaDTO>();
-
 
290
                        for (LojaDTO lojaDTO : lojasDTO) {
-
 
291
                                RankingTransferenciasModeloPorLojaDTO modeloPorLojaParaRedistribuicao = new RankingTransferenciasModeloPorLojaDTO();
-
 
292
                                modeloPorLojaParaRedistribuicao.setLojaDTO(lojaDTO);
-
 
293
                               
-
 
294
                                List<RankingModeloDTO> modeloPorLojaMaisVendidos = new ArrayList<RankingModeloDTO>();
-
 
295
                                ParametrosConsultaModelosMaisVendidosDTO parametrosConsultaPorLoja = new ParametrosConsultaModelosMaisVendidosDTO();
-
 
296
                                parametrosConsultaPorLoja.setDataFinal(DataUtils.getDataAtual());
-
 
297
                                parametrosConsultaPorLoja.setDataInicial(DataUtils.acrescentarDias(DataUtils.getDataAtual(), -90));
-
 
298
                                parametrosConsultaPorLoja.setSequencialModelo(modeloMaisVendidos.getModelo().getSequencial());
-
 
299
                                parametrosConsultaPorLoja.setSequencialLoja(lojaDTO.getSequencial());
-
 
300
                                modeloPorLojaMaisVendidos.addAll(this.consultarRankingModelos(parametrosConsultaPorLoja, false));
-
 
301
                                if (!modeloPorLojaMaisVendidos.isEmpty()) {
-
 
302
                                        RankingModeloDTO rankingModeloDTO = modeloPorLojaMaisVendidos.get(0);
-
 
303
                                       
-
 
304
                                        RankingTransferenciasModeloPorLojaDTO transferenciasModeloPorLojaDTO = new RankingTransferenciasModeloPorLojaDTO();
-
 
305
                                        transferenciasModeloPorLojaDTO.setLojaDTO(lojaDTO);
-
 
306
                                        transferenciasModeloPorLojaDTO.setQuantidadeEstoque(rankingModeloDTO.getQuantidadeEstoqueGeral());
-
 
307
                                        transferenciasModeloPorLojaDTO.setQuantidadeVendas(rankingModeloDTO.getQuantidadeVendas());
-
 
308
                                        transferenciasModeloPorLojaDTO.setQuantidadeTotalEstoque(modeloMaisVendidos.getQuantidadeTotalEstoqueLocal());
-
 
309
                                        transferenciasModeloPorLojaDTO.setQuantidadeTotalVendas(modeloMaisVendidos.getQuantidadeTotalVendas());
-
 
310
                                        rankingTransferenciasModeloPorLojaDTO.add(transferenciasModeloPorLojaDTO);
-
 
311
                                }
-
 
312
                                modeloParaRedistribuicao.getRankingTransferenciasModeloPorLojaDTO().add(modeloPorLojaParaRedistribuicao);
-
 
313
                        }
-
 
314
                        modelosParaRedistribuicao.add(modeloParaRedistribuicao);
-
 
315
                }
-
 
316
                return modelosParaRedistribuicao;
253
        }
317
        }
254
       
318
       
255
        /*
319
        /*
256
        private LancamentoService lancamentoService;
320
        private LancamentoService lancamentoService;
257
        private VendaFormaPagamentoService vendaFormaPagamentoService;
321
        private VendaFormaPagamentoService vendaFormaPagamentoService;