Rev 294 | Rev 297 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 294 | Rev 296 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | package br.com.ec.repository.jpa; |
1 | package br.com.ec.repository.jpa; |
| 2 | 2 | ||
| 3 | import java.util.Date; |
3 | import java.util.Date; |
| 4 | import java.util.List; |
4 | import java.util.List; |
| 5 | 5 | ||
| - | 6 | import javax.persistence.Query; |
|
| 6 | import javax.persistence.TypedQuery; |
7 | import javax.persistence.TypedQuery; |
| 7 | 8 | ||
| 8 | import org.springframework.stereotype.Repository; |
9 | import org.springframework.stereotype.Repository; |
| 9 | 10 | ||
| 10 | import br.com.ec.core.util.StringUtil; |
- | |
| - | 11 | import br.com.ec.core.consulta.ParametrosConsulta; |
|
| 11 | import br.com.ec.core.util.VerificadorUtil; |
12 | import br.com.ec.core.util.VerificadorUtil; |
| - | 13 | import br.com.ec.domain.dto.FormaPagamentoDTO; |
|
| 12 | import br.com.ec.domain.dto.ParcelaDTO; |
14 | import br.com.ec.domain.dto.ParcelaDTO; |
| - | 15 | import br.com.ec.domain.dto.consulta.ParametrosConsultaLancamentosDTO; |
|
| 13 | import br.com.ec.domain.dto.consulta.ParametrosConsultaParcelasDTO; |
16 | import br.com.ec.domain.dto.consulta.ParametrosConsultaParcelasDTO; |
| 14 | import br.com.ec.domain.model.Parcela; |
17 | import br.com.ec.domain.model.Parcela; |
| 15 | import br.com.ec.domain.model.tipos.TipoCartao; |
- | |
| 16 | import br.com.ec.domain.shared.ConstantesSEC; |
- | |
| 17 | import br.com.ec.repository.ParcelaRepository; |
18 | import br.com.ec.repository.ParcelaRepository; |
| 18 | import br.com.ec.repository.SistemaAbstractRepository; |
19 | import br.com.ec.repository.SistemaAbstractRepository; |
| 19 | 20 | ||
| 20 | @Repository |
21 | @Repository |
| 21 | public class ParcelaRepositoryJpaImpl extends SistemaAbstractRepository<Parcela> implements ParcelaRepository { |
22 | public class ParcelaRepositoryJpaImpl extends SistemaAbstractRepository<Parcela> implements ParcelaRepository { |
| Line 66... | Line 67... | ||
| 66 | return null; |
67 | return null; |
| 67 | }
|
68 | }
|
| 68 | }
|
69 | }
|
| 69 | 70 | ||
| 70 | @Override |
71 | @Override |
| 71 | public List<ParcelaDTO> consultarParcelasAReceber(Long sequencialContaBancaria, Date dataRecebimento, TipoCartao tipoCartao) { |
- | |
| - | 72 | public List<ParcelaDTO> consultarParcelasAReceber(Long sequencialContaBancaria, Date dataRecebimento, List<FormaPagamentoDTO> formasDePagamento) { |
|
| 72 | StringBuilder sql = new StringBuilder(); |
73 | StringBuilder sql = new StringBuilder(); |
| 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, "); |
74 | sql.append("SELECT new br.com.ec.domain.dto.ParcelaDTO(p.sequencial, p.contaBancaria.sequencial, p.contaBancaria.descricao, p.contaBancaria.tipoContaBancaria, p.contaBancaria.ativo, "); |
| 74 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
75 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
| 75 | sql.append("WHERE p.contaBancaria.sequencial = :sequencialContaBancaria "); |
76 | sql.append("WHERE p.contaBancaria.sequencial = :sequencialContaBancaria "); |
| 76 | sql.append("AND p.dataVencimento = :dataVencimento "); |
77 | sql.append("AND p.dataVencimento = :dataVencimento "); |
| 77 | sql.append("AND p.observacao like UPPER(:observacao) "); |
- | |
| - | 78 | sql.append(setarParametrosFormasDePagamento("p", formasDePagamento)); |
|
| 78 | sql.append("AND p.dataPagamento is null "); |
79 | sql.append("AND p.dataPagamento is null "); |
| 79 | sql.append("ORDER BY p.dataVencimento "); |
80 | sql.append("ORDER BY p.dataVencimento "); |
| 80 | try { |
81 | try { |
| 81 | return getEntityManager().createQuery(sql.toString(), ParcelaDTO.class) |
82 | return getEntityManager().createQuery(sql.toString(), ParcelaDTO.class) |
| 82 | .setParameter("sequencialContaBancaria", sequencialContaBancaria) |
83 | .setParameter("sequencialContaBancaria", sequencialContaBancaria) |
| 83 | .setParameter("dataVencimento", dataRecebimento) |
84 | .setParameter("dataVencimento", dataRecebimento) |
| 84 | .setParameter("observacao", StringUtil.setarUpperCase("%" + tipoCartao.getDescricao() + "%" + "VENDA" + "%")) |
- | |
| 85 | .getResultList(); |
85 | .getResultList(); |
| 86 | } catch(Exception ex) { |
86 | } catch(Exception ex) { |
| 87 | ex.printStackTrace(); |
87 | ex.printStackTrace(); |
| 88 | return null; |
88 | return null; |
| 89 | }
|
89 | }
|
| 90 | }
|
90 | }
|
| 91 | 91 | ||
| 92 | @Override |
92 | @Override |
| 93 | public List<ParcelaDTO> consultarParcelasRecebidas(Long sequencialContaBancaria, Date dataRecebimento, TipoCartao tipoCartao) { |
- | |
| - | 93 | public List<ParcelaDTO> consultarParcelasRecebidas(Long sequencialContaBancaria, Date dataRecebimento, List<FormaPagamentoDTO> formasDePagamento) { |
|
| 94 | StringBuilder sql = new StringBuilder(); |
94 | StringBuilder sql = new StringBuilder(); |
| 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, "); |
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, "); |
| 96 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
96 | sql.append("p.dataPagamento, p.valor, p.observacao) FROM Parcela p "); |
| 97 | sql.append("WHERE p.contaBancaria.sequencial = :sequencialContaBancaria "); |
97 | sql.append("WHERE p.contaBancaria.sequencial = :sequencialContaBancaria "); |
| 98 | sql.append("AND p.dataPagamento = :dataPagamento "); |
98 | sql.append("AND p.dataPagamento = :dataPagamento "); |
| 99 | sql.append("AND p.observacao like UPPER(:observacao) "); |
- | |
| - | 99 | sql.append(setarParametrosFormasDePagamento("p", formasDePagamento)); |
|
| 100 | sql.append("ORDER BY p.dataVencimento "); |
100 | sql.append("ORDER BY p.dataVencimento "); |
| 101 | try { |
101 | try { |
| 102 | return getEntityManager().createQuery(sql.toString(), ParcelaDTO.class) |
102 | return getEntityManager().createQuery(sql.toString(), ParcelaDTO.class) |
| 103 | .setParameter("sequencialContaBancaria", sequencialContaBancaria) |
103 | .setParameter("sequencialContaBancaria", sequencialContaBancaria) |
| 104 | .setParameter("dataPagamento", dataRecebimento) |
104 | .setParameter("dataPagamento", dataRecebimento) |
| 105 | .setParameter("observacao", StringUtil.setarUpperCase("%" + tipoCartao.getDescricao() + "%" + "VENDA" + "%")) |
- | |
| 106 | .getResultList(); |
105 | .getResultList(); |
| 107 | } catch(Exception ex) { |
106 | } catch(Exception ex) { |
| 108 | ex.printStackTrace(); |
107 | ex.printStackTrace(); |
| 109 | return null; |
108 | return null; |
| 110 | }
|
109 | }
|
| - | 110 | }
|
|
| - | 111 | ||
| - | 112 | private String setarParametrosFormasDePagamento(String nomeTabela, List<FormaPagamentoDTO> formasPagamento) { |
|
| - | 113 | StringBuilder sql = new StringBuilder(); |
|
| - | 114 | if (VerificadorUtil.isListaComElementos(formasPagamento)) { |
|
| - | 115 | sql.append("AND "); |
|
| - | 116 | sql.append(nomeTabela); |
|
| - | 117 | sql.append(".formaPagamento.codigo IN ("); |
|
| - | 118 | for (FormaPagamentoDTO formaPagamento : formasPagamento) { |
|
| - | 119 | sql.append(formaPagamento.getCodigo() + ","); |
|
| - | 120 | }
|
|
| - | 121 | sql.append(") "); |
|
| - | 122 | }
|
|
| - | 123 | return sql.toString().replace(",)", ")"); |
|
| - | 124 | }
|
|
| - | 125 | ||
| - | 126 | @Override |
|
| - | 127 | public void alterarDataPagamento(Long sequencialParcela, Date dataPagamento) { |
|
| - | 128 | StringBuilder sql = new StringBuilder(); |
|
| - | 129 | sql.append("UPDATE Parcela parcela SET parcela.dataPagamento = :dataPagamento "); |
|
| - | 130 | sql.append("WHERE parcela.sequencial = :sequencialParcela "); |
|
| - | 131 | try { |
|
| - | 132 | getEntityManager().createQuery(sql.toString()) |
|
| - | 133 | .setParameter("dataPagamento", dataPagamento) |
|
| - | 134 | .setParameter("sequencialParcela", sequencialParcela) |
|
| - | 135 | .executeUpdate(); |
|
| - | 136 | getEntityManager().flush(); |
|
| - | 137 | } catch(Exception ex) { |
|
| - | 138 | ex.printStackTrace(); |
|
| - | 139 | }
|
|
| - | 140 | }
|
|
| - | 141 | ||
| - | 142 | @Override |
|
| - | 143 | public Double obterValorPassandoParametrosConsulta(ParametrosConsulta<Parcela> parametrosConsulta) { |
|
| - | 144 | StringBuilder sql = new StringBuilder(); |
|
| - | 145 | sql.append("SELECT DISTINCT SUM(e.valor) FROM Parcela e "); |
|
| - | 146 | sql.append("WHERE e.indicadorAtivo is true "); |
|
| - | 147 | try { |
|
| - | 148 | setarStringParametrosConsulta(sql, parametrosConsulta); |
|
| - | 149 | TypedQuery<Double> query = getEntityManager().createQuery(sql.toString(), Double.class); |
|
| - | 150 | setarQueryParametrosConsulta(query, parametrosConsulta); |
|
| - | 151 | return query.getSingleResult(); |
|
| - | 152 | } catch(Exception ex) { |
|
| - | 153 | ex.printStackTrace(); |
|
| - | 154 | return null; |
|
| - | 155 | }
|
|
| - | 156 | }
|
|
| - | 157 | ||
| - | 158 | @Override |
|
| - | 159 | protected void setarStringParametrosConsulta(StringBuilder sql, ParametrosConsulta<Parcela> parametrosConsulta) { |
|
| - | 160 | if (VerificadorUtil.naoEstaNulo(parametrosConsulta)) { |
|
| - | 161 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getVigencia())) { |
|
| - | 162 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getVigencia().getSequencial().equals(new Long(-1))) { |
|
| - | 163 | sql.append("AND e.conta.vigencia IS NULL "); |
|
| - | 164 | } else { |
|
| - | 165 | sql.append("AND e.conta.vigencia.sequencial = :sequencialVigencia "); |
|
| - | 166 | }
|
|
| - | 167 | }
|
|
| - | 168 | ||
| - | 169 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO) parametrosConsulta).getCentroDeCustos())) { |
|
| - | 170 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getCentroDeCustos().getSequencial().equals(new Long(-1))) { |
|
| - | 171 | sql.append("AND e.conta.loja IS NULL "); |
|
| - | 172 | } else { |
|
| - | 173 | sql.append("AND e.conta.loja.sequencial = :sequencialCentroDeCustos "); |
|
| - | 174 | }
|
|
| - | 175 | }
|
|
| - | 176 | ||
| - | 177 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getIndicadorDre())) { |
|
| - | 178 | sql.append("AND e.conta.categoria.indicadorDRE.codigo = :codigoIndicadorDre "); |
|
| - | 179 | } else if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getPagamentoRealizado()) { |
|
| - | 180 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataInicialDoPeriodo()) && |
|
| - | 181 | VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataFinalDoPeriodo())) { |
|
| - | 182 | sql.append("AND e.dataPagamento is not null "); |
|
| - | 183 | sql.append("AND e.dataPagamento >= :dataInicial AND e.dataPagamento <= :dataFinal "); |
|
| - | 184 | }
|
|
| - | 185 | } else { |
|
| - | 186 | sql.append("AND e.dataPagamento is null "); |
|
| - | 187 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataVencimento())) { |
|
| - | 188 | sql.append("AND e.dataVencimento = :dataVencimento "); |
|
| - | 189 | }
|
|
| - | 190 | /*
|
|
| - | 191 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoFormaDePagamento())) {
|
|
| - | 192 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoFormaDePagamento().equals(TipoCartao.DEBITO.getValor())) {
|
|
| - | 193 | sql.append("AND e.conta.formaDePagamento.formaPagamento.codigo = 2 ");
|
|
| - | 194 | } else if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoFormaDePagamento().equals(TipoCartao.CREDITO.getValor())) {
|
|
| - | 195 | sql.append("AND e.conta.formaDePagamento.formaPagamento.codigo in (3, 4, 5, 7, 8, 9, 10, 11, 12, 13) ");
|
|
| - | 196 | }
|
|
| - | 197 | }
|
|
| - | 198 | */
|
|
| - | 199 | }
|
|
| - | 200 | /*
|
|
| - | 201 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getContaBancaria())) {
|
|
| - | 202 | sql.append("AND e.contaBancaria.sequencial = :sequencialContaBancaria ");
|
|
| - | 203 | }
|
|
| - | 204 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoBusca())) {
|
|
| - | 205 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoBusca().equals("R")) {
|
|
| - | 206 | sql.append("AND e.conta.tipoConta = 'R' ");
|
|
| - | 207 | }
|
|
| - | 208 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoBusca().equals("P")) {
|
|
| - | 209 | sql.append("AND e.conta.tipoConta = 'P' ");
|
|
| - | 210 | }
|
|
| - | 211 | }
|
|
| - | 212 |
|
|
| - | 213 |
|
|
| - | 214 |
|
|
| - | 215 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getCategoria())) {
|
|
| - | 216 | sql.append("AND e.conta.categoria.sequencial = :sequencialCategoria ");
|
|
| - | 217 | }
|
|
| - | 218 |
|
|
| - | 219 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getFavorecido())) {
|
|
| - | 220 | sql.append("AND e.conta.pessoa.sequencial = :sequencialPessoa ");
|
|
| - | 221 | }
|
|
| - | 222 |
|
|
| - | 223 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getFavorecido())) {
|
|
| - | 224 | sql.append("AND e.conta.pessoa.sequencial = :sequencialPessoa ");
|
|
| - | 225 | }
|
|
| - | 226 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getObservacao())) {
|
|
| - | 227 | sql.append("AND upper(e.observacao) like upper(:observacao) ");
|
|
| - | 228 | }
|
|
| - | 229 |
|
|
| - | 230 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getOficial())) {
|
|
| - | 231 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getOficial()) {
|
|
| - | 232 | sql.append("AND e.indicadorOficial IS TRUE ");
|
|
| - | 233 | } else {
|
|
| - | 234 | sql.append("AND e.indicadorOficial IS FALSE ");
|
|
| - | 235 | }
|
|
| - | 236 | }
|
|
| - | 237 | */
|
|
| - | 238 | }
|
|
| - | 239 | }
|
|
| - | 240 | ||
| - | 241 | @Override |
|
| - | 242 | protected void setarQueryParametrosConsulta(Query query, ParametrosConsulta<Parcela> parametrosConsulta) { |
|
| - | 243 | if (VerificadorUtil.naoEstaNulo(parametrosConsulta)) { |
|
| - | 244 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getVigencia())) { |
|
| - | 245 | if (!((ParametrosConsultaLancamentosDTO)parametrosConsulta).getVigencia().getSequencial().equals(new Long(-1))) { |
|
| - | 246 | query.setParameter("sequencialVigencia", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getVigencia().getSequencial()); |
|
| - | 247 | }
|
|
| - | 248 | }
|
|
| - | 249 | ||
| - | 250 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO) parametrosConsulta).getCentroDeCustos())) { |
|
| - | 251 | if (!((ParametrosConsultaLancamentosDTO)parametrosConsulta).getCentroDeCustos().getSequencial().equals(new Long(-1))) { |
|
| - | 252 | query.setParameter("sequencialCentroDeCustos", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getCentroDeCustos().getSequencial()); |
|
| - | 253 | }
|
|
| - | 254 | }
|
|
| - | 255 | ||
| - | 256 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getIndicadorDre())) { |
|
| - | 257 | query.setParameter("codigoIndicadorDre", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getIndicadorDre().getCodigo()); |
|
| - | 258 | }
|
|
| - | 259 | ||
| - | 260 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getPagamentoRealizado()) { |
|
| - | 261 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataInicialDoPeriodo()) && |
|
| - | 262 | VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataFinalDoPeriodo())) { |
|
| - | 263 | query.setParameter("dataInicial", ((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataInicialDoPeriodo()); |
|
| - | 264 | query.setParameter("dataFinal", ((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataFinalDoPeriodo()); |
|
| - | 265 | }
|
|
| - | 266 | } else if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataVencimento())) { |
|
| - | 267 | query.setParameter("dataVencimento", ((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataVencimento()); |
|
| - | 268 | }
|
|
| - | 269 | }
|
|
| - | 270 | /*
|
|
| - | 271 | if (VerificadorUtil.naoEstaNulo(parametrosConsulta)) {
|
|
| - | 272 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getContaBancaria())) {
|
|
| - | 273 | query.setParameter("sequencialContaBancaria", ((ParametrosConsultaLancamentosDTO)parametrosConsulta).getContaBancaria().getSequencial());
|
|
| - | 274 | }
|
|
| - | 275 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getCategoria())) {
|
|
| - | 276 | query.setParameter("sequencialCategoria", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getCategoria().getSequencial());
|
|
| - | 277 | }
|
|
| - | 278 |
|
|
| - | 279 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getFavorecido())) {
|
|
| - | 280 | query.setParameter("sequencialPessoa", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getFavorecido().getSequencial());
|
|
| - | 281 | }
|
|
| - | 282 |
|
|
| - | 283 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getObservacao())) {
|
|
| - | 284 | query.setParameter("observacao", "%" + ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getObservacao() + "%");
|
|
| - | 285 | }
|
|
| - | 286 | }
|
|
| - | 287 | */
|
|
| - | 288 | }
|
|
| - | 289 | ||
| - | 290 | @Override |
|
| - | 291 | protected void setarStringParametrosConsultar(StringBuilder sql, Parcela parcela) { |
|
| - | 292 | /*
|
|
| - | 293 | if (VerificadorUtil.naoEstaNulo(parcela)) {
|
|
| - | 294 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getConta())) {
|
|
| - | 295 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getConta().getSequencial())) {
|
|
| - | 296 | sql.append("AND e.conta.sequencial = :sequencialConta ");
|
|
| - | 297 | }
|
|
| - | 298 | }
|
|
| - | 299 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getIndicadorAtivo())) {
|
|
| - | 300 | sql.append("AND e.indicadorAtivo = :indicadorAtivo ");
|
|
| - | 301 | }
|
|
| - | 302 | }
|
|
| - | 303 | */
|
|
| - | 304 | }
|
|
| - | 305 | ||
| - | 306 | @Override |
|
| - | 307 | protected void setarQueryParametrosConsultar(Query query, Parcela parcela) { |
|
| - | 308 | /*
|
|
| - | 309 | if (VerificadorUtil.naoEstaNulo(parcela)) {
|
|
| - | 310 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getConta())) {
|
|
| - | 311 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getConta().getSequencial())) {
|
|
| - | 312 | query.setParameter("sequencialConta", parcela.getConta().getSequencial());
|
|
| - | 313 | }
|
|
| - | 314 | }
|
|
| - | 315 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getIndicadorAtivo())) {
|
|
| - | 316 | query.setParameter("indicadorAtivo", parcela.getIndicadorAtivo());
|
|
| - | 317 | }
|
|
| - | 318 | }
|
|
| - | 319 | */
|
|
| 111 | }
|
320 | }
|
| 112 | 321 | ||
| 113 | /*
|
322 | /*
|
| 114 | @Override
|
323 | @Override
|
| 115 | public List<Parcela> consultarParcelas(ParametrosConsultaLancamentosDTO parametrosConsulta) {
|
324 | public List<Parcela> consultarParcelas(ParametrosConsultaLancamentosDTO parametrosConsulta) {
|
| Line 279... | Line 488... | ||
| 279 | TypedQuery<Long> query = getEntityManager().createQuery(sql.toString(), Long.class);
|
488 | TypedQuery<Long> query = getEntityManager().createQuery(sql.toString(), Long.class);
|
| 280 | query.setParameter("sequencialVenda", venda.getSequencial());
|
489 | query.setParameter("sequencialVenda", venda.getSequencial());
|
| 281 | return query.getSingleResult().intValue()>0;
|
490 | return query.getSingleResult().intValue()>0;
|
| 282 | }
|
491 | }
|
| 283 |
|
492 |
|
| 284 | @Override
|
- | |
| 285 | public Double obterValorPassandoParametrosConsulta(ParametrosConsulta<Parcela> parametrosConsulta) {
|
- | |
| 286 | StringBuilder sql = new StringBuilder();
|
- | |
| 287 | sql.append("SELECT DISTINCT SUM(e.valor) FROM Parcela e ");
|
- | |
| 288 | sql.append("WHERE e.indicadorAtivo is true ");
|
- | |
| 289 | try {
|
- | |
| 290 | setarStringParametrosConsulta(sql, parametrosConsulta);
|
- | |
| 291 | TypedQuery<Double> query = getEntityManager().createQuery(sql.toString(), Double.class);
|
- | |
| 292 | setarQueryParametrosConsulta(query, parametrosConsulta);
|
- | |
| 293 | return query.getSingleResult();
|
- | |
| 294 | } catch(Exception ex) {
|
- | |
| 295 | ex.printStackTrace();
|
- | |
| 296 | return null;
|
- | |
| 297 | }
|
- | |
| 298 | }
|
- | |
| 299 |
|
493 |
|
| 300 | @Override
|
- | |
| 301 | protected void setarStringParametrosConsulta(StringBuilder sql, ParametrosConsulta<Parcela> parametrosConsulta) {
|
- | |
| 302 | if (VerificadorUtil.naoEstaNulo(parametrosConsulta)) {
|
- | |
| 303 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getContaBancaria())) {
|
- | |
| 304 | sql.append("AND e.contaBancaria.sequencial = :sequencialContaBancaria ");
|
- | |
| 305 | }
|
- | |
| 306 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoBusca())) {
|
- | |
| 307 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoBusca().equals("R")) {
|
- | |
| 308 | sql.append("AND e.conta.tipoConta = 'R' ");
|
- | |
| 309 | }
|
- | |
| 310 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoBusca().equals("P")) {
|
- | |
| 311 | sql.append("AND e.conta.tipoConta = 'P' ");
|
- | |
| 312 | }
|
- | |
| 313 | }
|
- | |
| 314 |
|
- | |
| 315 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO) parametrosConsulta).getCentroDeCustos())) {
|
- | |
| 316 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getCentroDeCustos().getSequencial().equals(new Long(-1))) {
|
- | |
| 317 | sql.append("AND e.conta.loja IS NULL ");
|
- | |
| 318 | } else {
|
- | |
| 319 | sql.append("AND e.conta.loja.sequencial = :sequencialCentroDeCustos ");
|
- | |
| 320 | }
|
- | |
| 321 | }
|
- | |
| 322 |
|
- | |
| 323 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getCategoria())) {
|
- | |
| 324 | sql.append("AND e.conta.categoria.sequencial = :sequencialCategoria ");
|
- | |
| 325 | }
|
- | |
| 326 |
|
- | |
| 327 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getFavorecido())) {
|
- | |
| 328 | sql.append("AND e.conta.pessoa.sequencial = :sequencialPessoa ");
|
- | |
| 329 | }
|
- | |
| 330 |
|
- | |
| 331 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getFavorecido())) {
|
- | |
| 332 | sql.append("AND e.conta.pessoa.sequencial = :sequencialPessoa ");
|
- | |
| 333 | }
|
- | |
| 334 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getObservacao())) {
|
- | |
| 335 | sql.append("AND upper(e.observacao) like upper(:observacao) ");
|
- | |
| 336 | }
|
- | |
| 337 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getVigencia())) {
|
- | |
| 338 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getVigencia().getSequencial().equals(new Long(-1))) {
|
- | |
| 339 | sql.append("AND e.conta.vigencia IS NULL ");
|
- | |
| 340 | } else {
|
- | |
| 341 | sql.append("AND e.conta.vigencia = :vigencia ");
|
- | |
| 342 | }
|
- | |
| 343 | }
|
- | |
| 344 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getOficial())) {
|
- | |
| 345 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getOficial()) {
|
- | |
| 346 | sql.append("AND e.indicadorOficial IS TRUE ");
|
- | |
| 347 | } else {
|
- | |
| 348 | sql.append("AND e.indicadorOficial IS FALSE ");
|
- | |
| 349 | }
|
- | |
| 350 | }
|
- | |
| 351 |
|
- | |
| 352 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getIndicadorDRE())) {
|
- | |
| 353 | sql.append("AND e.conta.categoria.indicadorDRE = :indicadorDRE ");
|
- | |
| 354 | } else if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getPagamentoRealizado()) {
|
- | |
| 355 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataInicial()) &&
|
- | |
| 356 | VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataFinal())) {
|
- | |
| 357 | sql.append("AND e.dataPagamento is not null ");
|
- | |
| 358 | sql.append("AND e.dataPagamento >= :dataInicial AND e.dataPagamento <= :dataFinal ");
|
- | |
| 359 | }
|
- | |
| 360 | } else {
|
- | |
| 361 | sql.append("AND e.dataPagamento is null ");
|
- | |
| 362 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataVencimento())) {
|
- | |
| 363 | sql.append("AND e.dataVencimento = :dataVencimento ");
|
- | |
| 364 | }
|
- | |
| 365 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoFormaDePagamento())) {
|
- | |
| 366 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoFormaDePagamento().equals(TipoCartao.DEBITO.getValor())) {
|
- | |
| 367 | sql.append("AND e.conta.formaDePagamento.formaPagamento.codigo = 2 ");
|
- | |
| 368 | } else if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getTipoFormaDePagamento().equals(TipoCartao.CREDITO.getValor())) {
|
- | |
| 369 | sql.append("AND e.conta.formaDePagamento.formaPagamento.codigo in (3, 4, 5, 7, 8, 9, 10, 11, 12, 13) ");
|
- | |
| 370 | }
|
- | |
| 371 | }
|
- | |
| 372 | }
|
- | |
| 373 | }
|
- | |
| 374 | }
|
- | |
| 375 |
|
- | |
| 376 | @Override
|
- | |
| 377 | protected void setarQueryParametrosConsulta(Query query, ParametrosConsulta<Parcela> parametrosConsulta) {
|
- | |
| 378 | if (VerificadorUtil.naoEstaNulo(parametrosConsulta)) {
|
- | |
| 379 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getContaBancaria())) {
|
- | |
| 380 | query.setParameter("sequencialContaBancaria", ((ParametrosConsultaLancamentosDTO)parametrosConsulta).getContaBancaria().getSequencial());
|
- | |
| 381 | }
|
- | |
| 382 |
|
- | |
| 383 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO) parametrosConsulta).getCentroDeCustos())) {
|
- | |
| 384 | if (!((ParametrosConsultaLancamentosDTO)parametrosConsulta).getCentroDeCustos().getSequencial().equals(new Long(-1))) {
|
- | |
| 385 | query.setParameter("sequencialCentroDeCustos", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getCentroDeCustos().getSequencial());
|
- | |
| 386 | }
|
- | |
| 387 | }
|
- | |
| 388 |
|
- | |
| 389 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getCategoria())) {
|
- | |
| 390 | query.setParameter("sequencialCategoria", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getCategoria().getSequencial());
|
- | |
| 391 | }
|
- | |
| 392 |
|
- | |
| 393 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getFavorecido())) {
|
- | |
| 394 | query.setParameter("sequencialPessoa", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getFavorecido().getSequencial());
|
- | |
| 395 | }
|
- | |
| 396 |
|
- | |
| 397 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getObservacao())) {
|
- | |
| 398 | query.setParameter("observacao", "%" + ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getObservacao() + "%");
|
- | |
| 399 | }
|
- | |
| 400 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getVigencia())) {
|
- | |
| 401 | if (!((ParametrosConsultaLancamentosDTO)parametrosConsulta).getVigencia().getSequencial().equals(new Long(-1))) {
|
- | |
| 402 | query.setParameter("vigencia", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getVigencia());
|
- | |
| 403 | }
|
- | |
| 404 | }
|
- | |
| 405 | if (VerificadorUtil.naoEstaNuloOuVazio(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getIndicadorDRE())) {
|
- | |
| 406 | query.setParameter("indicadorDRE", ((ParametrosConsultaLancamentosDTO) parametrosConsulta).getIndicadorDRE());
|
- | |
| 407 | }
|
- | |
| 408 |
|
- | |
| 409 | if (((ParametrosConsultaLancamentosDTO)parametrosConsulta).getPagamentoRealizado()) {
|
- | |
| 410 | if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataInicial()) &&
|
- | |
| 411 | VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataFinal())) {
|
- | |
| 412 | query.setParameter("dataInicial", ((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataInicial());
|
- | |
| 413 | query.setParameter("dataFinal", ((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataFinal());
|
- | |
| 414 | }
|
- | |
| 415 | } else if (VerificadorUtil.naoEstaNulo(((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataVencimento())) {
|
- | |
| 416 | query.setParameter("dataVencimento", ((ParametrosConsultaLancamentosDTO)parametrosConsulta).getDataVencimento());
|
- | |
| 417 | }
|
- | |
| 418 | }
|
- | |
| 419 |
|
- | |
| 420 | }
|
- | |
| 421 |
|
- | |
| 422 | @Override
|
- | |
| 423 | protected void setarStringParametrosConsultar(StringBuilder sql, Parcela parcela) {
|
- | |
| 424 | if (VerificadorUtil.naoEstaNulo(parcela)) {
|
- | |
| 425 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getConta())) {
|
- | |
| 426 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getConta().getSequencial())) {
|
- | |
| 427 | sql.append("AND e.conta.sequencial = :sequencialConta ");
|
- | |
| 428 | }
|
- | |
| 429 | }
|
- | |
| 430 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getIndicadorAtivo())) {
|
- | |
| 431 | sql.append("AND e.indicadorAtivo = :indicadorAtivo ");
|
- | |
| 432 | }
|
- | |
| 433 | }
|
- | |
| 434 | }
|
- | |
| 435 |
|
- | |
| 436 | @Override
|
- | |
| 437 | protected void setarQueryParametrosConsultar(Query query, Parcela parcela) {
|
- | |
| 438 | if (VerificadorUtil.naoEstaNulo(parcela)) {
|
- | |
| 439 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getConta())) {
|
- | |
| 440 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getConta().getSequencial())) {
|
- | |
| 441 | query.setParameter("sequencialConta", parcela.getConta().getSequencial());
|
- | |
| 442 | }
|
- | |
| 443 | }
|
- | |
| 444 | if (VerificadorUtil.naoEstaNuloOuVazio(parcela.getIndicadorAtivo())) {
|
- | |
| 445 | query.setParameter("indicadorAtivo", parcela.getIndicadorAtivo());
|
- | |
| 446 | }
|
- | |
| 447 | }
|
- | |
| 448 | }
|
- | |
| 449 | */
|
494 | */
|
| 450 | }
|
495 | }
|