diff --git a/src/com/rjconsultores/ventaboletos/dao/RutaDAO.java b/src/com/rjconsultores/ventaboletos/dao/RutaDAO.java index c23b5490b..7cdaf43fc 100644 --- a/src/com/rjconsultores/ventaboletos/dao/RutaDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/RutaDAO.java @@ -21,14 +21,12 @@ public interface RutaDAO extends GenericDAO { public List buscarPorTramo(Tramo tramo); - public List buscarPorRutaPorEmpresa(Ruta ruta, Empresa empresa); public List buscarPorClaseServicio(ClaseServicio claseServicio); public List buscarPorClaseServicioEmpresa(ClaseServicio claseServicio, Empresa empresa); - public List buscar(String nomeRuta, ClaseServicio claseServicio, - Boolean nomeObrigatorio); + public List buscar(String nomeRuta, ClaseServicio claseServicio,Boolean nomeObrigatorio); public List obtenerPorEmpresa(Empresa empresa); @@ -58,4 +56,7 @@ public interface RutaDAO extends GenericDAO { public List buscaRutasFromOrgao(OrgaoConcedente orgao); + + public List buscarPorRutaPorEmpresas(List lsEmpresas); + } diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/RutaHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/RutaHibernateDAO.java index 416b3e97c..02aaebe76 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/RutaHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/RutaHibernateDAO.java @@ -30,8 +30,7 @@ import com.rjconsultores.ventaboletos.entidad.Tramo; * @author Rafius */ @Repository("rutaDAO") -public class RutaHibernateDAO extends GenericHibernateDAO - implements RutaDAO { +public class RutaHibernateDAO extends GenericHibernateDAO implements RutaDAO { @Autowired public RutaHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) { @@ -57,19 +56,18 @@ public class RutaHibernateDAO extends GenericHibernateDAO return c.list(); } - public List buscarPorRutaPorEmpresa(Ruta ruta, Empresa empresa) { + @Override + public List buscarPorRutaPorEmpresas(List lsEmpresas) { Criteria c = getSession().createCriteria(getPersistentClass()); - c.add(Restrictions.eq("rutaId", ruta.getRutaId())); + c.add(Restrictions.eq("activo", Boolean.TRUE)); - - Criteria cEmpresa = null; - if (empresa != null) { - cEmpresa = c.createCriteria("lsRutaEmpresa"); - cEmpresa.add(Restrictions.eq("empresa", empresa)); - cEmpresa.add(Restrictions.eq("activo", Boolean.TRUE)); - } + + Criteria cEmpresa = c.createCriteria("lsRutaEmpresa"); + cEmpresa.add(Restrictions.in("empresa", lsEmpresas)); + cEmpresa.add(Restrictions.eq("activo", Boolean.TRUE)); + c.addOrder(Order.asc("descruta")); - + return c.list(); } diff --git a/src/com/rjconsultores/ventaboletos/service/RutaService.java b/src/com/rjconsultores/ventaboletos/service/RutaService.java index 94c832db6..7d7a962af 100644 --- a/src/com/rjconsultores/ventaboletos/service/RutaService.java +++ b/src/com/rjconsultores/ventaboletos/service/RutaService.java @@ -37,8 +37,6 @@ public interface RutaService { */ public Parada getOrigem(Ruta ruta); - public List buscarPorRutaPorEmpresa(Ruta ruta, Empresa empresa); - public List buscarPorClaseServicio(ClaseServicio claseServicio); public List buscarPorClaseServicioEmpresa(ClaseServicio claseServicio, Empresa empresa); diff --git a/src/com/rjconsultores/ventaboletos/service/impl/RutaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/RutaServiceImpl.java index 6f7993029..0f7607e7f 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/RutaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/RutaServiceImpl.java @@ -267,9 +267,6 @@ public class RutaServiceImpl implements RutaService { return rutaDAO.buscarOrigen(ruta); } - public List buscarPorRutaPorEmpresa(Ruta ruta, Empresa empresa) { - return rutaDAO.buscarPorRutaPorEmpresa(ruta, empresa); - } public List buscarPorClaseServicioEmpresa(ClaseServicio claseServicio, Empresa empresa) { return rutaDAO.buscarPorClaseServicioEmpresa(claseServicio, empresa); @@ -325,18 +322,7 @@ public class RutaServiceImpl implements RutaService { @Override public List buscarRutasPorEmpresas(List lsEmp){ - List lsEsquemaCorrida = new ArrayList(); - List lsRutas; - for(Empresa e : lsEmp){ - lsEsquemaCorrida.addAll(esquemaCorridaService.buscarPorEmpresaCorrida(e)); - } - Set rutaSet = new TreeSet(); - for(EsquemaCorrida ec : lsEsquemaCorrida){ - rutaSet.add(ec.getRuta()); - } - lsRutas = new ArrayList(rutaSet); - Collections.sort(lsRutas, new RutaComparator()); - return lsRutas; + return rutaDAO.buscarPorRutaPorEmpresas(lsEmp); } private class RutaComparator implements Comparator {