diff --git a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java index 490c60e71..f0b62de89 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java @@ -816,7 +816,7 @@ public class CorridaServiceImpl implements CorridaService { return b - a; } - private void generarCorrida(Date dataGeracao, List lsEsquemaCorrida) { + private void generarCorrida(Date dataGeracao, List lsEsquemaCorrida, boolean isGeracaoAutomaticaCorrida) { DefaultTransactionDefinition def = new DefaultTransactionDefinition(DefaultTransactionDefinition.PROPAGATION_REQUIRES_NEW); @@ -833,13 +833,15 @@ public class CorridaServiceImpl implements CorridaService { log.info("esquema=" + esquemaCorrida.getEsquemacorridaId() + " numCorrida=" + esquemaCorrida.getNumCorrida()); - boolean esHijoRebote = esquemaCorridaDAO.esHijoRebote(esquemaCorrida); - boolean esSegundoPiso = esquemaCorridaDAO.esSegundoPiso(esquemaCorrida); - - //Nessas duas condições, o "filho" só é gerado a partir do esquema corrida "pai" - if (esHijoRebote || esSegundoPiso) { - log.info(String.format("Esquema nao gerado. esHijoRebote:%s ; esSegundoPiso: %s",esHijoRebote,esSegundoPiso)); - continue; + if (isGeracaoAutomaticaCorrida) { + boolean esHijoRebote = esquemaCorridaDAO.esHijoRebote(esquemaCorrida); + boolean esSegundoPiso = esquemaCorridaDAO.esSegundoPiso(esquemaCorrida); + + //Nessas duas condições, o "filho" só é gerado a partir do esquema corrida "pai" + if (esHijoRebote || esSegundoPiso) { + log.info(String.format("Esquema nao gerado. esHijoRebote:%s ; esSegundoPiso: %s",esHijoRebote,esSegundoPiso)); + continue; + } } Corrida corrida = generarCorrida(esquemaCorrida, dataGeracao, false, isFeriado); @@ -1109,7 +1111,7 @@ public class CorridaServiceImpl implements CorridaService { List lsTmp = new ArrayList(); lsTmp.add(esquemaCorrida); - this.generarCorrida(dataDe, lsTmp); + this.generarCorrida(dataDe, lsTmp, true); calendarData.setTime(dataDe); calendarData.add(Calendar.DATE, 1); @@ -1154,7 +1156,7 @@ public class CorridaServiceImpl implements CorridaService { if (dentroVigenciaEsquemaOperacional) { log.debug("Geracao de servicos sem cant dias especifico. Adotando o padrao"); - this.generarCorrida(dataDe, lsEsquemaCorrida); + this.generarCorrida(dataDe, lsEsquemaCorrida, true); } else { log.info("No hay esquema vigente para la fecha " + sdfData.format(dataDe)); @@ -1210,7 +1212,7 @@ public class CorridaServiceImpl implements CorridaService { while (DateUtil.compareOnlyDate(dataDe, dataAte) <= 0) { log.info("*** Data: " + sdfData.format(dataDe)); - this.generarCorrida(dataDe, lsEsquemaCorrida); + this.generarCorrida(dataDe, lsEsquemaCorrida, false); calendarData.add(Calendar.DATE, 1); dataDe = calendarData.getTime();