From c3e5b110bd7da5aa5c621fa7b984ef7107993ef0 Mon Sep 17 00:00:00 2001 From: julio Date: Fri, 13 Dec 2013 14:22:16 +0000 Subject: [PATCH] =?UTF-8?q?=090004755:=20Conex=C3=A3o=20-=20Conf.=20Exce?= =?UTF-8?q?=C3=A7=C3=A3o=20por=20Servi=C3=A7o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@32619 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../ventaboletos/dao/CorridaDAO.java | 2 + .../dao/hibernate/CorridaHibernateDAO.java | 50 ++++++++++++++++--- .../ventaboletos/entidad/Corrida.java | 7 +++ .../ventaboletos/service/CorridaService.java | 2 + .../service/impl/CorridaServiceImpl.java | 12 +++++ 5 files changed, 65 insertions(+), 8 deletions(-) diff --git a/src/com/rjconsultores/ventaboletos/dao/CorridaDAO.java b/src/com/rjconsultores/ventaboletos/dao/CorridaDAO.java index a845f6e9e..38752ad79 100644 --- a/src/com/rjconsultores/ventaboletos/dao/CorridaDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/CorridaDAO.java @@ -40,6 +40,8 @@ public interface CorridaDAO extends GenericDAO { public List buscarPorFecCorrida(Date value); public Long count(Ruta ruta); + + public List verificarCorridaId(Integer corridaId); public List buscarPorId(Integer idCorrida); diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaHibernateDAO.java index ca42efd68..2273746ba 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaHibernateDAO.java @@ -46,14 +46,13 @@ public class CorridaHibernateDAO extends GenericHibernateDAO buscarPorAutobusCorridasFuturas(final DiagramaAutobus diagramaAutobus) { String hql = " select co from Corrida co, Autobus ab " + " where ab.autobusId = co.autobus.autobusId " @@ -92,6 +92,7 @@ public class CorridaHibernateDAO extends GenericHibernateDAO buscarPorRolOperativoCorridasFuturas(final DiagramaAutobus diagramaAutobus) { String hql = " select co from Corrida co, RolOperativo rol " + " where rol.roloperativoId = co.rolOperativo.roloperativoId " @@ -104,6 +105,7 @@ public class CorridaHibernateDAO extends GenericHibernateDAO buscarPorFecCorrida(final Date value) { Criteria c = getSession().createCriteria(getPersistentClass()); c.add(Restrictions.eq("activo", Boolean.TRUE)); @@ -113,6 +115,7 @@ public class CorridaHibernateDAO extends GenericHibernateDAO verificarCorridaId(Integer corridaId) { + + StringBuilder hql = new StringBuilder(); + hql.append("select distinct "); + hql.append(" new com.rjconsultores.ventaboletos.entidad.Corrida("); + hql.append(" c.id.corridaId, "); + hql.append(" c.origem, "); + hql.append(" c.destino) "); + hql.append("from "); + hql.append(" Corrida c "); + hql.append("where "); + hql.append(" 1 = 1 "); + hql.append(" and c.activo = 1 "); + hql.append(" and cast(c.id.corridaId as string) like :corridaId "); + hql.append(" group by "); + hql.append(" c.id.corridaId, "); + hql.append(" c.origem, "); + hql.append(" c.destino) "); + + Query sq = getSession().createQuery(hql.toString()); + + if (corridaId != null) { + sq.setParameter("corridaId", corridaId.toString() + '%'); + } else { + sq.setParameter("corridaId", '%'); + } + + return sq.list(); + } + + @Override public List buscarPorId(final Integer idCorrida) { Criteria c = getSession().createCriteria(getPersistentClass()); c.add(Restrictions.eq("activo", Boolean.TRUE)); @@ -131,7 +166,7 @@ public class CorridaHibernateDAO extends GenericHibernateDAO buscarFiltro(final Parada ori, final Parada des, final Date hora, final ClaseServicio cs) { Criteria c = getSession().createCriteria(getPersistentClass()); c.add(Restrictions.eq("activo", Boolean.TRUE)); @@ -466,10 +501,9 @@ public class CorridaHibernateDAO extends GenericHibernateDAO corridas) { - for (Corrida corrida : corridas) { - + Date husoHorVeranoLlegadaAnterior = null; Date fechorSalidaOriginalUpdate = null; Date fechorsalidaUpdate = null; @@ -482,7 +516,7 @@ public class CorridaHibernateDAO extends GenericHibernateDAO tramos = buscarTramosCorrida(corrida); for (Object[] objeto : tramos) { @@ -536,7 +570,7 @@ public class CorridaHibernateDAO extends GenericHibernateDAO { public List buscarPorFecCorrida(Date value); + public List verificarCorridaId(Integer corridaId); + public List buscarPorId(Integer idCorrida); public List buscarFiltro(Parada ori, Parada des, Date hora, ClaseServicio cs); diff --git a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java index aa49ecfb4..b2a78b933 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java @@ -107,22 +107,31 @@ public class CorridaServiceImpl implements CorridaService { this.transactionManager = transactionManager; } + @Override public List obtenerTodos() { return corridaDAO.obtenerTodos(); } + @Override public Corrida obtenerID(Corrida.Id id) { return corridaDAO.obtenerID(id); } + @Override public List buscarPorFecCorrida(Date value) { return corridaDAO.buscarPorFecCorrida(value); } + @Override public List buscarPorId(Integer idCorrida) { return corridaDAO.buscarPorId(idCorrida); } + @Override + public List verificarCorridaId(Integer corridaId) { + return corridaDAO.verificarCorridaId(corridaId); + } + @Override public List buscarDistinct(Parada ori, Parada des, Date horaSalidaInicio, Date horaSalidaFin, ClaseServicio cs, Integer corridaId) { return corridaDAO.buscarDistinct(ori, des, (horaSalidaInicio == null) ? null : DateUtil.getFecInicio(horaSalidaInicio).getTime(), (horaSalidaFin == null) ? null : DateUtil.getFecInicio(horaSalidaFin).getTime(), cs, corridaId); @@ -155,14 +164,17 @@ public class CorridaServiceImpl implements CorridaService { corridaDAO.actualizacion(entidad); } + @Override public List buscarPorAutobusCorridasFuturas(DiagramaAutobus diagramaAutobus) { return corridaDAO.buscarPorAutobusCorridasFuturas(diagramaAutobus); } + @Override public List buscarPorRolOperativoCorridasFuturas(DiagramaAutobus diagramaAutobus) { return corridaDAO.buscarPorRolOperativoCorridasFuturas(diagramaAutobus); } + @Override public List buscarFiltro(Parada ori, Parada des, Date hora, ClaseServicio cs) { return corridaDAO.buscarFiltro(ori, des, hora, cs); }