From 90329bd7911ace6fc5b05054bf4e5246baf20f74 Mon Sep 17 00:00:00 2001 From: "daniel.zauli" Date: Wed, 4 Nov 2015 13:28:04 +0000 Subject: [PATCH] FIXES BUG #6805 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@49760 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../ventaboletos/dao/CalcularPeajeDAO.java | 2 ++ .../hibernate/CalcularPeajeHibernateDAO.java | 20 +++++++++++++++++++ .../service/CalcularPeajeService.java | 1 + .../impl/CalcularPeajeServiceImpl.java | 6 ++++-- 4 files changed, 27 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/ventaboletos/dao/CalcularPeajeDAO.java b/src/com/rjconsultores/ventaboletos/dao/CalcularPeajeDAO.java index 048d1a538..8b6fe9d63 100644 --- a/src/com/rjconsultores/ventaboletos/dao/CalcularPeajeDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/CalcularPeajeDAO.java @@ -9,4 +9,6 @@ public interface CalcularPeajeDAO { public List buscarCasetasPeajeWithinTramo(Ruta ruta); public int[] gerarSQLInserirPeajes(List lsRuta, OrgaoConcedente orgao); + + public List buscarRutaWithCasetaPeajeFromOrgao(OrgaoConcedente oc); } diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/CalcularPeajeHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/CalcularPeajeHibernateDAO.java index edcbd2e66..2d8ab4018 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/CalcularPeajeHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/CalcularPeajeHibernateDAO.java @@ -29,6 +29,26 @@ public class CalcularPeajeHibernateDAO extends GenericHibernateDAO buscarRutaWithCasetaPeajeFromOrgao(OrgaoConcedente oc){ + + StringBuilder sql = new StringBuilder(); + sql.append(" select distinct r from Ruta r , RutaCaseta rc , RutaSecuencia rs , CasetaPeaje cp "); + sql.append(" where rc.rutaSecuencia.rutasecuenciaId = rs.rutasecuenciaId "); + sql.append(" and rc.casetaPeaje.casetaPeajeId = cp.casetaPeajeId "); + sql.append(" and rs.ruta.rutaId = r.rutaId "); + if(oc != null && oc.getOrgaoConcedenteId() != null){ + sql.append(" and r.orgaoConcedente.orgaoConcedenteId = :orgaoConcedenteId "); + } + + Query query = getSession().createQuery(sql.toString()); + + if(oc != null && oc.getOrgaoConcedenteId() != null){ + query.setInteger("orgaoConcedenteId", oc.getOrgaoConcedenteId()); + } + return (List)query.list(); + } + @Override public List buscarCasetasPeajeWithinTramo(Ruta ruta){ diff --git a/src/com/rjconsultores/ventaboletos/service/CalcularPeajeService.java b/src/com/rjconsultores/ventaboletos/service/CalcularPeajeService.java index d13dcda1f..31729f55f 100644 --- a/src/com/rjconsultores/ventaboletos/service/CalcularPeajeService.java +++ b/src/com/rjconsultores/ventaboletos/service/CalcularPeajeService.java @@ -7,5 +7,6 @@ import com.rjconsultores.ventaboletos.entidad.Ruta; public interface CalcularPeajeService { public List buscarCasetasPeajeWithinTramo(Ruta ruta); + public List buscarRutaWithCasetaPeajeFromOrgao(OrgaoConcedente oc); public int[] gerarSQLInserirPeajes(List lsRuta, OrgaoConcedente orgao); } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/CalcularPeajeServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/CalcularPeajeServiceImpl.java index 8fb9a2eae..0361c9f7b 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/CalcularPeajeServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/CalcularPeajeServiceImpl.java @@ -23,8 +23,10 @@ public class CalcularPeajeServiceImpl implements CalcularPeajeService{ return calcularPeajeDAO.buscarCasetasPeajeWithinTramo(ruta); } - - + @Override + public List buscarRutaWithCasetaPeajeFromOrgao(OrgaoConcedente oc){ + return calcularPeajeDAO.buscarRutaWithCasetaPeajeFromOrgao(oc); + } @Override @Transactional(rollbackFor = BusinessException.class)