From 0e6820d83ac60d9e1f50daa15afe67858541fb95 Mon Sep 17 00:00:00 2001 From: julio Date: Tue, 15 Sep 2015 17:45:05 +0000 Subject: [PATCH] fixes bug #6602 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@47896 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../ventaboletos/dao/OrgaoTramoDAO.java | 2 +- .../dao/hibernate/OrgaoTramoHibernateDAO.java | 2 +- .../ventaboletos/entidad/ClaseServicio.java | 298 +++++++++--------- .../ventaboletos/service/CorridaService.java | 6 +- .../service/impl/CorridaServiceImpl.java | 183 ++++++++--- 5 files changed, 299 insertions(+), 192 deletions(-) diff --git a/src/com/rjconsultores/ventaboletos/dao/OrgaoTramoDAO.java b/src/com/rjconsultores/ventaboletos/dao/OrgaoTramoDAO.java index 104bfc6ab..a50b72b68 100644 --- a/src/com/rjconsultores/ventaboletos/dao/OrgaoTramoDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/OrgaoTramoDAO.java @@ -14,7 +14,7 @@ public interface OrgaoTramoDAO { * @param claseServicioId * @return */ - public OrgaoTramo buscar(Integer origenId, Integer destinoId, Integer viaId, Integer orgaoConcedenteId, Short claseServicioId); + public OrgaoTramo buscar(Integer origenId, Integer destinoId, Integer viaId, Integer orgaoConcedenteId, Integer claseServicioId); /** * Graba el registro en la base de datos diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/OrgaoTramoHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/OrgaoTramoHibernateDAO.java index 1f595b4b3..abb317fa5 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/OrgaoTramoHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/OrgaoTramoHibernateDAO.java @@ -22,7 +22,7 @@ public class OrgaoTramoHibernateDAO extends GenericHibernateDAO categoriaClaseList; - @OneToMany(mappedBy = "claseServicio") - private List reservacionClaseList; - @OneToMany(mappedBy = "claseServicio") - private List tramoTiempoList; - @Column(name = "EQUIVALENCIA_ID") - private String equivalenciaId; - @Column(name = "EQUIVALENCIAELEKTRA_ID") - private String equivalenciaElektraId; - @OneToMany(mappedBy = "claseServicio") - private List tarifaHistList; - @OneToMany(mappedBy = "claseServicio") - private List corridaList; - public ClaseServicio() { - } + private static final long serialVersionUID = 1L; + @Id + @Basic(optional = false) + @GeneratedValue(strategy = GenerationType.AUTO, generator = "CLASE_SERVICIO_SEQ") + @Column(name = "CLASESERVICIO_ID") + private Integer claseservicioId; + @Column(name = "DESCCLASE") + private String descclase; + @Column(name = "ACTIVO") + private Boolean activo; + @Basic(optional = false) + @Column(name = "FECMODIF") + @Temporal(TemporalType.TIMESTAMP) + private Date fecmodif; + @Column(name = "USUARIO_ID") + private Integer usuarioId; + @OneToMany(mappedBy = "claseServicio") + private List categoriaClaseList; + @OneToMany(mappedBy = "claseServicio") + private List reservacionClaseList; + @OneToMany(mappedBy = "claseServicio") + private List tramoTiempoList; + @Column(name = "EQUIVALENCIA_ID") + private String equivalenciaId; + @Column(name = "EQUIVALENCIAELEKTRA_ID") + private String equivalenciaElektraId; + @OneToMany(mappedBy = "claseServicio") + private List tarifaHistList; + @OneToMany(mappedBy = "claseServicio") + private List corridaList; - public ClaseServicio(Short claseservicioId) { - this.claseservicioId = claseservicioId; - } + public ClaseServicio() { + } - public ClaseServicio(Short claseservicioId, Date fecmodif) { - this.claseservicioId = claseservicioId; - this.fecmodif = fecmodif; - } + public ClaseServicio(Integer claseservicioId) { + this.claseservicioId = claseservicioId; + } - public Short getClaseservicioId() { - return claseservicioId; - } + public ClaseServicio(Integer claseservicioId, Date fecmodif) { + this.claseservicioId = claseservicioId; + this.fecmodif = fecmodif; + } - public void setClaseservicioId(Short claseservicioId) { - this.claseservicioId = claseservicioId; - } + public Integer getClaseservicioId() { + return claseservicioId; + } - public String getDescclase() { - return descclase; - } + public void setClaseservicioId(Integer claseservicioId) { + this.claseservicioId = claseservicioId; + } - public void setDescclase(String descclase) { - this.descclase = descclase; - } + public String getDescclase() { + return descclase; + } - public Boolean getActivo() { - return activo; - } + public void setDescclase(String descclase) { + this.descclase = descclase; + } - public void setActivo(Boolean activo) { - this.activo = activo; - } + public Boolean getActivo() { + return activo; + } - public Date getFecmodif() { - return fecmodif; - } + public void setActivo(Boolean activo) { + this.activo = activo; + } - public void setFecmodif(Date fecmodif) { - this.fecmodif = fecmodif; - } + public Date getFecmodif() { + return fecmodif; + } - public Integer getUsuarioId() { - return usuarioId; - } + public void setFecmodif(Date fecmodif) { + this.fecmodif = fecmodif; + } - public void setUsuarioId(Integer usuarioId) { - this.usuarioId = usuarioId; - } + public Integer getUsuarioId() { + return usuarioId; + } - public List getCategoriaClaseList() { - List tmp = new ArrayList(); - if (categoriaClaseList != null) { - for (CategoriaClase cc : this.categoriaClaseList) { - if (cc.getActivo()) { - tmp.add(cc); - } - } - } + public void setUsuarioId(Integer usuarioId) { + this.usuarioId = usuarioId; + } - return tmp; - } + public List getCategoriaClaseList() { + List tmp = new ArrayList(); + if (categoriaClaseList != null) { + for (CategoriaClase cc : this.categoriaClaseList) { + if (cc.getActivo()) { + tmp.add(cc); + } + } + } - public void setCategoriaClaseList(List categoriaClaseList) { - this.categoriaClaseList = categoriaClaseList; - } + return tmp; + } - public List getReservacionClaseList() { - List tmp = new ArrayList(); - for (ReservacionClase rc : this.reservacionClaseList) { - if (rc.getActivo()) { - tmp.add(rc); - } - } + public void setCategoriaClaseList(List categoriaClaseList) { + this.categoriaClaseList = categoriaClaseList; + } - return tmp; - } + public List getReservacionClaseList() { + List tmp = new ArrayList(); + for (ReservacionClase rc : this.reservacionClaseList) { + if (rc.getActivo()) { + tmp.add(rc); + } + } - public List getCorridaList() { - return corridaList; - } + return tmp; + } - public void setCorridaList(List corridaList) { - this.corridaList = corridaList; - } + public List getCorridaList() { + return corridaList; + } - public void setReservacionClaseList(List reservacionClaseList) { - this.reservacionClaseList = reservacionClaseList; - } + public void setCorridaList(List corridaList) { + this.corridaList = corridaList; + } - @Override - public int hashCode() { - int hash = 0; - hash += (claseservicioId != null ? claseservicioId.hashCode() : 0); - return hash; - } + public void setReservacionClaseList(List reservacionClaseList) { + this.reservacionClaseList = reservacionClaseList; + } - @Override - public boolean equals(Object object) { - // TODO: Warning - this method won't work in the case the id fields are not set - if (!(object instanceof ClaseServicio)) { - return false; - } - ClaseServicio other = (ClaseServicio) object; - if ((this.claseservicioId == null && other.claseservicioId != null) || (this.claseservicioId != null && !this.claseservicioId.equals(other.claseservicioId))) { - return false; - } - return true; - } + @Override + public int hashCode() { + int hash = 0; + hash += (claseservicioId != null ? claseservicioId.hashCode() : 0); + return hash; + } - @Override - public String toString() { - return getDescclase(); - } + @Override + public boolean equals(Object object) { + // TODO: Warning - this method won't work in the case the id fields are not set + if (!(object instanceof ClaseServicio)) { + return false; + } + ClaseServicio other = (ClaseServicio) object; + if ((this.claseservicioId == null && other.claseservicioId != null) || (this.claseservicioId != null && !this.claseservicioId.equals(other.claseservicioId))) { + return false; + } + return true; + } - public List getTramoTiempoList() { - return tramoTiempoList; - } + @Override + public String toString() { + return getDescclase(); + } - public void setTramoTiempoList(List tramoTiempoList) { - this.tramoTiempoList = tramoTiempoList; - } + public List getTramoTiempoList() { + return tramoTiempoList; + } - public String getEquivalenciaId() { - return equivalenciaId; - } + public void setTramoTiempoList(List tramoTiempoList) { + this.tramoTiempoList = tramoTiempoList; + } - public void setEquivalenciaId(String equivalenciaId) { - this.equivalenciaId = equivalenciaId; - } + public String getEquivalenciaId() { + return equivalenciaId; + } - public List getTarifaHistList() { - return tarifaHistList; - } + public void setEquivalenciaId(String equivalenciaId) { + this.equivalenciaId = equivalenciaId; + } - public void setTarifaHistList(List tarifaHistList) { - this.tarifaHistList = tarifaHistList; - } + public List getTarifaHistList() { + return tarifaHistList; + } - public String getEquivalenciaElektraId() { - return equivalenciaElektraId; - } + public void setTarifaHistList(List tarifaHistList) { + this.tarifaHistList = tarifaHistList; + } - public void setEquivalenciaElektraId(String equivalenciaElektraId) { - this.equivalenciaElektraId = equivalenciaElektraId; - } + public String getEquivalenciaElektraId() { + return equivalenciaElektraId; + } + + public void setEquivalenciaElektraId(String equivalenciaElektraId) { + this.equivalenciaElektraId = equivalenciaElektraId; + } } diff --git a/src/com/rjconsultores/ventaboletos/service/CorridaService.java b/src/com/rjconsultores/ventaboletos/service/CorridaService.java index cf35e7ed0..e5ebcfd6a 100644 --- a/src/com/rjconsultores/ventaboletos/service/CorridaService.java +++ b/src/com/rjconsultores/ventaboletos/service/CorridaService.java @@ -4,6 +4,8 @@ */ package com.rjconsultores.ventaboletos.service; +import java.sql.Connection; +import java.sql.SQLException; import java.util.Date; import java.util.List; @@ -58,7 +60,7 @@ public interface CorridaService extends GenericService { * @param dataDe * @param dataAte * @return A quantidade de corridas geradas - * @throws BusinessException + * @throws BusinessException */ public Long generarCorridasSelecionadas(List lsEsquemaCorrida, Date dataDe, Date dataAte) throws BusinessException; @@ -69,4 +71,6 @@ public interface CorridaService extends GenericService { public Boolean atualizarCorridaFecHusoFecVerano(Estado estado, Date dataInicial); Boolean atualizarCorridaFecHusoFecVerano(Estado estado, Date dataInicial, Integer corridaId); + + public List buscarCorridaRelatorio(Connection conexao, Parada origem, Parada destino, Date feccorrida, Integer corridaId); } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java index 68e955ebf..dcbca469d 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java @@ -4,6 +4,10 @@ */ package com.rjconsultores.ventaboletos.service.impl; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; @@ -32,6 +36,7 @@ import com.rjconsultores.ventaboletos.entidad.AsientoExclusivo; import com.rjconsultores.ventaboletos.entidad.ClaseServicio; import com.rjconsultores.ventaboletos.entidad.Constante; import com.rjconsultores.ventaboletos.entidad.Corrida; +import com.rjconsultores.ventaboletos.entidad.Corrida.Id; import com.rjconsultores.ventaboletos.entidad.CorridaCtrl; import com.rjconsultores.ventaboletos.entidad.CorridaTramo; import com.rjconsultores.ventaboletos.entidad.DetDiagramaAutobus; @@ -75,7 +80,9 @@ import com.rjconsultores.ventaboletos.utilerias.UtileriasFiscal; @Service("corridaService") public class CorridaServiceImpl implements CorridaService { + private static Logger log = Logger.getLogger(CorridaServiceImpl.class); private static int CANT_MAX_CORRIDA_GERA_MANUAL = 40; + @Autowired private CorridaDAO corridaDAO; @Autowired @@ -97,12 +104,11 @@ public class CorridaServiceImpl implements CorridaService { @Autowired private EsquemaCorridaDAO esquemaCorridaDAO; @Autowired - private DetDiagramaAutobusService detDiagramaAutobusService; + private DetDiagramaAutobusService detDiagramaAutobusService; @Autowired private ConstanteService constanteService; @Autowired private RutaSecuenciaService rutaSecuenciaService; - private static Logger log = Logger.getLogger(CorridaServiceImpl.class); private PlatformTransactionManager transactionManager; @Transient private int cantCorridaGenerada; @@ -519,15 +525,15 @@ public class CorridaServiceImpl implements CorridaService { corrida.setFechorsalida(truncarDataHora(dataGeracao, esquemaCorrida.getHorasalida())); corrida.setFechorSalidaOriginal(corrida.getFechorsalida()); - - if(esquemaCorrida.getStatusCorrida().equals("A")){ + + if (esquemaCorrida.getStatusCorrida().equals("A")) { corrida.setIndstatuscorrida("H"); corrida.setActivo(ActivoUtil.ATIVO); - }else if (esquemaCorrida.getStatusCorrida().equals("L")){ + } else if (esquemaCorrida.getStatusCorrida().equals("L")) { corrida.setIndstatuscorrida("P"); corrida.setActivo(ActivoUtil.INATIVO); } - + corrida.setMarca(esquemaCorrida.getMarca()); corrida.setNodo(corridaCtrl.getNodo()); corrida.setDivision(esquemaCorrida.getDivision()); @@ -607,12 +613,12 @@ public class CorridaServiceImpl implements CorridaService { horaChegadaAnterior = excepcionTiempo; } - if(esquemaCorrida.getStatusCorrida().equals("A")){ + if (esquemaCorrida.getStatusCorrida().equals("A")) { corridaTramo.setActivo(ActivoUtil.ATIVO); - }else if (esquemaCorrida.getStatusCorrida().equals("L")){ + } else if (esquemaCorrida.getStatusCorrida().equals("L")) { corridaTramo.setActivo(ActivoUtil.INATIVO); } -// + // corridaTramo.setFecmodif(Calendar.getInstance().getTime()); if (UsuarioLogado.getUsuarioLogado() != null) { corridaTramo.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); @@ -643,7 +649,7 @@ public class CorridaServiceImpl implements CorridaService { lsCorridaTramo.add(corridaTramo); } corrida.setCorridaTramoList(lsCorridaTramo); -// + // corrida.setFecmodif(Calendar.getInstance().getTime()); if (UsuarioLogado.getUsuarioLogado() != null) { corrida.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); @@ -658,8 +664,8 @@ public class CorridaServiceImpl implements CorridaService { List lsEsquemaAsiento = esquemaAsientoService.obtenerPorCorrida(esquemaCorrida); for (EsquemaAsiento ea : lsEsquemaAsiento) { - DetDiagramaAutobus detDiagramaAutobus = detDiagramaAutobusService.obtenerPorDiagramaAutobusAsiento(esquemaCorrida.getDiagramaAutobusId(),ea.getNumasiento()); - if(detDiagramaAutobus.getVendible()){ + DetDiagramaAutobus detDiagramaAutobus = detDiagramaAutobusService.obtenerPorDiagramaAutobusAsiento(esquemaCorrida.getDiagramaAutobusId(), ea.getNumasiento()); + if (detDiagramaAutobus.getVendible()) { AsientoExclusivo asientoExclusivo = new AsientoExclusivo(); asientoExclusivo.setCorrida(corrida); asientoExclusivo.setMotivobloqueo(null); @@ -674,19 +680,19 @@ public class CorridaServiceImpl implements CorridaService { asientoExclusivo.setMotivobloqueo(ea.getMotivobloqueo()); asientoExclusivo.setDestino(ea.getDestino()); } - + asientoExclusivo.setActivo(Boolean.TRUE); asientoExclusivo.setFecmodif(Calendar.getInstance().getTime()); if (UsuarioLogado.getUsuarioLogado() != null) { asientoExclusivo.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); } - + asientoExclusivo = asientoExclusivoService.suscribir(asientoExclusivo); } } } catch (org.springframework.dao.DataIntegrityViolationException ex) { - log.error("",ex); + log.error("", ex); } return corrida; @@ -760,7 +766,7 @@ public class CorridaServiceImpl implements CorridaService { private void generarCorrida(Date dataGeracao, List lsEsquemaCorrida) { DefaultTransactionDefinition def = new DefaultTransactionDefinition(DefaultTransactionDefinition.PROPAGATION_REQUIRES_NEW); - //TODO: Melhorar o tratamento às transações manuais em caso de erro,etc + // TODO: Melhorar o tratamento às transações manuais em caso de erro,etc TransactionStatus status = transactionManager.getTransaction(def); cantCorridaGenerada = 0; cantCorridaCommit = 1; @@ -1014,7 +1020,7 @@ public class CorridaServiceImpl implements CorridaService { log.debug(" Generacion cant dias " + sdf.format(dataDeOriginal)); - //TODO: Melhorar o tratamento às transações manuais em caso de erro,etc + // TODO: Melhorar o tratamento às transações manuais em caso de erro,etc DefaultTransactionDefinition def = new DefaultTransactionDefinition(DefaultTransactionDefinition.PROPAGATION_REQUIRES_NEW); TransactionStatus status = transactionManager.getTransaction(def); @@ -1057,17 +1063,17 @@ public class CorridaServiceImpl implements CorridaService { calendarData.add(Calendar.DATE, 1); dataDe = calendarData.getTime(); } - + log.info("commit bloco corridas"); - + transactionManager.commit(status); status = transactionManager.getTransaction(def); - + } if (!status.isCompleted()) { log.info("commit bloco final"); - + transactionManager.commit(status); } @@ -1093,9 +1099,9 @@ public class CorridaServiceImpl implements CorridaService { Boolean dentroVigenciaEsquemaOperacional = !lsEsquemaCorrida.isEmpty(); if (dentroVigenciaEsquemaOperacional) { log.debug("Geracao de servicos sem cant dias especifico. Adotando o padrao"); - + this.generarCorrida(dataDe, lsEsquemaCorrida); - + } else { log.info("No hay esquema vigente para la fecha " + sdfData.format(dataDe)); } @@ -1112,32 +1118,32 @@ public class CorridaServiceImpl implements CorridaService { return generacionExitosa; } - - private int cantDiasMaxGerarCorridasManual(){ - + private int cantDiasMaxGerarCorridasManual() { + Constante constante = constanteService.buscarPorNomeConstante("CANT_MAX_CORRIDA_GERA_MANUAL"); - - if ((constante == null) ||(StringUtils.isBlank(constante.getValorconstante()))){ + + if ((constante == null) || (StringUtils.isBlank(constante.getValorconstante()))) { return CANT_MAX_CORRIDA_GERA_MANUAL; } - + return Integer.valueOf(constante.getValorconstante()); - + } - @Transactional(readOnly = true, propagation = Propagation.SUPPORTS,rollbackFor=BusinessException.class) + + @Transactional(readOnly = true, propagation = Propagation.SUPPORTS, rollbackFor = BusinessException.class) public Long generarCorridasSelecionadas(List lsEsquemaCorrida, Date dataDe, Date dataAte) throws BusinessException { - + int cantDiasGeneracion = DateUtil.getElapsedDias(dataDe, dataAte); - + int cantDiasMaxGerarCorridasManual = cantDiasMaxGerarCorridasManual(); - - log.info("cantDiasGeneracion="+cantDiasGeneracion); - log.info("cantDiasMaxGerarCorridasManual="+cantDiasMaxGerarCorridasManual); - - if (cantDiasGeneracion > cantDiasMaxGerarCorridasManual()){ - throw new BusinessException("corridaServiceImpl.geracaoCorrida.cantDiasManual", new Object[]{cantDiasMaxGerarCorridasManual}); + + log.info("cantDiasGeneracion=" + cantDiasGeneracion); + log.info("cantDiasMaxGerarCorridasManual=" + cantDiasMaxGerarCorridasManual); + + if (cantDiasGeneracion > cantDiasMaxGerarCorridasManual()) { + throw new BusinessException("corridaServiceImpl.geracaoCorrida.cantDiasManual", new Object[] { cantDiasMaxGerarCorridasManual }); } - + SimpleDateFormat sdfData = new SimpleDateFormat("dd/MM/yyyy"); log.info("** SELECIONADOS - Data De: " + sdfData.format(dataDe) + " **Data Ateh: " + sdfData.format(dataAte)); @@ -1216,4 +1222,101 @@ public class CorridaServiceImpl implements CorridaService { public Boolean atualizarCorridaFecHusoFecVerano(Estado estado, Date dataInicial) { return atualizarCorridaFecHusoFecVerano(estado, dataInicial, null); } + + @Override + public List buscarCorridaRelatorio(Connection conexao, Parada origem, Parada destino, + Date feccorrida, Integer corridaId) { + + List ls = new ArrayList(); + try { + StringBuilder sql = new StringBuilder(); + sql.append(" select "); + sql.append(" c.corrida_id as corrida_id, "); + sql.append(" c.feccorrida as feccorrida, "); + sql.append(" c.fechorsalida as fechorsalida, "); + sql.append(" origen.parada_id as origen_id, "); + sql.append(" origen.descparada as origen, "); + sql.append(" destino.parada_id as destino_id, "); + sql.append(" destino.descparada as destino, "); + sql.append(" r.ruta_id as ruta_id, "); + sql.append(" r.descruta as descruta, "); + sql.append(" cs.claseservicio_id as claseservicio_id, "); + sql.append(" cs.descclase as descclase "); + sql.append(" from corrida c "); + sql.append(" inner join parada origen on c.origen_id = origen.parada_id "); + sql.append(" inner join parada destino on c.destino_id = destino.parada_id "); + sql.append(" inner join ruta r on c.ruta_id = r.ruta_id "); + sql.append(" inner join clase_servicio cs on c.claseservicio_id = cs.claseservicio_id "); + sql.append(" where c.activo <> 0 "); + sql.append(corridaId == null ? "" : " and c.corrida_id = ? "); + sql.append(feccorrida == null ? "" : " and c.feccorrida = ? "); + sql.append(origem == null ? "" : " and c.origen_id = ? "); + sql.append(destino == null ? "" : " and c.destino_id = ? "); + + int atbNum = 1; + PreparedStatement stmt = conexao.prepareStatement(sql.toString()); + if (corridaId != null) { + stmt.setInt(atbNum, corridaId); + atbNum++; + } + + if (feccorrida != null) { + stmt.setDate(atbNum, new java.sql.Date(feccorrida.getTime())); + atbNum++; + } + + if (origem != null) { + stmt.setInt(atbNum, origem.getParadaId()); + atbNum++; + } + + if (destino != null) { + stmt.setInt(atbNum, destino.getParadaId()); + atbNum++; + } + + ResultSet rset = stmt.executeQuery(); + + while (rset.next()) { + + Id id = new Id(); + id.setCorridaId(rset.getInt("corrida_id")); + id.setFeccorrida(rset.getDate("feccorrida")); + + Parada o = new Parada(); + o.setParadaId(rset.getInt("origen_id")); + o.setDescparada(rset.getString("origen")); + + Parada d = new Parada(); + d.setParadaId(rset.getInt("destino_id")); + d.setDescparada(rset.getString("destino")); + + Ruta ruta = new Ruta(); + ruta.setRutaId(rset.getInt("ruta_id")); + ruta.setDescruta(rset.getString("descruta")); + + ClaseServicio claseServicio = new ClaseServicio(); + claseServicio.setClaseservicioId(rset.getInt("claseservicio_id")); + claseServicio.setDescclase(rset.getString("descclase")); + + Corrida corrida = new Corrida(); + corrida.setId(id); + corrida.setFechorsalida(new Date(rset.getTimestamp("fechorsalida").getTime())); + corrida.setOrigem(o); + corrida.setDestino(d); + corrida.setRuta(ruta); + corrida.setClaseServicio(claseServicio); + + ls.add(corrida); + + } + + } catch (SQLException e) { + log.error("", e); + } + + return ls; + + } + }