diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCatalogoDeRutaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCatalogoDeRutaController.java index 0469a2eb0..d213de638 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCatalogoDeRutaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCatalogoDeRutaController.java @@ -55,6 +55,7 @@ import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.EsquemaCorrida; import com.rjconsultores.ventaboletos.entidad.GrupoRuta; import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente; +import com.rjconsultores.ventaboletos.entidad.OrgaoTramo; import com.rjconsultores.ventaboletos.entidad.Parada; import com.rjconsultores.ventaboletos.entidad.ParadaSecuencia; import com.rjconsultores.ventaboletos.entidad.ParadaSecuenciaCombinacaoLinha; @@ -962,20 +963,29 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer } - private void alteraKmEntradaSaida(BigDecimal km){ + private void alteraKmCoeficiente(Tramo tramo, BigDecimal kmEntradaSaidaAnterior, BigDecimal KmEntradaSaidaNovo){ + tramo.setLsOrgaoTramo(tramoService.getLsOrgaoTramoByTramo(tramo)); + for (OrgaoTramo ot : tramo.getLsOrgaoTramo()){ + ot.setKmCoeficiente1(ot.getKmCoeficiente1().subtract(kmEntradaSaidaAnterior)); + ot.setKmCoeficiente1(ot.getKmCoeficiente1().add(KmEntradaSaidaNovo)); + } + } + + private void alteraKmEntradaSaida(BigDecimal KmEntradaSaidaNovo){ RutaSecuencia rs = lsRutaSecuencia.get(rutaSecuenciaList.getSelectedIndex()); - lsParadasSequencia.get(rutaSecuenciaList.getSelectedIndex()).setKmEntradaSaida(km.toString().replace(".", ",")); + lsParadasSequencia.get(rutaSecuenciaList.getSelectedIndex()).setKmEntradaSaida(KmEntradaSaidaNovo.toString().replace(".", ",")); rutaSecuenciaList.setData(lsParadasSequencia); - BigDecimal kmES = rs.getCantKmEntradaSaida() == null ? BigDecimal.ZERO : rs.getCantKmEntradaSaida(); - rs.setCantKmEntradaSaida(km); + BigDecimal kmEntradaSaidaAnterior = rs.getCantKmEntradaSaida() == null ? BigDecimal.ZERO : rs.getCantKmEntradaSaida(); + rs.setCantKmEntradaSaida(KmEntradaSaidaNovo); List alterados = new ArrayList(); for (RutaCombinacion rc : lsRutacComb){ if (rc.getTramo().getOrigem().equals(rs.getTramo().getOrigem()) || rc.getTramo().getDestino().equals(rs.getTramo().getOrigem())){ - rc.getTramo().setKmReal(rc.getTramo().getKmReal().subtract(kmES)); - rc.getTramo().setKmReal(rc.getTramo().getKmReal().add(km)); + rc.getTramo().setKmReal(rc.getTramo().getKmReal().subtract(kmEntradaSaidaAnterior)); + rc.getTramo().setKmReal(rc.getTramo().getKmReal().add(KmEntradaSaidaNovo)); alterados.add(rc.getTramo()); + alteraKmCoeficiente(rc.getTramo(), kmEntradaSaidaAnterior, KmEntradaSaidaNovo); try{ tramoService.suscribirActualizar(rc.getTramo()); } catch(BusinessException be){ @@ -984,6 +994,7 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer rutaSecuenciaService.actualizacion(rs); } } + System.out.println(alterados); } public void onClick$btnAlterarKmEntradaSaida(Event ev) throws InterruptedException {