Rev 261 | Rev 265 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 261 | Rev 264 | ||
|---|---|---|---|
| Line 9... | Line 9... | ||
| 9 | import org.springframework.stereotype.Repository; |
9 | import org.springframework.stereotype.Repository; |
| 10 | 10 | ||
| 11 | import br.com.ec.core.util.DataUtils; |
11 | import br.com.ec.core.util.DataUtils; |
| 12 | import br.com.ec.core.util.VerificadorUtil; |
12 | import br.com.ec.core.util.VerificadorUtil; |
| 13 | import br.com.ec.domain.dto.FormaPagamentoDTO; |
13 | import br.com.ec.domain.dto.FormaPagamentoDTO; |
| - | 14 | import br.com.ec.domain.dto.LojaDTO; |
|
| 14 | import br.com.ec.domain.dto.consulta.ParametrosConsultaVendasDTO; |
15 | import br.com.ec.domain.dto.consulta.ParametrosConsultaVendasDTO; |
| 15 | import br.com.ec.domain.model.Venda; |
16 | import br.com.ec.domain.model.Venda; |
| 16 | import br.com.ec.domain.shared.ConstantesSEC; |
17 | import br.com.ec.domain.shared.ConstantesSEC; |
| 17 | import br.com.ec.repository.SistemaAbstractRepository; |
18 | import br.com.ec.repository.SistemaAbstractRepository; |
| 18 | import br.com.ec.repository.VendaRepository; |
19 | import br.com.ec.repository.VendaRepository; |
| Line 90... | Line 91... | ||
| 90 | sql.append("AND e.loja.sequencial = :sequencialLoja "); |
91 | sql.append("AND e.loja.sequencial = :sequencialLoja "); |
| 91 | }
|
92 | }
|
| 92 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getTipoSituacaoVenda())) { |
93 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getTipoSituacaoVenda())) { |
| 93 | sql.append("AND e.tipoSituacao = :tipoSituacao "); |
94 | sql.append("AND e.tipoSituacao = :tipoSituacao "); |
| 94 | }
|
95 | }
|
| 95 | /*
|
- | |
| 96 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getVendedor())) {
|
- | |
| - | 96 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getSequencialVendedor())) { |
|
| 97 | sql.append("AND e.vendedor.sequencial = :sequencialVendedor ");
|
97 | sql.append("AND e.vendedor.sequencial = :sequencialVendedor "); |
| 98 | }
|
98 | }
|
| - | 99 | /*
|
|
| 99 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicacao())) {
|
100 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicacao())) {
|
| 100 | sql.append("AND e.indicacao.sequencial = :sequencialIndicacao ");
|
101 | sql.append("AND e.indicacao.sequencial = :sequencialIndicacao ");
|
| 101 | }
|
102 | }
|
| 102 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicadorComissionado())) {
|
103 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicadorComissionado())) {
|
| 103 | sql.append("AND l.produto.indicadorComissionado = :indicadorComissionado ");
|
104 | sql.append("AND l.produto.indicadorComissionado = :indicadorComissionado ");
|
| Line 147... | Line 148... | ||
| 147 | query.setParameter("sequencialLoja", parametros.getSequencialLoja()); |
148 | query.setParameter("sequencialLoja", parametros.getSequencialLoja()); |
| 148 | }
|
149 | }
|
| 149 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getTipoSituacaoVenda())) { |
150 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getTipoSituacaoVenda())) { |
| 150 | query.setParameter("tipoSituacao", parametros.getTipoSituacaoVenda()); |
151 | query.setParameter("tipoSituacao", parametros.getTipoSituacaoVenda()); |
| 151 | }
|
152 | }
|
| 152 | /*
|
- | |
| 153 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getVendedor())) {
|
- | |
| 154 | query.setParameter("sequencialVendedor", parametros.getVendedor().getSequencial());
|
- | |
| - | 153 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getSequencialVendedor())) { |
|
| - | 154 | query.setParameter("sequencialVendedor", parametros.getSequencialVendedor()); |
|
| 155 | }
|
155 | }
|
| - | 156 | /*
|
|
| 156 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicacao())) {
|
157 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicacao())) {
|
| 157 | query.setParameter("sequencialIndicacao", parametros.getIndicacao().getSequencial());
|
158 | query.setParameter("sequencialIndicacao", parametros.getIndicacao().getSequencial());
|
| 158 | }
|
159 | }
|
| 159 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicadorComissionado())) {
|
160 | if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicadorComissionado())) {
|
| 160 | query.setParameter("indicadorComissionado", parametros.getIndicadorComissionado());
|
161 | query.setParameter("indicadorComissionado", parametros.getIndicadorComissionado());
|
| Line 459... | Line 460... | ||
| 459 | sql.append("WHERE v.formaPagamento.codigo != "); |
460 | sql.append("WHERE v.formaPagamento.codigo != "); |
| 460 | sql.append(ConstantesSEC.FormasDePagamento.FORMAPAGAMENTO_CUPOM); |
461 | sql.append(ConstantesSEC.FormasDePagamento.FORMAPAGAMENTO_CUPOM); |
| 461 | sql.append(" "); |
462 | sql.append(" "); |
| 462 | try { |
463 | try { |
| 463 | sql = setarParametrosFormasDePagamento(sql, formasDePagamento); |
464 | sql = setarParametrosFormasDePagamento(sql, formasDePagamento); |
| - | 465 | sql = setarParametrosLojasSelecionadas(sql, parametrosConsultaVendas.getLojasSelecionadasDTO()); |
|
| 464 | setarStringParametrosConsulta(sql, parametrosConsultaVendas); |
466 | setarStringParametrosConsulta(sql, parametrosConsultaVendas); |
| 465 | TypedQuery<Double> query = getEntityManager().createQuery(sql.toString(), Double.class); |
467 | TypedQuery<Double> query = getEntityManager().createQuery(sql.toString(), Double.class); |
| 466 | setarQueryParametrosConsulta(query, parametrosConsultaVendas); |
468 | setarQueryParametrosConsulta(query, parametrosConsultaVendas); |
| 467 | 469 | ||
| 468 | Double total = query.getSingleResult(); |
470 | Double total = query.getSingleResult(); |
| Line 473... | Line 475... | ||
| 473 | } catch(Exception ex) { |
475 | } catch(Exception ex) { |
| 474 | ex.printStackTrace(); |
476 | ex.printStackTrace(); |
| 475 | return null; |
477 | return null; |
| 476 | }
|
478 | }
|
| 477 | }
|
479 | }
|
| 478 | - | ||
| - | 480 | ||
| 479 | private StringBuilder setarParametrosFormasDePagamento(StringBuilder sql, List<FormaPagamentoDTO> formasPagamento) { |
481 | private StringBuilder setarParametrosFormasDePagamento(StringBuilder sql, List<FormaPagamentoDTO> formasPagamento) { |
| 480 | // if (VerificadorUtil.isListaComElementos(formasPagamento)) {
|
- | |
| 481 | if (VerificadorUtil.naoEstaNuloOuVazio(formasPagamento)) { |
482 | if (VerificadorUtil.naoEstaNuloOuVazio(formasPagamento)) { |
| 482 | sql.append("AND v.formaPagamento.codigo IN ("); |
483 | sql.append("AND v.formaPagamento.codigo IN ("); |
| 483 | for (FormaPagamentoDTO formaPagamento : formasPagamento) { |
484 | for (FormaPagamentoDTO formaPagamento : formasPagamento) { |
| 484 | if (!formaPagamento.formaPagamentoEhCupom()) { |
485 | if (!formaPagamento.formaPagamentoEhCupom()) { |
| 485 | sql.append(formaPagamento.getCodigo() + ","); |
486 | sql.append(formaPagamento.getCodigo() + ","); |
| Line 487... | Line 488... | ||
| 487 | }
|
488 | }
|
| 488 | sql.append(") "); |
489 | sql.append(") "); |
| 489 | }
|
490 | }
|
| 490 | return new StringBuilder(sql.toString().replace(",)", ")")); |
491 | return new StringBuilder(sql.toString().replace(",)", ")")); |
| 491 | }
|
492 | }
|
| - | 493 | ||
| - | 494 | private StringBuilder setarParametrosLojasSelecionadas(StringBuilder sql, List<LojaDTO> lojasSelecionadas) { |
|
| - | 495 | if (VerificadorUtil.naoEstaNuloOuVazio(lojasSelecionadas)) { |
|
| - | 496 | sql.append("AND v.venda.loja.sequencial IN ("); |
|
| - | 497 | for (LojaDTO loja : lojasSelecionadas) { |
|
| - | 498 | sql.append(loja.getSequencial() + ","); |
|
| - | 499 | }
|
|
| - | 500 | sql.append(") "); |
|
| - | 501 | }
|
|
| - | 502 | return new StringBuilder(sql.toString().replace(",)", ")")); |
|
| - | 503 | }
|
|
| - | 504 | ||
| 492 | /*
|
505 | /*
|
| 493 | @Override
|
506 | @Override
|
| 494 | public Double obterValorTotalLiquidoDeVendasPorLojaEePeriodo(ParametrosConsultaVendasDTO parametrosConsulta) {
|
507 | public Double obterValorTotalLiquidoDeVendasPorLojaEePeriodo(ParametrosConsultaVendasDTO parametrosConsulta) {
|
| 495 | StringBuilder sql = new StringBuilder();
|
508 | StringBuilder sql = new StringBuilder();
|
| 496 | sql.append("SELECT SUM(e.valor) FROM Parcela e ");
|
509 | sql.append("SELECT SUM(e.valor) FROM Parcela e ");
|