Rev 282 | Rev 296 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 282 | Rev 294 | ||
|---|---|---|---|
| Line 11... | Line 11... | ||
| 11 | import br.com.ec.core.util.VerificadorUtil; |
11 | import br.com.ec.core.util.VerificadorUtil; |
| 12 | import br.com.ec.domain.dto.ParcelaDTO; |
12 | import br.com.ec.domain.dto.ParcelaDTO; |
| 13 | import br.com.ec.domain.dto.consulta.ParametrosConsultaParcelasDTO; |
13 | import br.com.ec.domain.dto.consulta.ParametrosConsultaParcelasDTO; |
| 14 | import br.com.ec.domain.model.Parcela; |
14 | import br.com.ec.domain.model.Parcela; |
| 15 | import br.com.ec.domain.model.tipos.TipoCartao; |
15 | import br.com.ec.domain.model.tipos.TipoCartao; |
| - | 16 | import br.com.ec.domain.shared.ConstantesSEC; |
|
| 16 | import br.com.ec.repository.ParcelaRepository; |
17 | import br.com.ec.repository.ParcelaRepository; |
| 17 | import br.com.ec.repository.SistemaAbstractRepository; |
18 | import br.com.ec.repository.SistemaAbstractRepository; |
| 18 | 19 | ||
| 19 | @Repository |
20 | @Repository |
| 20 | public class ParcelaRepositoryJpaImpl extends SistemaAbstractRepository<Parcela> implements ParcelaRepository { |
21 | public class ParcelaRepositoryJpaImpl extends SistemaAbstractRepository<Parcela> implements ParcelaRepository { |
| Line 25... | Line 26... | ||
| 25 | }
|
26 | }
|
| 26 | 27 | ||
| 27 | @Override |
28 | @Override |
| 28 | public List<ParcelaDTO> consultarParcelas(ParametrosConsultaParcelasDTO parametrosConsultaParcelasDTO) { |
29 | public List<ParcelaDTO> consultarParcelas(ParametrosConsultaParcelasDTO parametrosConsultaParcelasDTO) { |
| 29 | StringBuilder sql = new StringBuilder(); |
30 | StringBuilder sql = new StringBuilder(); |
| 30 | sql.append("SELECT new br.com.ec.domain.dto.ParcelaDTO(p.sequencial, p.contaBancaria.sequencial, p.contaBancaria.descricao, p.contaBancaria.ativo, "); |
- | |
| - | 31 | sql.append("SELECT new br.com.ec.domain.dto.ParcelaDTO(p.sequencial, p.contaBancaria.sequencial, p.contaBancaria.descricao, p.contaBancaria.tipoContaBancaria, p.contaBancaria.ativo, "); |
|
| 31 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
32 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
| 32 | sql.append("WHERE 1=1 "); |
33 | sql.append("WHERE 1=1 "); |
| 33 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getTipoBusca())) { |
34 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getTipoBusca())) { |
| 34 | sql.append("AND p.conta.tipoConta = :tipoConta "); |
35 | sql.append("AND p.conta.tipoConta = :tipoConta "); |
| 35 | }
|
36 | }
|
| 36 | - | ||
| - | 37 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getSequencialCategoria())) { |
|
| - | 38 | sql.append("AND p.conta.categoria.sequencial = :sequencialCategoria "); |
|
| - | 39 | }
|
|
| 37 | if (parametrosConsultaParcelasDTO.getPagamentoRealizado()) { |
40 | if (parametrosConsultaParcelasDTO.getPagamentoRealizado()) { |
| 38 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getDataInicial()) && |
41 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getDataInicial()) && |
| 39 | VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getDataFinal())) { |
42 | VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getDataFinal())) { |
| 40 | sql.append("AND p.dataPagamento is not null "); |
43 | sql.append("AND p.dataPagamento is not null "); |
| 41 | sql.append("AND p.dataPagamento >= :dataInicial AND p.dataPagamento <= :dataFinal "); |
44 | sql.append("AND p.dataPagamento >= :dataInicial AND p.dataPagamento <= :dataFinal "); |
| Line 44... | Line 47... | ||
| 44 | sql.append("ORDER BY p.dataVencimento "); |
47 | sql.append("ORDER BY p.dataVencimento "); |
| 45 | try { |
48 | try { |
| 46 | TypedQuery<ParcelaDTO> query = getEntityManager().createQuery(sql.toString(), ParcelaDTO.class); |
49 | TypedQuery<ParcelaDTO> query = getEntityManager().createQuery(sql.toString(), ParcelaDTO.class); |
| 47 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getTipoBusca())) { |
50 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getTipoBusca())) { |
| 48 | query.setParameter("tipoConta", parametrosConsultaParcelasDTO.getTipoBusca()); |
51 | query.setParameter("tipoConta", parametrosConsultaParcelasDTO.getTipoBusca()); |
| - | 52 | }
|
|
| - | 53 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getSequencialCategoria())) { |
|
| - | 54 | query.setParameter("sequencialCategoria", parametrosConsultaParcelasDTO.getSequencialCategoria()); |
|
| 49 | }
|
55 | }
|
| 50 | if (parametrosConsultaParcelasDTO.getPagamentoRealizado()) { |
56 | if (parametrosConsultaParcelasDTO.getPagamentoRealizado()) { |
| 51 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getDataInicial()) && |
57 | if (VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getDataInicial()) && |
| 52 | VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getDataFinal())) { |
58 | VerificadorUtil.naoEstaNulo(parametrosConsultaParcelasDTO.getDataFinal())) { |
| 53 | query.setParameter("dataInicial", parametrosConsultaParcelasDTO.getDataInicial()); |
59 | query.setParameter("dataInicial", parametrosConsultaParcelasDTO.getDataInicial()); |
| Line 62... | Line 68... | ||
| 62 | }
|
68 | }
|
| 63 | 69 | ||
| 64 | @Override |
70 | @Override |
| 65 | public List<ParcelaDTO> consultarParcelasAReceber(Long sequencialContaBancaria, Date dataRecebimento, TipoCartao tipoCartao) { |
71 | public List<ParcelaDTO> consultarParcelasAReceber(Long sequencialContaBancaria, Date dataRecebimento, TipoCartao tipoCartao) { |
| 66 | StringBuilder sql = new StringBuilder(); |
72 | StringBuilder sql = new StringBuilder(); |
| 67 | sql.append("SELECT new br.com.ec.domain.dto.ParcelaDTO(p.sequencial, p.contaBancaria.sequencial, p.contaBancaria.descricao, p.contaBancaria.ativo, "); |
- | |
| - | 73 | sql.append("SELECT new br.com.ec.domain.dto.ParcelaDTO(p.sequencial, p.contaBancaria.sequencial, p.contaBancaria.descricao, p.contaBancaria.tipoContaBancaria, p.contaBancaria.ativo, "); |
|
| 68 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
74 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
| 69 | sql.append("WHERE p.contaBancaria.sequencial = :sequencialContaBancaria "); |
75 | sql.append("WHERE p.contaBancaria.sequencial = :sequencialContaBancaria "); |
| 70 | sql.append("AND p.dataVencimento = :dataVencimento "); |
76 | sql.append("AND p.dataVencimento = :dataVencimento "); |
| 71 | sql.append("AND p.observacao like UPPER(:observacao) "); |
77 | sql.append("AND p.observacao like UPPER(:observacao) "); |
| 72 | sql.append("AND p.dataPagamento is null "); |
78 | sql.append("AND p.dataPagamento is null "); |
| 73 | sql.append("ORDER BY p.dataVencimento "); |
79 | sql.append("ORDER BY p.dataVencimento "); |
| 74 | try { |
80 | try { |
| 75 | return getEntityManager().createQuery(sql.toString(), ParcelaDTO.class) |
81 | return getEntityManager().createQuery(sql.toString(), ParcelaDTO.class) |
| 76 | .setParameter("sequencialContaBancaria", sequencialContaBancaria) |
82 | .setParameter("sequencialContaBancaria", sequencialContaBancaria) |
| 77 | .setParameter("dataVencimento", dataRecebimento) |
83 | .setParameter("dataVencimento", dataRecebimento) |
| 78 | .setParameter("observacao", StringUtil.setarUpperCase("%" + tipoCartao.getDescricao() + "%")) |
- | |
| - | 84 | .setParameter("observacao", StringUtil.setarUpperCase("%" + tipoCartao.getDescricao() + "%" + "VENDA" + "%")) |
|
| 79 | .getResultList(); |
85 | .getResultList(); |
| 80 | } catch(Exception ex) { |
86 | } catch(Exception ex) { |
| 81 | ex.printStackTrace(); |
87 | ex.printStackTrace(); |
| 82 | return null; |
88 | return null; |
| 83 | }
|
89 | }
|
| 84 | }
|
90 | }
|
| 85 | 91 | ||
| 86 | @Override |
92 | @Override |
| 87 | public List<ParcelaDTO> consultarParcelasRecebidas(Long sequencialContaBancaria, Date dataRecebimento, TipoCartao tipoCartao) { |
93 | public List<ParcelaDTO> consultarParcelasRecebidas(Long sequencialContaBancaria, Date dataRecebimento, TipoCartao tipoCartao) { |
| 88 | StringBuilder sql = new StringBuilder(); |
94 | StringBuilder sql = new StringBuilder(); |
| 89 | sql.append("SELECT new br.com.ec.domain.dto.ParcelaDTO(p.sequencial, p.contaBancaria.sequencial, p.contaBancaria.descricao, p.contaBancaria.ativo, "); |
- | |
| - | 95 | sql.append("SELECT new br.com.ec.domain.dto.ParcelaDTO(p.sequencial, p.contaBancaria.sequencial, p.contaBancaria.descricao, p.contaBancaria.tipoContaBancaria, p.contaBancaria.ativo, "); |
|
| 90 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
96 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
| 91 | sql.append("WHERE p.contaBancaria.sequencial = :sequencialContaBancaria "); |
97 | sql.append("WHERE p.contaBancaria.sequencial = :sequencialContaBancaria "); |
| 92 | sql.append("AND p.dataVencimento = :dataVencimento "); |
- | |
| - | 98 | sql.append("AND p.dataPagamento = :dataPagamento "); |
|
| 93 | sql.append("AND p.observacao like UPPER(:observacao) "); |
99 | sql.append("AND p.observacao like UPPER(:observacao) "); |
| 94 | sql.append("AND p.dataPagamento is not null "); |
- | |
| 95 | sql.append("ORDER BY p.dataVencimento "); |
100 | sql.append("ORDER BY p.dataVencimento "); |
| 96 | try { |
101 | try { |
| 97 | return getEntityManager().createQuery(sql.toString(), ParcelaDTO.class) |
102 | return getEntityManager().createQuery(sql.toString(), ParcelaDTO.class) |
| 98 | .setParameter("sequencialContaBancaria", sequencialContaBancaria) |
103 | .setParameter("sequencialContaBancaria", sequencialContaBancaria) |
| 99 | .setParameter("dataVencimento", dataRecebimento) |
- | |
| 100 | .setParameter("observacao", StringUtil.setarUpperCase("%" + tipoCartao.getDescricao() + "%")) |
- | |
| - | 104 | .setParameter("dataPagamento", dataRecebimento) |
|
| - | 105 | .setParameter("observacao", StringUtil.setarUpperCase("%" + tipoCartao.getDescricao() + "%" + "VENDA" + "%")) |
|
| 101 | .getResultList(); |
106 | .getResultList(); |
| 102 | } catch(Exception ex) { |
107 | } catch(Exception ex) { |
| 103 | ex.printStackTrace(); |
108 | ex.printStackTrace(); |
| 104 | return null; |
109 | return null; |
| 105 | }
|
110 | }
|