Esempio n. 1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (Session["numeroViaje"] == null)
                {
                    Response.Redirect("~/ConsultaDeViajes.aspx");
                }

                var unViaje = (from viajes in ((List <Viaje>)Session["listaViajes"])
                               where viajes.NumeroViaje.Equals(Convert.ToInt32(Session["numeroViaje"]))
                               select viajes).First();

                Internacional viajeI = null;
                Nacional      viajeN = null;
                if (unViaje is Internacional)
                {
                    viajeI = (Internacional)unViaje;
                }
                else
                {
                    viajeN = (Nacional)unViaje;
                }

                // datos de viaje
                lblNumViajeVal.Text     = unViaje.NumeroViaje.ToString();
                lblFechaSalidaVal.Text  = unViaje.FHSalida.ToShortDateString();
                lblFechaLlegadaVal.Text = unViaje.FHLlegada.ToShortDateString();
                lblAsientosVal.Text     = unViaje.Asientos.ToString();

                if (viajeN != null)
                {
                    lblParadasVal.Text = viajeN.ParadasIntermedias.ToString();
                }

                if (viajeI != null)
                {
                    lblServicioVal.Text            = viajeI.ServicioABordo ? "SI" : "NO";
                    txtAreaDocumentacion.InnerText = viajeI.Documentacion;
                }

                // datos de compania
                lblNomCompaniaVal.Text = unViaje.Compania.Nombre;
                lblDireccionVal.Text   = unViaje.Compania.Direccion;
                lblTelefonoVal.Text    = unViaje.Compania.Telefono.ToString();

                // datos de terminal
                lblCodigoVal.Text        = unViaje.Terminal.CodigoTerminal;
                lblPaisVal.Text          = unViaje.Terminal.Pais;
                lblCiudadVal.Text        = unViaje.Terminal.Ciudad;
                GVFacilidades.DataSource = unViaje.Terminal.ListaFacilidades;
                GVFacilidades.DataBind();
            }
        }
        public void ModificarInternacional(Internacional unInternacional)
        {
            SqlConnection oConexion = new SqlConnection(Conexion.Con);
            SqlCommand    comando   = new SqlCommand("Sp_ModificarInternacionales", oConexion);

            comando.CommandType = CommandType.StoredProcedure;
            comando.Parameters.AddWithValue("@numeroViaje", unInternacional.NumeroViaje);
            comando.Parameters.AddWithValue("@FHSalida", unInternacional.FHSalida);
            comando.Parameters.AddWithValue("@FHLlegada", unInternacional.FHLlegada);
            comando.Parameters.AddWithValue("@asientos", unInternacional.Asientos);
            comando.Parameters.AddWithValue("@ciEmpleado", unInternacional.Empleado.Cedula);
            comando.Parameters.AddWithValue("@codigoTerminal", unInternacional.Terminal.CodigoTerminal);
            comando.Parameters.AddWithValue("@nombreCompania", unInternacional.Compania.Nombre);
            comando.Parameters.AddWithValue("@servicioABordo", unInternacional.ServicioABordo);
            comando.Parameters.AddWithValue("@documentacion", unInternacional.Documentacion);

            SqlParameter retorno = new SqlParameter("@Retorno", SqlDbType.Int);

            retorno.Direction = ParameterDirection.ReturnValue;
            comando.Parameters.Add(retorno);

            try
            {
                oConexion.Open();
                comando.ExecuteNonQuery();

                int r = (int)retorno.Value;

                if (r == -1)
                {
                    throw new Exception("No se pudo encontrar el Viaje en Internacionales.");
                }
                else if (r == -2)
                {
                    throw new Exception("No se pudo modificar el Viaje en Internacionales.");
                }
                else if (r == -3)
                {
                    throw new Exception("No se pudo modificar el Viaje.");
                }
                else if (r == -4)
                {
                    throw new Exception("No se pudo modificar el Viaje, falló la transacción.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                oConexion.Close();
            }
        }
        public bool AgregarExcurcionInt(string codigo, string descripcion, DateTime fechaComienzo,
                                        IList <Itinerario> hojaRuta, byte diasTraslado, byte stock, double puntos,
                                        IList <Pasajero> pasajeros)
        {
            bool          retorno = false;
            Internacional unaI    = new Internacional(codigo, descripcion, fechaComienzo, hojaRuta, diasTraslado, stock, puntos, pasajeros);

            if (this.RepoExcurciones.Add(unaI))
            {
                retorno = true;
                FachadaAgencia.Instancia.SerializarTodo();
                FachadaAgencia.Instancia.GuardarParametros(":");
            }
            return(retorno);
        }
        public Internacional BuscarInternacional(int pNumeroViaje)
        {
            SqlDataReader dr;

            Internacional unInternacional = null;

            Empleado unEmpelado  = null;
            Terminal unaTerminal = null;
            Compania unaCompania = null;

            SqlConnection oConexion = new SqlConnection(Conexion.Con);
            SqlCommand    comando   = new SqlCommand("Sp_BuscarInternacionales", oConexion);

            comando.CommandType = CommandType.StoredProcedure;
            comando.Parameters.AddWithValue("@numeroViaje", pNumeroViaje);

            try
            {
                dr = comando.ExecuteReader();

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        unEmpelado = PersistenciaEmpleado.getInstancia().BuscarEmpleado(int.Parse(dr["CiEmpleado"].ToString()));

                        unaTerminal = PersistenciaTerminal.getInstancia().BuscarTerminal(dr["CodigoTerminal"].ToString());

                        unaCompania = PersistenciaCompania.getInstancia().BuscarCompania(dr["NombreCompania"].ToString());

                        unInternacional = new Internacional(int.Parse(dr["NumeroViaje"].ToString()), DateTime.Parse(dr["FHSalida"].ToString()),
                                                            DateTime.Parse(dr["FHLlegada"].ToString()), int.Parse(dr["Asientos"].ToString()),
                                                            unEmpelado, unaTerminal, unaCompania, bool.Parse(dr["ServicioABordo"].ToString()),
                                                            dr["Documentacion"].ToString());
                    }
                }
                dr.Close();
            }
            catch (Exception ex)
            {
                throw new ApplicationException("Problemas con la base de datos:" + ex.Message);
            }
            finally
            {
                oConexion.Close();
            }
            return(unInternacional);
        }
        public List <Internacional> ListadoInternacionales()
        {
            Internacional        unInternacional      = null;
            List <Internacional> listaInternacionales = new List <Internacional>();

            SqlConnection oConexion = new SqlConnection(Conexion.Con);
            SqlCommand    comando   = new SqlCommand("Sp_ListarInternacionales", oConexion);

            comando.CommandType = CommandType.StoredProcedure;

            try
            {
                oConexion.Open();
                SqlDataReader dr = comando.ExecuteReader();

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        unInternacional = new Internacional((int)dr["NumeroViaje"], (DateTime)dr["FHSalida"], (DateTime)dr["FHLlegada"],
                                                            (int)dr["Asientos"], PersistenciaEmpleado.getInstancia().BuscarEmpleado((int)dr["CiEmpleado"]),
                                                            PersistenciaTerminal.getInstancia().BuscarTerminal((string)dr["CodigoTerminal"]),
                                                            PersistenciaCompania.getInstancia().BuscarCompania((string)dr["NombreCompania"]), (bool)dr["ServicioABordo"],
                                                            (string)dr["Documentacion"]);

                        listaInternacionales.Add(unInternacional);
                    }
                }
                dr.Close();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                oConexion.Close();
            }
            return(listaInternacionales);
        }
        public void EliminarInternacional(Internacional unInternacional)
        {
            SqlConnection oConexion = new SqlConnection(Conexion.Con);
            SqlCommand    comando   = new SqlCommand("Sp_EliminarInternacionales", oConexion);

            comando.CommandType = CommandType.StoredProcedure;
            comando.Parameters.AddWithValue("@numeroViaje", unInternacional.NumeroViaje);

            SqlParameter retorno = new SqlParameter("@Retorno", SqlDbType.Int);

            retorno.Direction = ParameterDirection.ReturnValue;
            comando.Parameters.Add(retorno);

            try
            {
                oConexion.Open();
                comando.ExecuteNonQuery();

                if ((int)retorno.Value == -1)
                {
                    throw new Exception("No se pudo encontrar el Viaje en Internacionales.");
                }
                else if ((int)retorno.Value == -2)
                {
                    throw new Exception("No se pudo eliminar el Viaje.");
                }
                else if ((int)retorno.Value == -3)
                {
                    throw new Exception("No se pudo eliminar el Viaje, falló la transacción.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                oConexion.Close();
            }
        }