Example #1
0
        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);
        }
Example #2
0
        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);
            }
        }