Subversion Repositories Integrator Subversion

Rev

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
                }