Go to most recent revision |
Blame |
Compare with Previous |
Last modification |
View Log
| Download
| RSS feed
package br.com.ec.repository.jpa;
import java.util.List;
import javax.persistence.TypedQuery;
import org.springframework.stereotype.Repository;
import br.com.ec.core.util.VerificadorUtil;
import br.com.ec.domain.dto.ModeloDTO;
import br.com.ec.domain.model.Modelo;
import br.com.ec.repository.ModeloRepository;
import br.com.ec.repository.SistemaAbstractRepository;
@Repository
public class ModeloRepositoryJpaImpl
extends SistemaAbstractRepository
<Modelo
> implements ModeloRepository
{
@
Override
protected String getColunaOrdenadora
() {
return "sequencial";
}
@
Override
public List<ModeloDTO
> consultarModelos
(ModeloDTO modeloDTO
) {
StringBuilder jpql =
new StringBuilder();
jpql.
append("SELECT ");
jpql.
append(ModeloDTO.
CONSULTA_DTO_COMPLETA);
jpql.
append("FROM Modelo e ");
jpql.
append("WHERE 1=1 ");
if (VerificadorUtil.
naoEstaNulo(modeloDTO.
getAtivo())) {
jpql.
append("AND e.ativo = :indicadorAtivo ");
}
jpql.
append("ORDER BY e.descricao ");
try {
TypedQuery
<ModeloDTO
> query = getEntityManager
().
createQuery(jpql.
toString(), ModeloDTO.
class);
if (VerificadorUtil.
naoEstaNulo(modeloDTO.
getAtivo())) {
query.
setParameter("indicadorAtivo", modeloDTO.
getAtivo());
}
return query.
getResultList();
} catch (Exception ex
) {
ex.
printStackTrace();
}
return null;
}
/*
@Override
protected void setarStringParametrosConsultar(StringBuilder sql, Conta conta) {
if (VerificadorUtil.naoEstaNulo(conta)) {
if (VerificadorUtil.naoEstaNuloOuVazio(conta.getSequencialDaVenda())) {
sql.append("AND e.venda.sequencial = :sequencialVenda ");
}
if (VerificadorUtil.naoEstaNuloOuVazio(conta.getIndicadorAtivo())) {
sql.append("AND e.indicadorAtivo = :indicadorAtivo ");
}
}
}
@Override
protected void setarQueryParametrosConsultar(Query query, Conta conta) {
if (VerificadorUtil.naoEstaNulo(conta)) {
if (VerificadorUtil.naoEstaNuloOuVazio(conta.getSequencialDaVenda())) {
query.setParameter("sequencialVenda", conta.getSequencialDaVenda());
}
if (VerificadorUtil.naoEstaNuloOuVazio(conta.getIndicadorAtivo())) {
query.setParameter("indicadorAtivo", conta.getIndicadorAtivo());
}
}
}
@Override
public Conta consultarContaAReceber(VendaFormaPagamento vendaFormaPagamento) {
StringBuilder sql = new StringBuilder();
sql.append("SELECT c FROM Conta c ");
sql.append("WHERE c.venda.sequencial = :sequencialVenda ");
try {
return getEntityManager().createQuery(sql.toString(),Conta.class)
.setParameter("sequencialVenda", vendaFormaPagamento.getSequencialDaVenda())
.getSingleResult();
} catch(NoResultException ex) {
return null;
} catch(Exception ex) {
ex.printStackTrace();
return null;
}
}
@Override
@Deprecated
public List<Conta> consultarContasAReceber(Venda venda) {
StringBuilder sql = new StringBuilder();
sql.append("SELECT c FROM Conta c ");
sql.append("WHERE c.venda.sequencial = :sequencialVenda ORDER BY c.sequencial");
try {
return getEntityManager().createQuery(sql.toString(),Conta.class).setParameter("sequencialVenda", venda.getSequencial()).getResultList();
} catch(NoResultException ex) {
return null;
} catch(Exception ex) {
ex.printStackTrace();
return null;
}
}
@Override
public List<Conta> consultarContasAReceberPorPeriodo(Date dataInicial, Date dataFinal) {
StringBuilder sql = new StringBuilder();
sql.append("SELECT c FROM Conta c ");
sql.append("WHERE c.venda.dataVenda >= :dataInicial AND c.venda.dataVenda <= :dataFinal ");
sql.append("ORDER BY c.sequencial");
try {
return getEntityManager().createQuery(sql.toString(),Conta.class)
.setParameter("dataInicial", DataUtils.getDataComHorarioMinimo(dataInicial))
.setParameter("dataFinal", DataUtils.getDataComHorarioMaximo(dataFinal))
.getResultList();
} catch(NoResultException ex) {
return null;
} catch(Exception ex) {
ex.printStackTrace();
return null;
}
}
*/
}