Exemple #1
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);
        }
Exemple #2
0
        /*
         *      public List<EViaje> GetViajes(int IdSalida)
         *      {
         *          return iSalida.getSalidas(IdSalida).Viaje.ToList();
         *      }
         */
        public List <int> GetAsientos(int fechaSelected)
        {
            EViaje         viaje              = iViaje.getViaje(fechaSelected);
            ESalida        salida             = iSalida.getSalidas(viaje.IdSalida);
            EVehiculo      vehiculo           = iVehiculo.getVehiculos(salida.IdVehiculo);
            int            cantidadDeAsientos = vehiculo.CantAsientos;
            List <EPasaje> lstPasajes         = viaje.Pasaje.ToList();

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

            foreach (var pasaje in lstPasajes)
            {
                if (pasaje.Asientos != null)
                {
                    lstPasajesOcupados.Add((int)pasaje.Asientos);
                }
            }
            List <int> listaTotal = new List <int>();

            for (int i = 1; i <= cantidadDeAsientos; i++)
            {
                listaTotal.Add(i);
            }
            List <int> asientosLibres = listaTotal.Except(lstPasajesOcupados).ToList();

            return(asientosLibres);
        }
Exemple #3
0
 private void cargarFechasDeViajes(ESalida salidaSelected)
 {
     if (salidaSelected != null)
     {
         Service1Client s = new Service1Client();
         lsFs.ItemsSource = s.GetFechasViajes(salidaSelected.IdSalida);
     }
 }
Exemple #4
0
 private void lsHdSalida_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     if (lsHdSalida.SelectedIndex < 0)
     {
         cargarFechasDeViajes(null);
         return;
     }
     //lsD.Items.Clear();
     SalidaSelected = (ESalida)lsHdSalida.SelectedValue;
     cargarFechasDeViajes(SalidaSelected);
 }
        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;
        }
Exemple #6
0
        public IHttpActionResult editarSalida(int IdSalida, [FromBody] DTOSalida salida)
        {
            try
            {
                ESalida li = cAdmin.editarSalida(salida.IdSalida, TimeSpan.Parse(salida.HoraInicio), salida.IdConductor, salida.IdVehiculo, salida.IdLinea);

                if (li != null)
                {
                    return(Ok(li));
                }
                return(Content(HttpStatusCode.NotFound, "La salida ya existe"));
            }
            catch (Exception)
            {
                return(NotFound());
            }
        }
Exemple #7
0
        static public Salida esalidaASalida(ESalida Esal)
        {
            Salida sal = new Salida();

            sal.IdSalida    = Esal.IdSalida;
            sal.HoraInicio  = Esal.HoraInicio;
            sal.IdConductor = Esal.IdConductor;
            sal.IdVehiculo  = Esal.IdVehiculo;
            sal.IdLinea     = Esal.IdLinea;
            List <Viaje> lst = new List <Viaje>();

            foreach (var s in Esal.Viaje)
            {
                lst.Add(eviajeAViaje(s));
            }
            sal.Viaje = lst;
            return(sal);
        }
Exemple #8
0
        private float utilidadPorSalida(int salida, List <DateTime> fechas)
        {
            float   costo = 0;
            ESalida sal   = iSalida.getSalidas(salida);

            if (sal == null)
            {
                return(-1);
            }
            foreach (var viaje in sal.Viaje.ToList())
            {
                if (fechas.Contains(viaje.Fecha))
                {
                    costo = costo + utilidadPorViaje(viaje.IdViaje);
                }
            }
            return(costo);
        }
Exemple #9
0
        static public ESalida salidaAESalida(Salida sal)
        {
            ESalida Esal = new ESalida();

            Esal.IdSalida    = sal.IdSalida;
            Esal.HoraInicio  = sal.HoraInicio;
            Esal.IdConductor = sal.IdConductor;
            Esal.IdVehiculo  = sal.IdVehiculo;
            Esal.IdLinea     = sal.IdLinea;

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

            foreach (var s in sal.Viaje)
            {
                lst.Add(viajeAEViaje(s));
            }
            Esal.Viaje = lst;
            return(Esal);
        }
Exemple #10
0
 public IHttpActionResult crearSalida([FromBody] DTOSalida dtoSal)
 {
     try
     {
         ESalida sal = cAdmin.crearSalida(dtoSal.IdConductor, dtoSal.IdVehiculo, dtoSal.IdLinea, TimeSpan.Parse(dtoSal.HoraInicio));
         if (dtoSal != null)
         {
             return(Ok(dtoSal));
         }
         else
         {
             return(Content(HttpStatusCode.BadRequest, "No se créo la salida"));
         }
     }
     catch (Exception)
     {
         return(NotFound());
     }
 }
Exemple #11
0
        private List <EPasaje> pasajesDeSalida(int salida, List <DateTime> fechas)
        {
            List <EPasaje> pasajes = new List <EPasaje>();
            ESalida        es      = iSalida.getSalidas(salida);

            if (es == null)
            {
                return(pasajes);
            }
            foreach (var viaje in es.Viaje.ToList())
            {
                if (fechas.Contains(viaje.Fecha))
                {
                    foreach (var pasaje in viaje.Pasaje.ToList())
                    {
                        pasajes.Add(pasaje);
                    }
                }
            }
            return(pasajes);
        }
Exemple #12
0
        public List <ESalida> getAllSalidas()
        {
            try
            {
                using (uybusEntities db = new uybusEntities())
                {
                    List <ESalida> lstEp = new List <ESalida>();

                    var salidas = db.Salida;

                    foreach (var p in salidas)
                    {
                        ESalida sal = Converter.salidaAESalida(p);
                        lstEp.Add(sal);
                    }
                    return(lstEp);
                }
            }
            catch (System.Exception ex)
            {
                Console.WriteLine("Error en DAL_Salida,  en getAllSalidas" + ex.Message);
                throw ex;
            }
        }
Exemple #13
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="idViaje"></param>
        /// <param name="idUsuario"> -1 si el usuario no esta logeado. </param>
        /// <param name="idParadaOrigen"></param>
        /// <param name="idParadaDestino"></param>
        /// <param name="tipoDoc"> "vacio" si el usaurio esta logeado.</param>
        /// <param name="documento"> "vacio" si el usaurio esta  logeado.</param>
        /// <param name="asiento"> Se gurdara -1 si, el costo de pasaje es inferior al parámetro.</param>
        /// <returns></returns>
        public EPasaje comprarPasaje(int idViaje, int idUsuario, int idParadaOrigen, int idParadaDestino, string tipoDoc, string documento, int asiento)
        {
            EViaje ev = iViaje.getViaje(idViaje);

            if (ev == null)
            {
                return(null);            //Si no encuentra el viaje retorna null
            }
            ESalida es = iSalida.getSalidas(ev.IdSalida);

            if (es == null)
            {
                return(null);            //Si no encuentra una salida retorna null
            }
            ELinea el = iLinea.getLinea(es.IdLinea);

            if (el == null)
            {
                return(null);            //Si no encuentra una linea retorna null
            }
            List <ETramo> tramos     = el.Tramo.ToList <ETramo>();
            int           posOrigen  = -1;
            int           posdestino = -1;

            foreach (var t in tramos)
            {
                if (t.IdLinea == el.IdLinea && t.IdParada == idParadaOrigen)
                {
                    posOrigen = tramos.IndexOf(t);
                }
                if (t.IdLinea == el.IdLinea && t.IdParada == idParadaDestino)
                {
                    posdestino = tramos.IndexOf(t);
                }
            }

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

            for (int e = posOrigen; e <= posdestino; e++)
            {
                subTramos.Add(tramos.ElementAt(e));
            }

            int cosotP = 0;

            foreach (var s in subTramos)
            {
                cosotP = cosotP + iTramo.valorVigente(s.IdLinea, s.IdParada);
            }

            EParametro epara = iParametro.getAllParametros().Last();

            if (epara.Valor > cosotP)
            {
                asiento = -1;
            }

            EPasaje ep = new EPasaje();

            if (idUsuario == -1) //Usuario NOO logeado
            {
                ep = iPasaje.addPasaje(asiento, documento, tipoDoc, idViaje, idParadaDestino, idParadaOrigen, idUsuario);
            }
            else //Usuario Logeado
            {
                EPersona epe = iPersona.getPersona(idUsuario);
                string   strTipoDoc;
                if (epe.TipoDocumento == 1)
                {
                    strTipoDoc = "CI";
                }
                else
                {
                    strTipoDoc = "Credencial";
                }

                ep = iPasaje.addPasaje(asiento, epe.Documento, strTipoDoc, idViaje, idParadaDestino, idParadaOrigen, idUsuario);

                EPersona eper    = iPersona.getPersona(idUsuario);
                string   correoE = eper.Correo;



                enviarCorreo(correoE, ep.IdPasaje.ToString(), eper, ep, cosotP);//generar pdf con codigo QR y enviarlo
            }

            return(ep);
        }