fixes bug #7679 - revert
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@59164 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
f2a902765b
commit
b66af469bd
|
@ -8,7 +8,6 @@ import java.sql.Connection;
|
||||||
import java.sql.PreparedStatement;
|
import java.sql.PreparedStatement;
|
||||||
import java.sql.ResultSet;
|
import java.sql.ResultSet;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
import java.text.ParseException;
|
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
|
@ -34,7 +33,6 @@ import com.rjconsultores.ventaboletos.dao.CorridaDAO;
|
||||||
import com.rjconsultores.ventaboletos.dao.EsquemaCorridaDAO;
|
import com.rjconsultores.ventaboletos.dao.EsquemaCorridaDAO;
|
||||||
import com.rjconsultores.ventaboletos.dao.TramoTiempoDAO;
|
import com.rjconsultores.ventaboletos.dao.TramoTiempoDAO;
|
||||||
import com.rjconsultores.ventaboletos.entidad.AsientoExclusivo;
|
import com.rjconsultores.ventaboletos.entidad.AsientoExclusivo;
|
||||||
import com.rjconsultores.ventaboletos.entidad.Ciudad;
|
|
||||||
import com.rjconsultores.ventaboletos.entidad.ClaseServicio;
|
import com.rjconsultores.ventaboletos.entidad.ClaseServicio;
|
||||||
import com.rjconsultores.ventaboletos.entidad.Constante;
|
import com.rjconsultores.ventaboletos.entidad.Constante;
|
||||||
import com.rjconsultores.ventaboletos.entidad.Corrida;
|
import com.rjconsultores.ventaboletos.entidad.Corrida;
|
||||||
|
@ -412,6 +410,7 @@ public class CorridaServiceImpl implements CorridaService {
|
||||||
* @return - La corrida generada o null si no fue generada.
|
* @return - La corrida generada o null si no fue generada.
|
||||||
*/
|
*/
|
||||||
private Corrida generarCorrida(EsquemaCorrida esquemaCorrida, Date dataGeracao, boolean isPisoExtra, Boolean isFeriado) {
|
private Corrida generarCorrida(EsquemaCorrida esquemaCorrida, Date dataGeracao, boolean isPisoExtra, Boolean isFeriado) {
|
||||||
|
|
||||||
GregorianCalendar calendario = new GregorianCalendar();
|
GregorianCalendar calendario = new GregorianCalendar();
|
||||||
calendario.setTime(dataGeracao);
|
calendario.setTime(dataGeracao);
|
||||||
|
|
||||||
|
@ -744,33 +743,34 @@ public class CorridaServiceImpl implements CorridaService {
|
||||||
|
|
||||||
private Date calcularHusoHorVeranoLlegada(EsquemaTramo esquemaTramo, CorridaTramo corridaTramo) {
|
private Date calcularHusoHorVeranoLlegada(EsquemaTramo esquemaTramo, CorridaTramo corridaTramo) {
|
||||||
|
|
||||||
Ciudad ciudadOrigem = esquemaTramo.getTramo().getOrigem().getCiudad();
|
Estado estadoOrigen = esquemaTramo.getTramo().getOrigem().getCiudad().getEstado();
|
||||||
int tiempoOrigen = ciudadOrigem.getZonaHoraria() != null ? ciudadOrigem.getZonaHoraria()
|
int tiempoOrigen = estadoOrigen.getTiempoHorHuso() == null ? 0 : estadoOrigen.getTiempoHorHuso();
|
||||||
: ciudadOrigem.getEstado().getTiempoHorHuso() != null ? ciudadOrigem.getEstado().getTiempoHorHuso() : 0;
|
|
||||||
|
|
||||||
Date fecInicioHorVerano = ciudadOrigem.getEstado().getFecInicioHorVerano();
|
Date fecInicioHorVerano = estadoOrigen.getFecInicioHorVerano();
|
||||||
Date fecFinHorVerano = ciudadOrigem.getEstado().getFecFinoHorVerano();
|
Date fecFinHorVerano = estadoOrigen.getFecFinoHorVerano();
|
||||||
|
|
||||||
if (fecInicioHorVerano != null
|
if ((fecInicioHorVerano != null) && (fecFinHorVerano != null)) {
|
||||||
&& fecFinHorVerano != null
|
if ((DateUtil.compareOnlyDate(fecInicioHorVerano, corridaTramo.getFechorsalida()) <= 0) && (DateUtil.compareOnlyDate(fecFinHorVerano, corridaTramo.getFechorsalida()) >= 0)) {
|
||||||
&& DateUtil.compareOnlyDate(fecInicioHorVerano, corridaTramo.getFechorsalida()) <= 0
|
tiempoOrigen += estadoOrigen.getTiempoHorVerano();
|
||||||
&& DateUtil.compareOnlyDate(fecFinHorVerano, corridaTramo.getFechorsalida()) >= 0) {
|
}
|
||||||
tiempoOrigen += ciudadOrigem.getEstado().getTiempoHorVerano();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 21688
|
// 21688
|
||||||
Ciudad ciudadDestino = esquemaTramo.getTramo().getDestino().getCiudad();
|
Estado estadoDestino = esquemaTramo.getTramo().getDestino().getCiudad().getEstado();
|
||||||
int tiempoDestino = ciudadDestino.getZonaHoraria() != null ? ciudadDestino.getZonaHoraria()
|
int tiempoDestino = 0;
|
||||||
: ciudadDestino.getEstado().getTiempoHorHuso() != null ? ciudadDestino.getEstado().getTiempoHorHuso() : 0;
|
|
||||||
|
|
||||||
Date fecInicioHorVeranoDestino = ciudadDestino.getEstado().getFecInicioHorVerano();
|
if (!estadoDestino.equals(estadoOrigen)) {
|
||||||
Date fecFinHorVeranDestino = ciudadDestino.getEstado().getFecFinoHorVerano();
|
tiempoDestino = estadoDestino.getTiempoHorHuso() == null ? 0 : estadoDestino.getTiempoHorHuso();
|
||||||
|
|
||||||
if (fecInicioHorVeranoDestino != null
|
Date fecInicioHorVeranoDestino = estadoDestino.getFecInicioHorVerano();
|
||||||
&& fecFinHorVeranDestino != null
|
Date fecFinHorVeranDestino = estadoDestino.getFecFinoHorVerano();
|
||||||
&& DateUtil.compareOnlyDate(fecInicioHorVeranoDestino, corridaTramo.getFechorllegada()) <= 0
|
|
||||||
&& DateUtil.compareOnlyDate(fecFinHorVeranDestino, corridaTramo.getFechorllegada()) >= 0) {
|
if ((fecInicioHorVeranoDestino != null) && (fecFinHorVeranDestino != null)) {
|
||||||
tiempoDestino += ciudadDestino.getEstado().getTiempoHorVerano();
|
if ((DateUtil.compareOnlyDate(fecInicioHorVeranoDestino, corridaTramo.getFechorllegada()) <= 0) && (DateUtil.compareOnlyDate(fecFinHorVeranDestino, corridaTramo.getFechorllegada()) >= 0)) {
|
||||||
|
tiempoDestino += estadoDestino.getTiempoHorVerano();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
tiempoDestino = tiempoOrigen;
|
||||||
}
|
}
|
||||||
|
|
||||||
Calendar horLlegada = null;
|
Calendar horLlegada = null;
|
||||||
|
@ -784,6 +784,7 @@ public class CorridaServiceImpl implements CorridaService {
|
||||||
horLlegada.add(Calendar.MINUTE, (int) elapsedMinutes);
|
horLlegada.add(Calendar.MINUTE, (int) elapsedMinutes);
|
||||||
if (tiempoOrigen != tiempoDestino) {
|
if (tiempoOrigen != tiempoDestino) {
|
||||||
horLlegada.add(Calendar.HOUR, difHuso(tiempoOrigen, tiempoDestino));
|
horLlegada.add(Calendar.HOUR, difHuso(tiempoOrigen, tiempoDestino));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return (horLlegada == null) ? null : horLlegada.getTime();
|
return (horLlegada == null) ? null : horLlegada.getTime();
|
||||||
|
|
Loading…
Reference in New Issue