//Operaciones
        public Internacionales Buscar_Viaje(int pCodViaje)
        {
            SqlConnection oConexion = new SqlConnection(Conexion.STR);
            SqlCommand    oComando  = new SqlCommand("Buscar_ViajeInternacional", oConexion);

            oComando.CommandType = CommandType.StoredProcedure;

            oComando.Parameters.AddWithValue("@numero", pCodViaje);

            Internacionales unInter = null;

            try
            {
                oConexion.Open();

                SqlDataReader _Reader = oComando.ExecuteReader();

                if (_Reader.HasRows)
                {
                    _Reader.Read();

                    int        _numero        = (int)_Reader["numero"];
                    Companias  _compania      = PersistenciaCompania.GetInstancia().BuscarTodos_Compania((string)_Reader["compania"]);
                    Terminales _terminal      = PersistenciaTerminales.GetInstancia().BuscarTodos_Terminal((string)_Reader["destino"]);
                    DateTime   _fechapartida  = (DateTime)_Reader["fecha_partida"];
                    DateTime   _fechaarribo   = (DateTime)_Reader["fecha_arribo"];
                    int        _asientos      = (int)_Reader["asientos"];
                    Empleados  _empleado      = PersistenciaEmpleado.GetInstancia().BuscarTodos_Empleado((string)_Reader["empleado"]);
                    bool       _servicio      = (bool)_Reader["servicio"];
                    string     _documentacion = (string)_Reader["documentacion"];

                    unInter = new Internacionales(_numero, _compania, _terminal, _fechapartida, _fechaarribo, _asientos, _empleado, _servicio, _documentacion);

                    _Reader.Close();
                }
            }

            catch (SqlException)
            {
                throw new Exception("La base de datos no se encuentra disponible. Contacte al administrador.");
            }


            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }

            finally
            {
                oConexion.Close();
            }

            return(unInter);
        }
        public List <Internacionales> Listar_Todos_Viajes_Int()
        {
            SqlConnection oConexion = new SqlConnection(Conexion.STR);
            SqlCommand    oComando  = new SqlCommand("Listar_Todos_Viajes_Internacionales", oConexion);

            oComando.CommandType = CommandType.StoredProcedure;
            List <Internacionales> _Lista = new List <Internacionales>();

            try
            {
                oConexion.Open();
                SqlDataReader _Reader = oComando.ExecuteReader();
                while (_Reader.Read())
                {
                    int        _numero        = (int)_Reader["numero"];
                    Companias  _compania      = PersistenciaCompania.GetInstancia().BuscarTodos_Compania((string)_Reader["compania"]);
                    Terminales _terminal      = PersistenciaTerminales.GetInstancia().BuscarTodos_Terminal((string)_Reader["destino"]);
                    DateTime   _fechapartida  = (DateTime)_Reader["fecha_partida"];
                    DateTime   _fechaarribo   = (DateTime)_Reader["fecha_arribo"];
                    int        _asientos      = (int)_Reader["asientos"];
                    Empleados  _empleado      = PersistenciaEmpleado.GetInstancia().BuscarTodos_Empleado((string)_Reader["empleado"]);
                    bool       _servicio      = (bool)_Reader["servicio"];
                    string     _documentacion = (string)_Reader["documentacion"];

                    Internacionales viaje = new Internacionales(_numero, _compania, _terminal, _fechapartida, _fechaarribo, _asientos, _empleado, _servicio, _documentacion);
                    _Lista.Add(viaje);
                }
                _Reader.Close();
            }

            catch (SqlException)
            {
                throw new Exception("La base de datos no se encuentra disponible. Contacte al administrador.");
            }

            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }

            finally
            {
                oConexion.Close();
            }

            return(_Lista);
        }
        public List <Viajes> ListarNacionalesTodos()
        {
            List <Viajes> lista = new List <Viajes>();

            SqlConnection DBCS    = Conexion.CrearCnn();
            Nacionales    N       = null;
            SqlCommand    comando = new SqlCommand("ListarNacionalesTodos", DBCS);

            comando.CommandType = CommandType.StoredProcedure;
            SqlDataReader r;

            try
            {
                DBCS.Open();
                r = comando.ExecuteReader();
                if (r.HasRows)
                {
                    while (r.Read())
                    {
                        N = new Nacionales(Convert.ToInt32(r.GetValue(0)),
                                           Convert.ToInt32(r.GetValue(1)),
                                           Convert.ToDateTime(r.GetValue(2)),
                                           Convert.ToDateTime(r.GetValue(3)),
                                           PersistenciaEmpleado.GetInstancia().BuscarEmpleadosTodos(Convert.ToInt32(r.GetValue(4))),
                                           PersistenciaTerminal.GetInstancia().BuscarTerminalTodos(r.GetValue(5).ToString()),
                                           PersistenciaCompania.GetInstancia().BuscarCompaniaTodas(r.GetValue(6).ToString()),
                                           Convert.ToInt32(r.GetValue(7))
                                           );
                        lista.Add(N);
                    }
                }
                r.Close();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                DBCS.Close();
            }
            return(lista);
        }
        public Nacionales BuscarViajeNacional(int numero)
        {
            SqlConnection DBCS    = Conexion.CrearCnn();
            Nacionales    n       = null;
            SqlCommand    comando = new SqlCommand("BuscarViajeNacional", DBCS);

            comando.CommandType = CommandType.StoredProcedure;

            comando.Parameters.Add(new SqlParameter("@Numero", numero));

            try
            {
                DBCS.Open();
                SqlDataReader r;

                r = comando.ExecuteReader();
                if (r.HasRows)
                {
                    r.Read();
                    n = new Nacionales(Convert.ToInt32(r.GetValue(0)),
                                       Convert.ToInt32(r.GetValue(1)),
                                       Convert.ToDateTime(r.GetValue(2)),
                                       Convert.ToDateTime(r.GetValue(3)),
                                       PersistenciaEmpleado.GetInstancia().BuscarEmpleadosTodos(Convert.ToInt32(r.GetValue(4))),
                                       PersistenciaTerminal.GetInstancia().BuscarTerminalTodos(r.GetValue(5).ToString()),
                                       PersistenciaCompania.GetInstancia().BuscarCompaniaTodas(r.GetValue(6).ToString()),
                                       Convert.ToInt32(r.GetValue(7))
                                       );
                }

                r.Close();

                return(n);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                DBCS.Close();
            }
        }
 public static IPersistenciaCompania getPersistenciaCompania()
 {
     return(PersistenciaCompania.GetInstancia());
 }