diff --git a/src/com/rjconsultores/ventaboletos/entidad/Tramo.java b/src/com/rjconsultores/ventaboletos/entidad/Tramo.java index 5fdb76f23..1a80265e4 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/Tramo.java +++ b/src/com/rjconsultores/ventaboletos/entidad/Tramo.java @@ -20,13 +20,13 @@ import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.OneToMany; +import javax.persistence.SequenceGenerator; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; -import javax.persistence.SequenceGenerator; +import org.apache.commons.lang.BooleanUtils; import org.hibernate.LazyInitializationException; -import org.jfree.util.Log; /** * @@ -83,6 +83,8 @@ public class Tramo implements Serializable { private List lsOrgaoTramo; @Column(name = "CANTKMENTRADASAIDA") private BigDecimal kmEntradaSaida; + @Column(name = "INDKMENTRADASAIDAORIGEM") + private Boolean indKMEntradaSaidaOrigem; public Tramo() { this.kmEntradaSaida = BigDecimal.ZERO; @@ -299,7 +301,19 @@ public class Tramo implements Serializable { public void setTramoKms(List tramoKms) { this.tramoKms = tramoKms; } + /** + * @return the indKMEntradaSaidaOrigem + */ + public Boolean getIndKMEntradaSaidaOrigem() { + return BooleanUtils.toBoolean(indKMEntradaSaidaOrigem); + } + /** + * @param indKMEntradaSaidaOrigem the indKMEntradaSaidaOrigem to set + */ + public void setIndKMEntradaSaidaOrigem(Boolean indKMEntradaSaidaOrigem) { + this.indKMEntradaSaidaOrigem = indKMEntradaSaidaOrigem; + } @Override public String toString() { return getDesctramo().concat(" - ").concat(this.getVia().getNombvia()); diff --git a/src/com/rjconsultores/ventaboletos/service/impl/TramoRutaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/TramoRutaServiceImpl.java index 2e66bc4bc..0fa2f9c41 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/TramoRutaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/TramoRutaServiceImpl.java @@ -167,8 +167,10 @@ public class TramoRutaServiceImpl implements TramoRutaService { rutaSecuencia.setCantKmEntradaSaida(s.getKmEntradaSaida()); rutaSecuencia.setKmOriginal(s.getKmReal().subtract(s.getKmEntradaSaida())); BigDecimal KmES = BigDecimal.ZERO; + boolean isKMEntradaSaidaOrigem = false; if (kmEntradaSaida.containsKey(s.getOrigen())){ KmES = kmEntradaSaida.get(s.getOrigen()); + isKMEntradaSaidaOrigem = true; } if (kmEntradaSaida.containsKey(s.getDestino())){ KmES = kmEntradaSaida.get(s.getDestino()); @@ -181,6 +183,7 @@ public class TramoRutaServiceImpl implements TramoRutaService { tramo.setDestino(s.getDestino()); tramo.setKmReal(KmES != null || KmES != BigDecimal.ZERO ? s.getKmReal().add(KmES) : s.getKmReal()); tramo.setKmEntradaSaida(KmES); + tramo.setIndKMEntradaSaidaOrigem(isKMEntradaSaidaOrigem); tramo.setVia(s.getVia()); tramo.setActivo(Boolean.TRUE); tramo.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); @@ -191,6 +194,7 @@ public class TramoRutaServiceImpl implements TramoRutaService { } else { Tramo tramo = rutaSecuencia.getTramo(); tramo.setKmEntradaSaida(KmES); + tramo.setIndKMEntradaSaidaOrigem(isKMEntradaSaidaOrigem); tramo = tramoDAO.actualizacion(tramo); } rutaSecuencia.setRuta(ruta); @@ -617,7 +621,7 @@ public class TramoRutaServiceImpl implements TramoRutaService { rutaSecuencia.setNumsecuencia(s.getSecuencia().shortValue()); rutaSecuencia.setTramo(tramoService.obtenerTramotPorOrigemDestinoVia(s.getOrigen(), s.getDestino(), s.getVia())); rutaSecuencia.setRuta(ruta); - rutaSecuencia.setKmOriginal(rutaSecuencia.getTramo().getKmReal().subtract(rutaSecuencia.getTramo().getKmEntradaSaida())); + rutaSecuencia.setKmOriginal(rutaSecuencia.getTramo().getKmRealSemKmEntradaSaida()); if (rutaSecuencia.getRuta() == null && rutaSecuencia.getRuta().getRutaId() == null) { rutaService.suscribir(rutaSecuencia.getRuta(), null);