예제 #1
0
        public static List <Viaje> buscarAllViajes()
        {
            List <Viaje>    allViajes = new List <Viaje>();
            MySqlConnection con       = conexionDB.ObtenerConexion();

            try
            {
                string          sql = "SELECT ID, RECORRIDO, IDENTIFICADOR, DESDE, HASTA FROM VIAJES";
                MySqlCommand    cmd = new MySqlCommand(sql, con);
                MySqlDataReader dr  = cmd.ExecuteReader();

                while (dr.Read())
                {
                    Recorrido reco = RecorridoFacade.buscarPorId(dr.GetInt32(1));
                    allViajes.Add(new Viaje(dr.GetInt32(0), reco, dr.GetString(2), dr.GetString(3), dr.GetString(4), ViajeDiarioFacade.buscarPorViaje(dr.GetInt32(0)), HorarioFacade.buscarPorViaje(dr.GetInt32(0))));
                }
                dr.Close();
            }
            catch (Exception ex)
            {
                Console.WriteLine("Viaje buscarPorId: " + ex.Message);
                allViajes = null;
            }
            finally
            {
                con.Close();
            }

            return(allViajes);
        }
예제 #2
0
        public static void guardar(Recorrido recorrido)
        {
            try
            {
                MySqlConnection con = conexionDB.ObtenerConexion();
                MySqlCommand    cmd;
                MySqlDataReader dr;

                cmd = new MySqlCommand(string.Format("SELECT `AUTO_INCREMENT` FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'buses' AND TABLE_NAME = 'recorrido'"), con);
                dr  = cmd.ExecuteReader();
                while (dr.Read())
                {
                    recorrido.id = (int)dr.GetInt32(0);
                }
                dr.Close();

                Parada destino = recorrido.parada;
                while (destino.siguiente.id != -1)
                {
                    destino = destino.siguiente;
                }

                cmd = new MySqlCommand(string.Format("INSERT INTO RECORRIDO (ID, PARADA, ORIGEN, DESTINO_FINAL) VALUES ('{0}','{1}','{2}','{3}')", recorrido.id, recorrido.parada.id, recorrido.parada.ciudad.id, destino.ciudad.id), con);
                cmd.ExecuteNonQuery();

                ParadaFacade.guardar(recorrido.parada, recorrido.id);
                TrayectoFacade.guardar(recorrido.trayectos, recorrido.id);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
예제 #3
0
        public static Recorrido buscarPorId(int id)
        {
            Recorrido recorrido = null;

            if (id > -1)
            {
                MySqlConnection con = conexionDB.ObtenerConexion();
                try
                {
                    string          sql = "select id, parada from recorrido where id = " + id;
                    MySqlCommand    cmd = new MySqlCommand(sql, con);
                    MySqlDataReader dr  = cmd.ExecuteReader();

                    while (dr.Read())
                    {
                        List <Trayecto> trayectos = TrayectoFacade.buscarPorRecorrido(dr.GetInt32(0));
                        Console.WriteLine("trayectos buscarPorId: " + trayectos.Count);
                        recorrido = new Recorrido(dr.GetInt32(0), ParadaFacade.buscarPorId(dr.GetInt32(1)), trayectos);
                    }
                    dr.Close();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                    recorrido = null;
                }
                finally
                {
                    con.Close();
                }
            }
            return(recorrido);
        }
예제 #4
0
 public Viaje(int id, Recorrido recorrido, string identificador, string desde, string hasta, List <ViajeDiario> viajesDiarios, List <Horario> horarios)
 {
     this.id            = id;
     this.reco          = recorrido;
     this.identificador = identificador;
     this.fechaDesde    = desde;
     this.fechaHasta    = hasta;
     this.viajesDiarios = viajesDiarios;
     this.horarios      = horarios;
 }
예제 #5
0
        public static List <Recorrido> OrigenDestinoByRecorrido(Recorrido reco)
        {
            List <Recorrido> id  = new List <Recorrido>();
            MySqlConnection  con = conexionDB.ObtenerConexion();
            string           sql = "SELECT ID,PARADA,ORIGEN,DESTINO_FINAL FROM RECORRIDO WHERE ID =" + reco.id;
            MySqlCommand     cmd = new MySqlCommand(sql, con);
            MySqlDataReader  dr  = cmd.ExecuteReader();

            if (dr.HasRows == true)
            {
                while (dr.Read())
                {
                    Parada ciudad  = ParadaFacade.buscarPorId(dr.GetInt32(1));
                    Ciudad origen  = CiudadFacade.buscarPorId(dr.GetInt32(2));
                    Ciudad destino = CiudadFacade.buscarPorId(dr.GetInt32(3));
                    id.Add(new Recorrido(dr.GetInt32(0), ciudad, origen, destino));
                }
            }
            con.Close();
            return(id);
        }