Subversion Repositories Integrator Subversion

Rev

Rev 694 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 694 Rev 705
Line 62... Line 62...
62
        public Double obterValorTotalBrutoDeVendas(ParametrosConsultaVendasDTO parametrosConsultaVendasDTO) {
62
        public Double obterValorTotalBrutoDeVendas(ParametrosConsultaVendasDTO parametrosConsultaVendasDTO) {
63
                StringBuilder sql = new StringBuilder();
63
                StringBuilder sql = new StringBuilder();
64
                sql.append("SELECT SUM(l.valorVenda) FROM Venda e ");
64
                sql.append("SELECT SUM(l.valorVenda) FROM Venda e ");
65
                sql.append("LEFT JOIN e.listaLancamentos l ");
65
                sql.append("LEFT JOIN e.listaLancamentos l ");
66
                sql.append("WHERE l.ativo IS TRUE ");
66
                sql.append("WHERE l.ativo IS TRUE ");
-
 
67
                StringBuilder sqlLojas = new StringBuilder();
-
 
68
                if (VerificadorUtil.naoEstaNuloOuVazio(parametrosConsultaVendasDTO.getLojasSelecionadasDTO())) {
-
 
69
                        sqlLojas.append("AND e.loja.sequencial IN (");
-
 
70
                        for (LojaDTO loja : parametrosConsultaVendasDTO.getLojasSelecionadasDTO()) {
-
 
71
                                sqlLojas.append(loja.getSequencial() + ",");
-
 
72
                        }
-
 
73
                        sqlLojas.append(") ");
-
 
74
                }
-
 
75
                sql.append(new StringBuilder(sqlLojas.toString().replace(",)", ")")));
-
 
76
                if (VerificadorUtil.naoEstaNuloOuVazio(parametrosConsultaVendasDTO.getVendedorSelecionado())) {
-
 
77
                        sql.append("AND e.vendedor.sequencial = :sequencialVendedor ");
-
 
78
                }
67
                setarStringParametrosConsulta(sql, parametrosConsultaVendasDTO);
79
                setarStringParametrosConsulta(sql, parametrosConsultaVendasDTO);
68
                try {
80
                try {
69
                        TypedQuery<Double> query = getEntityManager().createQuery(sql.toString(), Double.class);
81
                        TypedQuery<Double> query = getEntityManager().createQuery(sql.toString(), Double.class);
70
                        setarQueryParametrosConsulta(query, parametrosConsultaVendasDTO);
82
                        setarQueryParametrosConsulta(query, parametrosConsultaVendasDTO);
-
 
83
                        if (VerificadorUtil.naoEstaNuloOuVazio(parametrosConsultaVendasDTO.getVendedorSelecionado())) {
-
 
84
                                query.setParameter("sequencialVendedor", parametrosConsultaVendasDTO.getVendedorSelecionado().getSequencial());
-
 
85
                        }
71
                        Double total = query.getSingleResult();
86
                        Double total = query.getSingleResult();
72
                        if (VerificadorUtil.estaNulo(total)) {
87
                        if (VerificadorUtil.estaNulo(total)) {
73
                                return new Double(0.0);
88
                                return new Double(0.0);
74
                        }
89
                        }
75
                        return total;
90
                        return total;
Line 88... Line 103...
88
                sql.append(ConstantesSEC.FormasDePagamento.FORMAPAGAMENTO_CUPOM);
103
                sql.append(ConstantesSEC.FormasDePagamento.FORMAPAGAMENTO_CUPOM);
89
                sql.append(", ");
104
                sql.append(", ");
90
                sql.append(ConstantesSEC.FormasDePagamento.FORMAPAGAMENTO_CASHBACK_28);
105
                sql.append(ConstantesSEC.FormasDePagamento.FORMAPAGAMENTO_CASHBACK_28);
91
                sql.append(") ");
106
                sql.append(") ");
92
                parametrosConsultaVendasDTO.setIndicadorComissionado(null);
107
                parametrosConsultaVendasDTO.setIndicadorComissionado(null);
93
//              parametrosConsultaVendasDTO.setTipoProduto(null);
-
 
-
 
108
                parametrosConsultaVendasDTO.setTipoProduto(null);
94
                setarStringParametrosConsulta(sql, parametrosConsultaVendasDTO);
109
                setarStringParametrosConsulta(sql, parametrosConsultaVendasDTO);
95
                try {
110
                try {
96
                        TypedQuery<Double> query = getEntityManager().createQuery(sql.toString(), Double.class);
111
                        TypedQuery<Double> query = getEntityManager().createQuery(sql.toString(), Double.class);
97
                        setarQueryParametrosConsulta(query, parametrosConsultaVendasDTO);
112
                        setarQueryParametrosConsulta(query, parametrosConsultaVendasDTO);
98
                        Double total = query.getSingleResult();
113
                        Double total = query.getSingleResult();
Line 148... Line 163...
148
                }
163
                }
149
                */
164
                */
150
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicadorComissionado())) {
165
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicadorComissionado())) {
151
                        sql.append("AND l.produto.indicadorComissionado = :indicadorComissionado ");
166
                        sql.append("AND l.produto.indicadorComissionado = :indicadorComissionado ");
152
                }
167
                }
153
                /*
-
 
154
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getTipoProduto())) {
168
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getTipoProduto())) {
155
                        sql.append("AND l.produto.tipo = :tipoProduto ");
169
                        sql.append("AND l.produto.tipo = :tipoProduto ");
156
                }
170
                }
-
 
171
                /*
157
                //TODO: VERIFICAR LANÇAMENTOS COM MAIS PAGAMENTOS QUE LANÇAMENTOS
172
                //TODO: VERIFICAR LANÇAMENTOS COM MAIS PAGAMENTOS QUE LANÇAMENTOS
158
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getSituacaoFinanceiraVenda())) {
173
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getSituacaoFinanceiraVenda())) {
159
                        if (parametros.getSituacaoFinanceiraVenda().equals(br.com.ec.domain.model.tipos.TipoSituacaoFinanceira.NENHUMA.getValor())) {
174
                        if (parametros.getSituacaoFinanceiraVenda().equals(br.com.ec.domain.model.tipos.TipoSituacaoFinanceira.NENHUMA.getValor())) {
160
                                sql.append("AND (SELECT COUNT(c) FROM Conta c WHERE c.venda = e) = 0 ");
175
                                sql.append("AND (SELECT COUNT(c) FROM Conta c WHERE c.venda = e) = 0 ");
161
//                                      sql.append("AND ((SELECT COUNT(vf) FROM VendaFormaPagamento vf WHERE vf.venda = e) > (SELECT COUNT(cr) FROM ContaAReceber cr WHERE cr.venda = e)) ");
176
//                                      sql.append("AND ((SELECT COUNT(vf) FROM VendaFormaPagamento vf WHERE vf.venda = e) > (SELECT COUNT(cr) FROM ContaAReceber cr WHERE cr.venda = e)) ");
Line 201... Line 216...
201
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getSequencialVendedor())) {
216
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getSequencialVendedor())) {
202
                        query.setParameter("sequencialVendedor", parametros.getSequencialVendedor());
217
                        query.setParameter("sequencialVendedor", parametros.getSequencialVendedor());
203
                }
218
                }
204
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicadorComissionado())) {
219
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicadorComissionado())) {
205
                        query.setParameter("indicadorComissionado", parametros.getIndicadorComissionado());
220
                        query.setParameter("indicadorComissionado", parametros.getIndicadorComissionado());
-
 
221
                }
-
 
222
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getTipoProduto())) {
-
 
223
                        query.setParameter("tipoProduto", parametros.getTipoProduto());
206
                }
224
                }
207
                /*
225
                /*
208
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicacao())) {
226
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getIndicacao())) {
209
                        query.setParameter("sequencialIndicacao", parametros.getIndicacao().getSequencial());
227
                        query.setParameter("sequencialIndicacao", parametros.getIndicacao().getSequencial());
210
                }
-
 
211
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getTipoProduto())) {
-
 
212
                        query.setParameter("tipoProduto", parametros.getTipoProduto());
-
 
213
                }
228
                }
214
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getFormaPagamento())) {
229
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getFormaPagamento())) {
215
                        query.setParameter("codigoFormaPagamento", parametros.getFormaPagamento().getCodigo());
230
                        query.setParameter("codigoFormaPagamento", parametros.getFormaPagamento().getCodigo());
216
                }
231
                }
217
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getBandeiraCartao())) {
232
                if (VerificadorUtil.naoEstaNuloOuVazio(parametros.getBandeiraCartao())) {
Line 812... Line 827...
812
                sql.append("LEFT JOIN vp.formaPagamento f ");
827
                sql.append("LEFT JOIN vp.formaPagamento f ");
813
                sql.append("WHERE vp.formaPagamento.codigo != ");
828
                sql.append("WHERE vp.formaPagamento.codigo != ");
814
                sql.append(ConstantesSEC.FormasDePagamento.FORMAPAGAMENTO_CUPOM);
829
                sql.append(ConstantesSEC.FormasDePagamento.FORMAPAGAMENTO_CUPOM);
815
                sql.append(" ");
830
                sql.append(" ");
816
                try {
831
                try {
-
 
832
                        parametrosConsultaVendas.setTipoProduto(null);
817
                        sql = setarParametrosFormasDePagamento(sql, formasDePagamento);
833
                        sql = setarParametrosFormasDePagamento(sql, formasDePagamento);
818
                        sql = setarParametrosLojasSelecionadas(sql, parametrosConsultaVendas.getLojasSelecionadasDTO());
834
                        sql = setarParametrosLojasSelecionadas(sql, parametrosConsultaVendas.getLojasSelecionadasDTO());
819
                        if (VerificadorUtil.naoEstaNuloOuVazio(parametrosConsultaVendas.getVendedorSelecionado())) {
835
                        if (VerificadorUtil.naoEstaNuloOuVazio(parametrosConsultaVendas.getVendedorSelecionado())) {
820
                                sql.append("AND e.vendedor.sequencial = :sequencialVendedor ");
836
                                sql.append("AND e.vendedor.sequencial = :sequencialVendedor ");
821
                        }
837
                        }