Rev 452 | Rev 562 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 452 | Rev 561 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | package br.com.ec.domain.service.impl; |
1 | package br.com.ec.domain.service.impl; |
| 2 | 2 | ||
| - | 3 | import java.util.ArrayList; |
|
| 3 | import java.util.Date; |
4 | import java.util.Date; |
| 4 | import java.util.List; |
5 | import java.util.List; |
| 5 | 6 | ||
| 6 | import org.springframework.stereotype.Service; |
7 | import org.springframework.stereotype.Service; |
| 7 | 8 | ||
| Line 11... | Line 12... | ||
| 11 | import br.com.ec.core.util.DataUtils; |
12 | import br.com.ec.core.util.DataUtils; |
| 12 | import br.com.ec.core.util.VerificadorUtil; |
13 | import br.com.ec.core.util.VerificadorUtil; |
| 13 | import br.com.ec.core.validador.Validador; |
14 | import br.com.ec.core.validador.Validador; |
| 14 | import br.com.ec.domain.dto.AuditoriaVendaDTO; |
15 | import br.com.ec.domain.dto.AuditoriaVendaDTO; |
| 15 | import br.com.ec.domain.dto.FormaPagamentoDTO; |
16 | import br.com.ec.domain.dto.FormaPagamentoDTO; |
| - | 17 | import br.com.ec.domain.dto.LojaDTO; |
|
| - | 18 | import br.com.ec.domain.dto.RankingComprasTransferenciasDTO; |
|
| - | 19 | import br.com.ec.domain.dto.RankingComprasTransferenciasEstiloDTO; |
|
| - | 20 | import br.com.ec.domain.dto.RankingComprasTransferenciasEstiloPorLojaDTO; |
|
| - | 21 | import br.com.ec.domain.dto.RankingModeloDTO; |
|
| - | 22 | import br.com.ec.domain.dto.consulta.ParametrosConsultaModelosMaisVendidosDTO; |
|
| - | 23 | import br.com.ec.domain.dto.consulta.ParametrosConsultaPorPeriodoDTO; |
|
| 16 | import br.com.ec.domain.dto.consulta.ParametrosConsultaVendasDTO; |
24 | import br.com.ec.domain.dto.consulta.ParametrosConsultaVendasDTO; |
| 17 | import br.com.ec.domain.model.Venda; |
25 | import br.com.ec.domain.model.Venda; |
| 18 | import br.com.ec.domain.model.tipos.TipoSituacaoVenda; |
26 | import br.com.ec.domain.model.tipos.TipoSituacaoVenda; |
| - | 27 | import br.com.ec.domain.service.LojaService; |
|
| 19 | import br.com.ec.domain.service.VendaService; |
28 | import br.com.ec.domain.service.VendaService; |
| 20 | import br.com.ec.repository.VendaRepository; |
29 | import br.com.ec.repository.VendaRepository; |
| 21 | 30 | ||
| 22 | @Service |
31 | @Service |
| 23 | public class VendaServiceImpl extends AbstractService<Venda> implements VendaService { |
32 | public class VendaServiceImpl extends AbstractService<Venda> implements VendaService { |
| 24 | 33 | ||
| - | 34 | private LojaService lojaService; |
|
| 25 | private VendaRepository vendaRepository; |
35 | private VendaRepository vendaRepository; |
| 26 | 36 | ||
| 27 | public VendaServiceImpl(Validador validador, VendaRepository vendaRepository) { |
- | |
| - | 37 | public VendaServiceImpl(Validador validador, LojaService lojaService, VendaRepository vendaRepository) { |
|
| 28 | super(validador); |
38 | super(validador); |
| - | 39 | this.lojaService = lojaService; |
|
| 29 | this.vendaRepository = vendaRepository; |
40 | this.vendaRepository = vendaRepository; |
| 30 | }
|
41 | }
|
| 31 | 42 | ||
| 32 | @Override |
43 | @Override |
| 33 | protected GenericRepository<Venda> getRepository() { |
44 | protected GenericRepository<Venda> getRepository() { |
| Line 81... | Line 92... | ||
| 81 | Integer diferencaDiasEntreDatas = DataUtils.calcularDiferenceEmDiasEntreDuasDatas(DataUtils.getDataAtual(), dataSelecionada); |
92 | Integer diferencaDiasEntreDatas = DataUtils.calcularDiferenceEmDiasEntreDuasDatas(DataUtils.getDataAtual(), dataSelecionada); |
| 82 | if (diferencaDiasEntreDatas > 60) { |
93 | if (diferencaDiasEntreDatas > 60) { |
| 83 | throw new NegocioException("Consulta indisponível"); |
94 | throw new NegocioException("Consulta indisponível"); |
| 84 | }
|
95 | }
|
| 85 | return vendaRepository.consultarAuditoriaVenda(dataSelecionada, sequencialLojaSelecionada); |
96 | return vendaRepository.consultarAuditoriaVenda(dataSelecionada, sequencialLojaSelecionada); |
| - | 97 | }
|
|
| - | 98 | ||
| - | 99 | @Override |
|
| - | 100 | public List<RankingComprasTransferenciasDTO> consultarRankingComprasTransferencias(Integer quantidadeDiasReposicao) { |
|
| - | 101 | List<RankingComprasTransferenciasDTO> ranking = new ArrayList<RankingComprasTransferenciasDTO>(); |
|
| - | 102 | ||
| - | 103 | ParametrosConsultaPorPeriodoDTO parametrosConsultaPorPeriodoDTO = new ParametrosConsultaPorPeriodoDTO(); |
|
| - | 104 | parametrosConsultaPorPeriodoDTO.setDataFinal(DataUtils.getDataAtual()); |
|
| - | 105 | parametrosConsultaPorPeriodoDTO.setDataInicial(DataUtils.acrescentarDias(DataUtils.getDataAtual(), quantidadeDiasReposicao*-1)); |
|
| - | 106 | ||
| - | 107 | // CONSULTAR MODELOS MAIS VENDIDOS
|
|
| - | 108 | List<RankingModeloDTO> modelosMaisVendidos = new ArrayList<RankingModeloDTO>(); |
|
| - | 109 | ParametrosConsultaModelosMaisVendidosDTO parametrosConsulta = new ParametrosConsultaModelosMaisVendidosDTO(); |
|
| - | 110 | parametrosConsulta.setDataFinal(DataUtils.getDataAtual()); |
|
| - | 111 | parametrosConsulta.setDataInicial(DataUtils.acrescentarDias(DataUtils.getDataAtual(), quantidadeDiasReposicao*-1)); |
|
| - | 112 | modelosMaisVendidos.addAll(consultarRankingModelos(parametrosConsulta)); |
|
| - | 113 | ||
| - | 114 | for (RankingModeloDTO rankingModelo : modelosMaisVendidos) { |
|
| - | 115 | RankingComprasTransferenciasDTO rankingComprasTransferenciasDTO = new RankingComprasTransferenciasDTO(); |
|
| - | 116 | rankingComprasTransferenciasDTO.setRankingModelo(rankingModelo); |
|
| - | 117 | ||
| - | 118 | // CONSULTAR POR ESTILO
|
|
| - | 119 | List<RankingComprasTransferenciasEstiloDTO> rankingEstiloDTO = new ArrayList<RankingComprasTransferenciasEstiloDTO>(); |
|
| - | 120 | rankingEstiloDTO.addAll(consultarRankingPorEstilo(rankingModelo.getModelo().getSequencial(), parametrosConsultaPorPeriodoDTO)); |
|
| - | 121 | ||
| - | 122 | // CONSULTAR ESTILO POR LOJA
|
|
| - | 123 | List<LojaDTO> lojasAtivas = lojaService.consultarLojasAtivas(); |
|
| - | 124 | for (RankingComprasTransferenciasEstiloDTO rankingEstilo : rankingEstiloDTO) { |
|
| - | 125 | rankingEstilo.setRankingsPorLoja(consultarRankingPorEstiloPorLoja(rankingModelo.getModelo().getSequencial(), rankingEstilo.getEstilo().getValor(), parametrosConsultaPorPeriodoDTO)); |
|
| - | 126 | /*
|
|
| - | 127 | // LOJAS
|
|
| - | 128 | for (LojaDTO lojaAtiva : lojasAtivas) {
|
|
| - | 129 | RankingComprasTransferenciasEstiloPorLojaDTO rankingEstiloPorLojaDTO = new RankingComprasTransferenciasEstiloPorLojaDTO();
|
|
| - | 130 | rankingEstiloPorLojaDTO = consultarRankingPorEstiloPorLoja(rankingModelo.getModelo().getSequencial(), rankingEstilo.getEstilo().getValor(), parametrosConsultaPorPeriodoDTO);
|
|
| - | 131 | rankingEstilo.getRankingsPorLoja().add(rankingEstiloPorLojaDTO);
|
|
| - | 132 | }
|
|
| - | 133 | */
|
|
| - | 134 | }
|
|
| - | 135 | ||
| - | 136 | // RankingComprasTransferenciasEstiloPorLojaDTO rankingPorLojaMatriz = new RankingComprasTransferenciasEstiloPorLojaDTO();
|
|
| - | 137 | // rankingPorLojaMatriz.setLojaDTO(new LojaDTO(ConstantesSEC.Loja.SEQUENCIAL_MATRIZ_ESTOQUE_9, "MATRIZ", 0));
|
|
| - | 138 | // rankingPorLojaMatriz.setQuantidadeEstoqueUnissex(9);
|
|
| - | 139 | // rankingPorLojaMatriz.setQuantidadeEstoqueMasculino(1);
|
|
| - | 140 | // rankingPorLojaMatriz.setQuantidadeEstoqueFeminino(8);
|
|
| - | 141 | // estiloSilicone.getRankingsPorLoja().add(rankingPorLojaMatriz);
|
|
| - | 142 | ||
| - | 143 | // CONSULTAR ALERTAS
|
|
| - | 144 | ||
| - | 145 | ranking.add(rankingComprasTransferenciasDTO); |
|
| - | 146 | }
|
|
| - | 147 | ||
| - | 148 | return ranking; |
|
| - | 149 | }
|
|
| - | 150 | ||
| - | 151 | @Override |
|
| - | 152 | public List<RankingComprasTransferenciasEstiloPorLojaDTO> consultarRankingPorEstiloPorLoja(Long sequencialModelo, String tipoEstilo, ParametrosConsultaPorPeriodoDTO parametrosConsultaPorPeriodoDTO) { |
|
| - | 153 | return vendaRepository.consultarRankingPorEstiloPorLoja(sequencialModelo, tipoEstilo, parametrosConsultaPorPeriodoDTO); |
|
| - | 154 | }
|
|
| - | 155 | ||
| - | 156 | @Override |
|
| - | 157 | public List<RankingModeloDTO> consultarRankingModelos(ParametrosConsultaModelosMaisVendidosDTO parametrosConsulta) { |
|
| - | 158 | return vendaRepository.consultarModelosMaisVendidos(parametrosConsulta); |
|
| - | 159 | }
|
|
| - | 160 | ||
| - | 161 | @Override |
|
| - | 162 | public List<RankingComprasTransferenciasEstiloDTO> consultarRankingPorEstilo(Long sequencialModelo, ParametrosConsultaPorPeriodoDTO parametrosConsultaPorPeriodoDTO) { |
|
| - | 163 | return vendaRepository.consultarRankingPorEstilo(sequencialModelo, parametrosConsultaPorPeriodoDTO); |
|
| 86 | }
|
164 | }
|
| 87 | 165 | ||
| 88 | /*
|
166 | /*
|
| 89 | private LancamentoService lancamentoService;
|
167 | private LancamentoService lancamentoService;
|
| 90 | private VendaFormaPagamentoService vendaFormaPagamentoService;
|
168 | private VendaFormaPagamentoService vendaFormaPagamentoService;
|
| Line 1161... | Line 1239... | ||
| 1161 | }
|
1239 | }
|
| 1162 |
|
1240 |
|
| 1163 | @Override
|
1241 | @Override
|
| 1164 | public List<RankingProdutoDTO> consultarRankingProdutos(Date dataInicial, Date dataFinal, Integer quantidadeProdutos, String tipoOrdenacao, Long sequencialLoja, String tipoProduto, Produto produto, Marca marca) {
|
1242 | public List<RankingProdutoDTO> consultarRankingProdutos(Date dataInicial, Date dataFinal, Integer quantidadeProdutos, String tipoOrdenacao, Long sequencialLoja, String tipoProduto, Produto produto, Marca marca) {
|
| 1165 | return vendaRepository.consultarProdutosMaisVendidos(dataInicial, dataFinal, quantidadeProdutos, tipoOrdenacao, sequencialLoja, tipoProduto, produto, marca);
|
1243 | return vendaRepository.consultarProdutosMaisVendidos(dataInicial, dataFinal, quantidadeProdutos, tipoOrdenacao, sequencialLoja, tipoProduto, produto, marca);
|
| 1166 | }
|
- | |
| 1167 |
|
- | |
| 1168 | @Override
|
- | |
| 1169 | public List<RankingModeloDTO> consultarRankingModelos(ParametrosConsultaModelosMaisVendidosDTO parametrosConsulta) {
|
- | |
| 1170 | return vendaRepository.consultarModelosMaisVendidos(parametrosConsulta);
|
- | |
| 1171 | }
|
1244 | }
|
| 1172 |
|
1245 |
|
| 1173 | @Override
|
1246 | @Override
|
| 1174 | public List<RankingModeloDTO> consultarRankingModelos(Date dataInicial, Date dataFinal, Integer quantidadeModelos, String tipoOrdenacao, String tipoProduto, Long sequencialLoja) {
|
1247 | public List<RankingModeloDTO> consultarRankingModelos(Date dataInicial, Date dataFinal, Integer quantidadeModelos, String tipoOrdenacao, String tipoProduto, Long sequencialLoja) {
|
| 1175 | ParametrosConsultaModelosMaisVendidosDTO parametros = new ParametrosConsultaModelosMaisVendidosDTO(dataInicial, dataFinal, quantidadeModelos, tipoOrdenacao, tipoProduto, sequencialLoja);
|
1248 | ParametrosConsultaModelosMaisVendidosDTO parametros = new ParametrosConsultaModelosMaisVendidosDTO(dataInicial, dataFinal, quantidadeModelos, tipoOrdenacao, tipoProduto, sequencialLoja);
|