Subversion Repositories Integrator Subversion

Rev

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 ");