Example #1
0
        public IHttpActionResult editarParada(int IdParada, [FromBody] DTOParada parada)
        {
            try
            {
                double longitud;
                double latitud;

                if (!Double.TryParse(parada.Lat, out latitud))
                {
                    return(Content(HttpStatusCode.NotFound, "La latitude no tiene el formato correcto"));
                }
                // Si no puede convertir la longitud responde un 404
                if (!Double.TryParse(parada.Long, out longitud))
                {
                    return(Content(HttpStatusCode.NotFound, "La longitud no tiene el formato correcto"));
                }

                EParada p = cAdmin.editarParada(parada.IdParada, parada.Nombre, latitud, longitud);
                if (p != null)
                {
                    return(Ok(p));
                }
                return(Content(HttpStatusCode.NotFound, "La parada ya existe"));
            }
            catch (Exception)
            {
                return(NotFound());
            }
        }
Example #2
0
        private DTOnextBus notificacionProximidad2(EParada Eparada, int viaje, TimeSpan hora)
        {
            int     Parada = Eparada.IdParada;
            ESalida salida = iSalida.getSalidas(iViaje.getViaje(viaje).IdSalida);

            string matric = iVehiculo.getVehiculos(salida.IdVehiculo).Matricula;


            DTOnextBus nextBus = new DTOnextBus();

            if (isFinalParada(Parada, viaje))
            {
                nextBus.matricula = "N/A";
                nextBus.parada    = "N/A";
                nextBus.hora      = "N/A";
                return(nextBus);
            }
            int idNextP = nextParadaNot(Parada, viaje);

            int      tiempo  = iTramo.getTramos(salida.IdLinea, idNextP).TiempoEstimado;
            TimeSpan minutes = TimeSpan.FromMinutes(tiempo);

            string horastr = hora.Add(minutes).ToString();

            nextBus.parada    = iParada.getParada(idNextP).Nombre;
            nextBus.matricula = matric;
            nextBus.hora      = horastr;

            return(nextBus);
        }
Example #3
0
 private void cargarListaDeParadasD(ELinea linea, EParada parada)
 {
     if (linea != null)
     {
         Service1Client s = new Service1Client();
         lsD.ItemsSource = s.GetParadasD(linea.IdLinea, parada.IdParada);
     }
 }
Example #4
0
 private void lsO_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     if (lsO.SelectedIndex < 0)
     {
         cargarListaDeParadasD(null, null);
         return;
     }
     paradaOSelected = (EParada)lsO.SelectedValue;
     cargarListaDeParadasD(lineaSelected, paradaOSelected);
 }
Example #5
0
        private EParada nextParada(List <ETramo> tramos, int ord)
        {
            foreach (var t in tramos)
            {
                if (t.Orden == (ord + 1))
                {
                    return(iParada.getParada(t.IdParada));
                }
            }
            EParada ep = new EParada();

            return(ep);
        }
Example #6
0
        public FyH_selectViaje(ELinea _lineaSelected, EParada _paradaOSelected, EParada _paradaDSelected)
        {
            InitializeComponent();
            lineaSelected   = _lineaSelected;
            paradaOSelected = _paradaOSelected;
            paradaDSelected = _paradaDSelected;
            cargarHorasSalidas(lineaSelected);
            btnSig.Visibility = System.Windows.Visibility.Hidden;
            lsA.Visibility    = System.Windows.Visibility.Hidden;
            lbA.Visibility    = System.Windows.Visibility.Hidden;

            // cargarFechasViaje(null);

            //cargarFechasDeViajes();
        }
Example #7
0
        public documento(ELinea _lineaSelected, EParada _paradaOSelected, EParada _paradaDSelected, ESalida _SalidaSelected, EViaje _fechaSelected, int _AsientoSelected, int _PrecioSelected)
        {
            InitializeComponent();
            lineaSelected   = _lineaSelected;
            paradaOSelected = _paradaOSelected;
            paradaDSelected = _paradaDSelected;
            SalidaSelected  = _SalidaSelected;
            fechaSelected   = _fechaSelected;
            AsientoSelected = _AsientoSelected;
            PrecioSelected  = _PrecioSelected;

            btnComprar.Visibility = System.Windows.Visibility.Hidden;
            tbDoc.Visibility      = System.Windows.Visibility.Hidden;
            lbV.Content           = "$ " + PrecioSelected.ToString();

            //btnSig.IsEnabled = false;
        }
Example #8
0
        static public Parada eparadaAParada(EParada Epar)
        {
            Parada par = new Parada();

            par.IdParada = Epar.IdParada;
            par.Nombre   = Epar.Nombre;
            par.Lat      = Epar.Lat;
            par.Long     = Epar.Long;

            List <Pasaje> lst = new List <Pasaje>();

            foreach (var s in Epar.Pasaje)
            {
                lst.Add(epasajeAPasaje(s));
            }
            par.Pasaje = lst;

            List <Pasaje> lst2 = new List <Pasaje>();

            foreach (var s in Epar.Pasaje1)
            {
                lst2.Add(epasajeAPasaje(s));
            }
            par.Pasaje1 = lst2;

            List <Tramo> lst3 = new List <Tramo>();

            foreach (var s in Epar.Tramo)
            {
                lst3.Add(etramoATramo(s));
            }
            par.Tramo = lst3;

            List <Llegada> lst4 = new List <Llegada>();

            foreach (var s in Epar.Llegada)
            {
                lst4.Add(ellegadaAllegada(s));
            }
            par.Llegada = lst4;
            return(par);
        }
Example #9
0
        static public EParada paradaAEParada(Parada par)
        {
            EParada Epar = new EParada();

            Epar.IdParada = par.IdParada;
            Epar.Nombre   = par.Nombre;
            Epar.Lat      = par.Lat;
            Epar.Long     = par.Long;

            List <EPasaje> lst = new List <EPasaje>();

            foreach (var s in par.Pasaje)
            {
                lst.Add(pasajeAEPasaje(s));
            }
            Epar.Pasaje = lst;

            List <EPasaje> lst2 = new List <EPasaje>();

            foreach (var s in par.Pasaje1)
            {
                lst2.Add(pasajeAEPasaje(s));
            }
            Epar.Pasaje1 = lst2;

            List <ETramo> lst3 = new List <ETramo>();

            foreach (var s in par.Tramo)
            {
                lst3.Add(tramoAETramo(s));
            }
            Epar.Tramo = lst3;

            List <ELlegada> lst4 = new List <ELlegada>();

            foreach (var s in par.Llegada)
            {
                lst4.Add(llegadaAEllegada(s));
            }
            Epar.Llegada = lst4;
            return(Epar);
        }
Example #10
0
 /// <summary>
 /// Obtiene todas las paradas de la BD
 /// </summary>
 /// <returns>Lista de EParadas</returns>
 public List <EParada> getAllParadas()
 {
     try
     {
         using (uybusEntities db = new uybusEntities())
         {
             List <EParada> lstEParada = new List <EParada>();
             var            Paradas    = db.Parada;
             foreach (var p in Paradas)
             {
                 EParada ep = Converter.paradaAEParada(p);
                 lstEParada.Add(ep);
             }
             return(lstEParada);
         }
     }
     catch (Exception e)
     {
         Console.WriteLine("Error en DAL_Parada. Método: getAllParadas " + e.Message);
         throw e;
     }
 }
Example #11
0
        public IHttpActionResult crearParada([FromBody] DTOParada parada)
        {
            try
            {
                if (parada != null)
                {
                    double longitud;
                    double latitud;

                    if (String.IsNullOrEmpty(parada.Nombre))
                    {
                        return(Content(HttpStatusCode.NotFound, "El nombre no es correcto"));
                    }
                    // Si no puede convertir la latitude responde un 404
                    if (!Double.TryParse(parada.Lat, out latitud))
                    {
                        return(Content(HttpStatusCode.NotFound, "La latitude no tiene el formato correcto"));
                    }
                    // Si no puede convertir la longitud responde un 404
                    if (!Double.TryParse(parada.Long, out longitud))
                    {
                        return(Content(HttpStatusCode.NotFound, "La longitud no tiene el formato correcto"));
                    }
                    EParada nuevaParada = cAdmin.crearParada(parada.Nombre, latitud, longitud);
                    if (nuevaParada == null)
                    {
                        return(Content(HttpStatusCode.BadRequest, "Ya existe una parada con ese nombre"));
                    }
                    return(Ok(nuevaParada));
                }
                return(Content(HttpStatusCode.BadRequest, "No se creó la nueva parada"));
            }
            catch (Exception)
            {
                return(NotFound());
            }
        }
Example #12
0
 private void lsD_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     paradaDSelected = (EParada)lsD.SelectedValue;
     btnS.Visibility = System.Windows.Visibility.Visible;
 }
Example #13
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="idUsuario"></param>
        /// <param name="idParada">Que no sea la terminal</param>
        /// <returns></returns>
        public List <DTOproxVehiculo> proximoVehiculo(int idUsuario, int idParada)
        {
            List <DTOproxVehiculo> proxVs = new List <DTOproxVehiculo>();

            EParada ep = iParada.getParada(idParada);

            List <ETramo> tramos = ep.Tramo.ToList(); // lista de tramos

            List <int> idLineas = new List <int>();

            foreach (var t in tramos)
            {
                idLineas.Add(t.IdLinea);
            }
            idLineas.Distinct(); // lista de lineas

            int            ord  = 0;
            int            idpa = 0;
            List <EParada> paradasAnteriores = new List <EParada>();

            foreach (var idL in idLineas)
            {
                ord = iTramo.getTramos(idL, idParada).Orden - 1;
                if (ord == 0)
                {
                    throw new Exception("La parada no puede ser la terminal");
                }
                idpa = getOrd(iLinea.getLinea(idL).Tramo.ToList(), ord);
                paradasAnteriores.Add(iParada.getParada(idpa));
            }

            //lista de viajes de una parada hordendaos por hora
            List <EViaje> viajes = new List <EViaje>();

            foreach (var par in paradasAnteriores)
            {
                foreach (var ll in par.Llegada)
                {
                    if (ultimaParada(ll.idViaje) != iParada.getParada(idParada))
                    {
                        viajes.Add(iViaje.getViaje(ll.idViaje));
                    }
                }
            }

            List <EViaje> misViajs = new List <EViaje>();
            EUsuario      usuario  = iUsuario.getUsuario(idUsuario);

            if (usuario == null)
            {
                return(null);
            }
            foreach (var pasaje in iUsuario.getUsuario(idUsuario).Pasaje.ToList())
            {
                misViajs.Add(iViaje.getViaje(pasaje.IdViaje));
            }

            foreach (var viaje in viajes)
            {
                foreach (var miV in misViajs)
                {
                    DTOproxVehiculo proxV = new DTOproxVehiculo();
                    proxV.linea    = iLinea.getLinea(iSalida.getSalidas(miV.IdSalida).IdLinea).Nombre;
                    proxV.Vehiculo = iVehiculo.getVehiculos(iSalida.getSalidas(viaje.IdSalida).IdVehiculo);
                    if (viaje.IdViaje == miV.IdViaje)
                    {
                        proxV.reservado = true;
                    }
                    else
                    {
                        proxV.reservado = false;
                    }
                    proxVs.Add(proxV);
                }
            }

            List <DTOproxVehiculo> proximos = proxVs
                                              .GroupBy(p => p.Vehiculo.Matricula)
                                              .Select(g => g.First())
                                              .ToList();

            return(proximos);
        }
Example #14
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);
            }
        }