public void iniciarViaje(int idViaje, TimeSpan horaInicioR) { iViaje.iniciarViaje(idViaje, horaInicioR); int idP = iLinea.getLinea(iSalida.getSalidas(iViaje.getViaje(idViaje).IdSalida).IdLinea).Tramo.ToList().First().IdParada; iLllegada.addLlegada(idP, idViaje, horaInicioR, iViaje.getViaje(idViaje).Fecha); }
public DTOnextBus CrearLlegada(int idViaje, TimeSpan hora, DateTime fecha) { List <ETramo> tramos = iLinea.getLinea(iSalida.getSalidas(iViaje.getViaje(idViaje).IdSalida).IdLinea).Tramo.ToList(); List <EParada> paradas = new List <EParada>(); //todas las paradas del viaje foreach (var tramo in tramos) { paradas.Add(iParada.getParada(tramo.IdParada)); } List <ELlegada> llegadas = new List <ELlegada>(); //todas las llegadas del viaje foreach (var llegada in iLllegada.getAllLlegadas()) { if (llegada.idViaje == idViaje) { llegadas.Add(iLllegada.getLlegada(llegada.idParada, llegada.idViaje)); } } int idUltParada = llegadas.Last().idParada; //ultima llegada por la que paso EParada proxP = iParada.getParada(idUltParada); int ord = orden(idUltParada, tramos); if (!isUltima(idUltParada, tramos)) { proxP = nextParada(tramos, ord); if (isFinalParada(proxP.IdParada, idViaje)) { iViaje.finalizarViaje(idViaje); iLllegada.addLlegada(proxP.IdParada, idViaje, hora, fecha); DTOnextBus ee = new DTOnextBus(); ee.matricula = "N/A"; ee.hora = "N/A"; ee.parada = "N/A"; return(ee); } iLllegada.addLlegada(proxP.IdParada, idViaje, hora, fecha); DTOnextBus siguientesPjrs = notificacionProximidad2(proxP, idViaje, hora); return(siguientesPjrs); } else { if (isFinalParada(proxP.IdParada, idViaje)) { iViaje.finalizarViaje(idViaje); iLllegada.addLlegada(proxP.IdParada, idViaje, hora, fecha); DTOnextBus sigui = new DTOnextBus(); sigui.matricula = "N/A"; sigui.hora = "N/A"; sigui.parada = "N/A"; return(sigui); } iLllegada.addLlegada(proxP.IdParada, idViaje, hora, fecha); DTOnextBus siguientesPjrs = new DTOnextBus(); siguientesPjrs.matricula = "N/A"; siguientesPjrs.hora = "N/A"; siguientesPjrs.parada = "N/A"; return(siguientesPjrs); } }