// GET: Reservaciones/DetailsCliente/5
        public async Task <ActionResult> DetailsCliente(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Reservacion reservacion = await db.Reservacions.FindAsync(id);

            if (reservacion == null)
            {
                return(HttpNotFound());
            }
            ViewBag.UsuarioID         = new SelectList(db.Usuarios, "UsuarioID", "UserName", reservacion.UsuarioID);
            ViewBag.LocacionDestinoID = new SelectList(db.Locacions, "LocacionID", "Nombre", reservacion.LocacionDestinoID);
            ViewBag.LocacionOrigenID  = new SelectList(db.Locacions, "LocacionID", "Nombre", reservacion.LocacionOrigenID);

            var comentarios = db.ComentarioReservacions.Where(c => c.ReservacionID == id).Include(c => c.Status).ToList <ComentarioReservacion>();

            ViewBag.Comentarios = comentarios;

            ViewBag.DisplayOrigen  = (reservacion.LocacionOrigenID != 0) ? "display:none" : "";
            ViewBag.DisplayDestino = (reservacion.LocacionDestinoID != 0) ? "display:none" : "";

            return(View(reservacion));
        }
예제 #2
0
        public async void  verificarExistencia(Reservacion r)
        {
            try
            {
                using (WebClient webClient = new WebClient())
                {
                    var parametros = new NameValueCollection();
                    parametros.Add("res_horaInicio", r.res_horaInicio.ToString());
                    parametros.Add("res_horaFin", r.res_horaFin.ToString());
                    parametros.Add("res_fecha", r.res_fecha.ToString("yyyy/MM/dd"));
                    parametros.Add("ProInstalaciones_ins_id", r.ProInstalaciones_ins_id.ToString());
                    parametros.Add("ProUsuario_usu_id", r.ProUsuario_usu_id.ToString());

                    var content = webClient.UploadValues(Global.URL_SERVICE_REST + "/moviles/reserva/selectDisponible", WebRequestMethods.Http.Post, parametros);
                    var usuario = JsonConvert.DeserializeObject <List <Usuario> >(Encoding.UTF8.GetString(content));
                    if (usuario.Count() > 0)
                    {
                        await DisplayAlert("No disponible", "Las instalaciones para " + Instalaciones.ins_descripcion + " no estan disponibles", "Ok");
                    }
                    else
                    {
                        var contentReserva = webClient.UploadValues(Global.URL_SERVICE_REST + "/moviles/reserva/insert", WebRequestMethods.Http.Post, parametros);
                        r.res_id = Convert.ToInt32(Encoding.UTF8.GetString(contentReserva));
                        await DisplayAlert("Reservada", "Estimad@ " + Usuario.cli_nombre + " se ha reservado un espacio deportivo de " + Instalaciones.ins_descripcion + " en " + Centro.cen_descripcion + " direccion " +
                                           Centro.cen_direccion + " el dia:" + r.res_fecha.ToString("yyyy/MM/dd") + " de " + r.res_horaInicio + ":00 a " + r.res_horaFin + ":00", "ok");
                    }
                }
            }
            catch (Exception ex)
            {
                await DisplayAlert("Error", $"An unexpected error has occurred: {ex.Message}", "Ok");
            }
        }
예제 #3
0
        public void Guardar(Reservacion r)
        {
            try
            {
                string query = "INSERT INTO reservaciones(vehiculo,fecha_inicio,fecha_final,cliente,costo)" +
                               " VALUES (@vehiculo, @fechaI,@fechaD, @cliente,@costo)";


                SqlCommand comanda = new SqlCommand(query)
                {
                    Connection = conexion.AbrirConexion()
                };

                comanda.Parameters.AddWithValue("@vehiculo", r.Vehiculos);
                comanda.Parameters.AddWithValue("@fechaI", r.FechaInicio);
                comanda.Parameters.AddWithValue("@fechaD", r.FechaFinal);
                comanda.Parameters.AddWithValue("@cliente", r.Cliente);
                comanda.Parameters.AddWithValue("@costo", r.Costo);



                comanda.ExecuteNonQuery();
                comanda.Parameters.Clear();
                comanda.Connection = conexion.CerrarConexion();
                leer.Close();
            }
            catch (Exception e)
            {
                Console.Write(e.Message);
                e.Source = "Problemas al crear la reservacion ";
            }
        }
예제 #4
0
        public List <Reservacion> GetAllReservacion()
        {
            DataSet            ds      = null;
            List <Reservacion> lista   = new List <Reservacion>();
            SqlCommand         command = new SqlCommand();

            IDALHabitacion _DALHabitacion = new DALHabitacion();
            IDALHuesped    _DALHuesped    = new DALHuesped();

            string sql = @"usp_SELECT_Reservacion_All";

            try
            {
                command.CommandText = sql;
                command.CommandType = CommandType.StoredProcedure;

                using (IDataBase db = FactoryDataBase.CreateDataBase(FactoryConexion.CreateConnection(_Usuario.Login, _Usuario.Password)))
                {
                    ds = db.ExecuteReader(command, "query");
                }

                // Si devolvió filas
                if (ds.Tables[0].Rows.Count > 0)
                {
                    // Iterar en todas las filas y Mapearlas
                    foreach (DataRow dr in ds.Tables[0].Rows)
                    {
                        Reservacion oReservacion = new Reservacion()
                        {
                            ID          = double.Parse(dr["ID"].ToString()),
                            _Huesped    = _DALHuesped.GetHuespedById(double.Parse(dr["IDHuesped"].ToString())),
                            _Habitacion = _DALHabitacion.GetHabitacionById(double.Parse(dr["NUMHabitacion"].ToString())),
                            CheckIN     = (DateTime)dr["CheckIN"],
                            CheckOUT    = (DateTime)dr["CheckOUT"],
                            CantDias    = (int)dr["CantDias"],
                            Subtotal    = double.Parse(dr["Subtotal"].ToString())
                        };

                        lista.Add(oReservacion);
                    }
                }

                return(lista);
            }
            catch (SqlException sqlError)
            {
                StringBuilder msg = new StringBuilder();
                msg.AppendFormat(Utilitarios.CreateSQLExceptionsErrorDetails(sqlError));
                msg.AppendFormat("SQL             {0}\n", command.CommandText);
                _MyLogControlEventos.ErrorFormat("Error {0}", msg.ToString());
                throw;
            }
            catch (Exception er)
            {
                StringBuilder msg = new StringBuilder();
                msg.AppendFormat(Utilitarios.CreateGenericErrorExceptionDetail(er));
                _MyLogControlEventos.ErrorFormat("Error {0}", msg.ToString());
                throw;
            }
        }
예제 #5
0
        public async Task <IActionResult> PutReservacion(int?id, Reservacion reservacion)
        {
            if (id != reservacion.Idreservacion)
            {
                return(BadRequest());
            }

            _context.Entry(reservacion).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ReservacionExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
예제 #6
0
        public IHttpActionResult PutReservacion(int id, Reservacion reservacion)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != reservacion.Id)
            {
                return(BadRequest());
            }

            db.Entry(reservacion).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ReservacionExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
        public static Reservacion getReservacionFromDB(int ID)
        {
            SqlDataReader reader     = null;
            SqlConnection connection = new SqlConnection();

            connection.ConnectionString = "Data Source=.;Initial Catalog=TECAirlines;Integrated Security=SSPI";

            SqlCommand sqlCmd = new SqlCommand();

            sqlCmd.CommandType = CommandType.Text;

            var query = "SELECT * FROM Reservación WHERE ID=@ID";

            query = query.Replace("@ID", ID.ToString());

            sqlCmd.CommandText = query;

            sqlCmd.Connection = connection;
            connection.Open();
            reader = sqlCmd.ExecuteReader();
            Reservacion reservacion = null;

            while (reader.Read())
            {
                reservacion    = new Reservacion();
                reservacion.ID = Convert.ToInt32(reader.GetValue(0));
                reservacion.CantidadTiquetes = Convert.ToInt32(reader.GetValue(1));
                reservacion.IDPropietario    = reader.GetValue(2).ToString();
            }
            connection.Close();
            return(reservacion);
        }
        public void Create(Reservacion reservacion)
        {
            try
            {
                if (Validate(reservacion))
                {
                    dbContext.Reservacion.Add(reservacion);
                    dbContext.SaveChanges();


                    //foreach(Mascota mascota in reservacion.ReservacionDetalles)
                    //{
                    //    ReservacionDetalle reservacionDetalle = new ReservacionDetalle();
                    //    reservacionDetalle.ReservacionId = reservacion.Id;
                    //    reservacionDetalle.MascotaId = mascota.ID;
                    //    ReservacionDetalleCore rCore = new ReservacionDetalleCore(dbContext);
                    //    rCore.Create(reservacionDetalle);
                    //}
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #9
0
 private void dgvDatos_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     try
     {
         if (dgvDatos.RowCount > 0 && dgvDatos.SelectedRows.Count > 0)
         {
             if (dgvDatos.CurrentCell.Selected)
             {
                 _Reservacion      = dgvDatos.SelectedRows[0].DataBoundItem as Reservacion;
                 this.DialogResult = DialogResult.OK;
             }
         }
     }
     catch (Exception er)
     {
         StringBuilder msg = new StringBuilder();
         msg.AppendFormat("Message        {0}\n", er.Message);
         msg.AppendFormat("Source         {0}\n", er.Source);
         msg.AppendFormat("InnerException {0}\n", er.InnerException);
         msg.AppendFormat("StackTrace     {0}\n", er.StackTrace);
         msg.AppendFormat("TargetSite     {0}\n", er.TargetSite);
         _MyLogControlEventos.ErrorFormat("Error {0}", msg.ToString());
         MessageBox.Show(msg.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
예제 #10
0
    public void CrearReservacion()
    {
        Console.WriteLine("Nueva Reservacion");
        Console.WriteLine("=================");
        Console.WriteLine("");

        Console.WriteLine("Por favor ingrese el codigo del cliente: ");
        string codcliente = Console.ReadLine();

        Cliente cliente = ListadeClientes.Find(c => c.id.ToString() == codcliente);

        if (cliente == null)
        {
            Console.WriteLine("Cliente no encontrado");
            Console.ReadLine();
            return;
        }
        else
        {
            Console.WriteLine("Cliente: " + cliente.Nombre);
            Console.WriteLine("");
        }

        int newcodigo = ListadeReservacion.Count + 1;

        Reservacion nuevareservacion = new Reservacion(newcodigo, DateTime.Now, "HN", cliente);

        ListadeReservacion.Add(nuevareservacion);

        while (true)
        {
            Console.WriteLine("Ingrese el codigo de la habitacion");
            string     codigohabitacion = Console.ReadLine();
            Habitacion habitacion1      = ListaHabitacion.Find(h => h.Codigo.ToString() == codigohabitacion);

            if (habitacion1 == null)
            {
                Console.WriteLine("LA HABITACION NO SE HA ENCONTRADO");
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("Habitacion Agregada: " + habitacion1.TipoHabitacion + " con precio de: " + habitacion1.Precio);
                nuevareservacion.AgregarReservacion(habitacion1);
            }

            Console.WriteLine("Desea continuar? s/n");
            string continuar = Console.ReadLine();
            if (continuar.ToLower() == "n")
            {
                break;
            }
        }

        Console.WriteLine("");
        Console.WriteLine("El Subtotal de la reservacion es: " + nuevareservacion.Subtotal);
        Console.WriteLine("El Subtotal con impuesto es : " + nuevareservacion.Impuesto);
        Console.WriteLine("Total de la reservacion es de: " + nuevareservacion.Total);
        Console.ReadLine();
    }
        public static bool Modificar(Reservacion reservacion)
        {
            bool     modificado = false;
            Contexto contexto   = new Contexto();

            try
            {
                contexto.Database.ExecuteSqlRaw($"Delete from ReservacionDetalle where ReservacionID = {reservacion.ReservacionID}");
                foreach (var anterior in reservacion.reservacionDetalle)
                {
                    contexto.Entry(anterior).State = EntityState.Added;
                }
                contexto.Entry(reservacion).State = EntityState.Modified;
                modificado = contexto.SaveChanges() > 0;
            }
            catch (System.Exception)
            {
                throw;
            }
            finally
            {
                contexto.Dispose();
            }

            return(modificado);
        }
        public async Task <ActionResult> Create([Bind(Include = "ReservacionID,UsuarioID,FechaHora,TotalPasajeros,Comentario,StatusID,LocacionOrigenID,LocacionDestinoID,DireccionOrigen,DireccionDestino,DuracionVuelo,Equipaje")] Reservacion reservacion)
        {
            if (ModelState.IsValid)
            {
                db.Reservacions.Add(reservacion);
                db.SaveChanges();

                db.ComentarioReservacions.Add(new ComentarioReservacion
                {
                    ReservacionID = reservacion.ReservacionID,
                    UsuarioID     = reservacion.UsuarioID,
                    Comentario    = reservacion.Comentario,
                    StatusID      = reservacion.StatusID
                });

                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            ViewBag.UsuarioID         = new SelectList(db.Usuarios, "UsuarioID", "UserName", reservacion.UsuarioID);
            ViewBag.LocacionDestinoID = new SelectList(db.Locacions, "LocacionID", "Nombre");
            ViewBag.LocacionOrigenID  = new SelectList(db.Locacions, "LocacionID", "Nombre");
            return(View(reservacion));
        }
        public async Task <ActionResult> CalendarioCliente([Bind(Include = "ReservacionID,UsuarioID,FechaHora,TotalPasajeros,Comentario,StatusID,LocacionOrigenID,LocacionDestinoID,DireccionOrigen,DireccionDestino,DuracionVuelo,Equipaje")] Reservacion reservacion)
        {
            if (UserId == 0)
            {
                return(Json(new { status = false, message = "La sesión finalizó o no ha sido iniciada." }));
            }

            if (ModelState.IsValid)
            {
                reservacion.UsuarioID = UserId;
                db.Reservacions.Add(reservacion);
                db.SaveChanges();

                db.ComentarioReservacions.Add(new ComentarioReservacion
                {
                    ReservacionID = reservacion.ReservacionID,
                    UsuarioID     = reservacion.UsuarioID,
                    Comentario    = reservacion.Comentario,
                    StatusID      = reservacion.StatusID
                });

                await db.SaveChangesAsync();
            }

            return(Json(new { status = true, message = "La reservación se realizó correctamente.", reservacionId = reservacion.ReservacionID }));
        }
        public async Task <ActionResult> DetailsCliente([Bind(Include = "ReservacionID,UsuarioID,Comentario,StatusID")] Reservacion reservacion)
        {
            try
            {
                db.ComentarioReservacions.Add(new ComentarioReservacion
                {
                    ReservacionID = reservacion.ReservacionID,
                    UsuarioID     = reservacion.UsuarioID,
                    Comentario    = reservacion.Comentario,
                    StatusID      = reservacion.StatusID
                });

                await db.SaveChangesAsync();

                return(RedirectToAction("IndexCliente"));
            }
            catch
            {
                Reservacion reservacion2 = await db.Reservacions.FindAsync(reservacion.ReservacionID);

                ViewBag.UsuarioID         = new SelectList(db.Usuarios, "UsuarioID", "UserName", reservacion2.UsuarioID);
                ViewBag.LocacionDestinoID = new SelectList(db.Locacions, "LocacionID", "Nombre", reservacion2.LocacionDestinoID);
                ViewBag.LocacionOrigenID  = new SelectList(db.Locacions, "LocacionID", "Nombre", reservacion2.LocacionOrigenID);

                var comentarios = db.ComentarioReservacions.Where(c => c.ReservacionID == reservacion2.ReservacionID).Include(c => c.Status).ToList <ComentarioReservacion>();
                ViewBag.Comentarios = comentarios;

                ViewBag.DisplayOrigen  = (reservacion2.LocacionOrigenID != 0) ? "display:none" : "";
                ViewBag.DisplayDestino = (reservacion2.LocacionDestinoID != 0) ? "display:none" : "";

                return(View(reservacion2));
            }
        }
예제 #15
0
        private OTA_HotelResNotifRS obtenerMensajeSatisfaccion(Reservacion rva, List <HotelReservationIDrs> reservas)
        {
            StringWriter        xml      = new StringWriter();
            OTA_HotelResNotifRS response = new OTA_HotelResNotifRS();

            response.EchoToken = rva.Rva_echotoken;
            DateTime Hoy        = DateTime.Today;
            string   fecha_hora = Hoy.ToString("yyyy-MM-dd'T'hh:mm:ss%K", CultureInfo.CreateSpecificCulture("en-US"));

            response.TimeStamp = fecha_hora;
            response.Version   = "3.0";
            response.Success   = "";
            UniqueIDrs uirs = new UniqueIDrs();

            uirs.Type = rva.Rva_ResID_Type;
            uirs.ID   = rva.Rva_uniqueID;
            ResGlobalInfors rgi = new ResGlobalInfors();

            rgi.HotelReservations = reservas;
            HotelReservationrs hrs = new HotelReservationrs();

            hrs.ResGlobalInfo = rgi;
            hrs.UniqueIDrs    = uirs;
            HotelReservationsrs hrss = new HotelReservationsrs();

            hrss.HotelReservationrs      = hrs;
            response.HotelReservationsrs = hrss;
            //var serializer = new XmlSerializer(typeof(OTA_HotelResNotifRS));
            //serializer.Serialize(xml, response);
            return(response);
        }
예제 #16
0
        protected void subir_Click(object sender, EventArgs e)
        {
            //obteniendo imagen seleccionada
            try
            {
                int    sizeImg        = uploadImagen.PostedFile.ContentLength;
                byte[] imagenOriginal = new byte[sizeImg];
                uploadImagen.PostedFile.InputStream.Read(imagenOriginal, 0, sizeImg);
                Bitmap imagenOriginalBinaria = new Bitmap(uploadImagen.PostedFile.InputStream);

                //mostrando la imagen preview
                string imagenDataUrl64 = "data:image/jpg;base64," + Convert.ToBase64String(imagenOriginal);
                Image.ImageUrl = imagenDataUrl64;

                //insertando la imagen a la base de datos
                bool resultado = Reservacion.insertarimagen(Convert.ToInt32(Session["idReservaEditar"]), imagenOriginal, Reservacion.insertarCarta);
                if (resultado)
                {
                    consola.Text = "Carta cargada correctamente";
                    generarQR();
                }
                else
                {
                    consola.Text = "Error: La imagen no fue cargada, intente nuevamente";
                }
            }
            catch { }
        }
예제 #17
0
        public ActionResult DatosUsuario(string codigoTipoHabitacion, DateTime fechaLlegada, DateTime fechaSalida)
        {
            int codigoHabitacion = reservacionCapaNegocios.verificarReservacion(new Reservacion(codigoTipoHabitacion, fechaLlegada, fechaSalida));

            if (codigoHabitacion == -1)
            {
                ViewBag.mensaje = "Lo sentimos, el rango de fechas que seleccionaste se encuentran ocupadas. En este calendario podrás ver que fechas se encuentran disponibles:";
                ViewData["codigoTipoHabitacion"] = codigoHabitacion;
                return(View("Estado", reservacionCapaNegocios.sugerirReservacion()));
            }
            else
            {
                var resultado = (reservacionCapaNegocios.verificarReservacion(new Reservacion(codigoTipoHabitacion, fechaLlegada, fechaSalida)));

                //   int var= ;
                var         precio      = reservacionCapaNegocios.Precio(Int32.Parse(codigoTipoHabitacion));
                Reservacion reservacion = new Reservacion();
                ViewData["codigoTipoHabitacion"] = codigoTipoHabitacion;
                ViewData["codigoHabitacion"]     = codigoHabitacion;
                ViewData["fechaInicio"]          = fechaLlegada;
                ViewData["fechaFin"]             = fechaSalida;
                fechaSalida.Subtract(fechaLlegada);
                ViewData["precio"] = precio;

                ViewData["NumeroHabitacion"] = resultado;
                ViewBag.mensaje = "Habitación disponible para ser reservada";
                return(View());
            }
        }
        public ActionResult Create(FormCollection collection)
        {
            Reservacion reserva = new Reservacion();

            reserva.HoraInicio = collection[1];
            reserva.HoraFin    = collection[2];
            //reserva.Paga = Convert.ToBoolean(collection[3]);
            //reserva.Confimada = Convert.ToBoolean(collection[4]);
            reserva.Valor     = Convert.ToDouble(collection[3]);
            reserva.IdSalon   = Convert.ToInt32(collection[4]);
            reserva.IdCliente = Convert.ToInt32(collection[5]);



            try
            {
                // TODO: Add insert logic here

                _reserva.GuardarActualizarReservacion(reserva);
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                return(View());
            }
        }
        public static bool addReservacionToDB(Reservacion reservacion)
        {
            var connectionString = "Data Source=.;Initial Catalog=TECAirlines;Integrated Security=SSPI";

            var query = "INSERT INTO Reservación (ID, CantidadTiquetes, IDPropietario) " +
                        "VALUES (@ID, '@CantidadTiquetes', '@IDPropietario')";

            query = query.Replace("@ID", reservacion.ID.ToString())
                    .Replace("@CantidadTiquetes", reservacion.CantidadTiquetes.ToString())
                    .Replace("@IDPropietario", reservacion.IDPropietario);


            SqlConnection connection = new SqlConnection(connectionString);

            try
            {
                connection.Open();
                SqlCommand command = new SqlCommand(query, connection);
                command.ExecuteNonQuery();
                command.Dispose();
                connection.Close();
                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
예제 #20
0
        public JsonResult checarConflictos(Reservacion reservacion)
        {
            //Se ajustan las fechas iniciales y finales del total de la reservacion a la sesion inicial y final
            reservacion.ajustarFechaInicialFinal();
            //Se encuentran las reservaciones y sesiones en conflicto
            var sesionesConConflictos   = reservacion.reservacionesQueColisionan(db).ToList();
            var reservacionesConflictos = sesionesConConflictos.Select(ses => ses.reservacion).Distinct().ToList();
            //Se prepara la informacion para ser respondida como vista en JSON
            var resultado = (from res in reservacionesConflictos
                             select new Reservacion.VMReservacion(res)).ToList();

            var vmReservacionComprobada = new Reservacion.VMReservacion(reservacion);

            //Dentro del resultado, se marca cada una de las sesiones que estan causando conflicto

            //Se marcan los conflictos en cada una de las sesiones
            vmReservacionComprobada.sesiones.ForEach(s2 => //Sesiones consultadas
            {
                resultado.ForEach(
                    res => res.sesiones.ForEach(s1 => //Sesiones con conflicto encontradas
                {
                    if (!s1.conflicto)
                    {
                        s1.conflicto = s2.periodoDeTiempo.hasPartInside(s1.periodoDeTiempo) && s1.salonID == s2.salonID;
                    }
                }));
            });

            return(Json(resultado, JsonRequestBehavior.AllowGet));
        }
        public static List <Reservacion> getAllReservacionesFromDB()
        {
            SqlDataReader reader     = null;
            SqlConnection connection = new SqlConnection();

            connection.ConnectionString = "Data Source=.;Initial Catalog=TECAirlines;Integrated Security=SSPI";

            SqlCommand sqlCmd = new SqlCommand();

            sqlCmd.CommandType = CommandType.Text;

            var query = "SELECT * FROM Reservación ";



            sqlCmd.CommandText = query;

            sqlCmd.Connection = connection;
            connection.Open();
            reader = sqlCmd.ExecuteReader();
            List <Reservacion> listaReservaciones = new List <Reservacion>();

            while (reader.Read())
            {
                Reservacion reservacion = null;
                reservacion    = new Reservacion();
                reservacion.ID = Convert.ToInt32(reader.GetValue(0));
                reservacion.CantidadTiquetes = Convert.ToInt32(reader.GetValue(1));
                reservacion.IDPropietario    = reader.GetValue(2).ToString();

                listaReservaciones.Add(reservacion);
            }
            connection.Close();
            return(listaReservaciones);
        }
예제 #22
0
        public IActionResult EditarReserva(Reservacion datos)
        {
            Reservacion reserva = bd.Reservacions.FirstOrDefault(r => r.IdReserva == datos.IdReserva);

            //obtiene los datos del usuario
            var     correo = HttpContext.Session.GetString("Correo");
            Usuario user   = bd.Usuarios.FirstOrDefault(c => c.Correo == correo);
            //se obtienen los datos del tipo de habitación
            var tipo = bd.Habitacions.FirstOrDefault(h => h.IdHabitacion == datos.TipoHabitacion.IdHabitacion);

            //se actualiza la tabla

            reserva.Correo           = user;
            reserva.TipoHabitacion   = tipo;
            reserva.FechaIngreso     = datos.FechaIngreso;
            reserva.FechaSalida      = datos.FechaSalida;
            reserva.CantHabitaciones = datos.CantHabitaciones;
            reserva.CantDias         = datos.CantDias;
            reserva.CantAdultos      = datos.CantAdultos;
            reserva.CantMayores      = datos.CantMayores;
            reserva.CantNinos        = datos.CantNinos;
            reserva.CostoTotal       = datos.CostoTotal;


            //se guardan los datos en la base de datos
            bd.SaveChanges();

            //enviar email de confirmación
            EnviarCorreo ec = new EnviarCorreo();

            ec.EnviarEmail(user, reserva, "Confirmación de modificación de reserva", tipo.Tipo);

            return(RedirectToAction("Perfil", "Huesped"));
        }
예제 #23
0
        protected void BtnEditar_Click(object sender, EventArgs e)
        {
            Reservacion A = new Reservacion();

            A = contexto.Reservacion.Find(Convert.ToInt32(IdReserva.Value));
            HiddenField HabiatcionS = CIDHabitacion;
            int         Numero      = 0;

            Numero = Convert.ToInt32(HabiatcionS.Value);
            int dias           = calculardias(calendario.SelectedDate, calendario2.SelectedDate.Date);
            int Precio         = contexto.Habitacion.Where(Habitacion => Habitacion.Numero == Numero).First().Precio;
            int CostoHospedaje = 0;

            CostoHospedaje   = Precio * dias;
            A.FechaEntrada   = Convert.ToDateTime(calendario.SelectedDate);
            A.FechaSalida    = Convert.ToDateTime(calendario2.SelectedDate.Date);
            A.EstadodePago   = Convert.ToInt32(CEstadoPago.SelectedValue);
            A.Rut_Cliente    = CCliente.SelectedValue;
            A.Descripcion    = Cdescripcion.Text;
            A.Numero         = Numero;
            A.CantidaddeDias = dias;
            A.TotalaPagar    = CostoHospedaje;
            contexto.SaveChanges();
            CargarTablaReserva();
            VistasReserva.SetActiveView(ReservasView);
        }
예제 #24
0
        public async Task <IHttpActionResult> PutReservacion(string id, Reservacion reservacion)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != reservacion.Consecutivo)
            {
                return(BadRequest());
            }

            db.Entry(reservacion).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ReservacionExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
예제 #25
0
        private void cargarDatos()
        {
            Reservacion reserva = Reservacion.getReserva(Convert.ToInt32(Session["idReservaVer"]));

            Session["reservaDatos"] = reserva;
            if (reserva.idReservacion != 0)
            {
                if (reserva.carta != null)
                {
                    string imagenDataUrl64 = "data:image/jpg;base64," + Convert.ToBase64String(reserva.carta);
                    imagenCarta.ImageUrl = imagenDataUrl64;
                }
                if (reserva.codigoQR != null)
                {
                    string imagenDataUrl64 = "data:image/jpg;base64," + Convert.ToBase64String(reserva.codigoQR);
                    ImageQR.ImageUrl = imagenDataUrl64;
                }

                DateTime fecha      = Convert.ToDateTime(reserva.fecha);
                DateTime horaInicio = Convert.ToDateTime(reserva.horaInicio);
                DateTime horaFin    = Convert.ToDateTime(reserva.horaFin);
                TimeSpan duracion   = horaFin.Subtract(horaInicio);

                this.fecha.Text     = fecha.ToString("dd/MM/yyyy");
                hora.Text           = horaInicio.ToString("HH:mm");
                this.duracion.Text  = duracion.ToString();
                periodoReserva.Text = getPeriodo(reserva.idPeriodoReserva);
                vigencia1.Text      = getVigencia(reserva.idVigenciaReserva);
                idInstructor.Text   = Convert.ToString(reserva.idInstructor);
                instructor.Text     = reserva.instructorTxt;
                operador.Text       = reserva.administradorTxt;
                salon1.Text         = Session["reservaSalon"].ToString();
                edificio1.Text      = Session["reservaEdificio"].ToString();
            }
        }
예제 #26
0
        public async Task <IHttpActionResult> PostReservacion(Reservacion reservacion)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Reservacions.Add(reservacion);

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (ReservacionExists(reservacion.Consecutivo))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtRoute("DefaultApi", new { id = reservacion.Consecutivo }, reservacion));
        }
예제 #27
0
    public Reservacion insertarReservacion(Reservacion nuevaReservacion, Cliente cliente)
    {
        Reservacion reservacion;

        reservacion = dominio.insertarReservacion(nuevaReservacion, cliente);
        return(reservacion);
    }
예제 #28
0
        private bool GuardaReservaOMNI(Reservacion res)
        {
            DateTime Hoy = DateTime.Today;

            fecha_actual = Hoy.ToString("dd/MM/yy", CultureInfo.CreateSpecificCulture("en-US"));
            hora_actual  = DateTime.Now.ToString("hh:mm");
            int    filas     = 0;
            string fecha_rev = res.Rva_create_datetime.ToString("dd/MM/yy", CultureInfo.CreateSpecificCulture("en-US"));
            string hora_rev  = res.Rva_create_datetime.ToString("hh:mm");
            bool   ok        = false;

            //string theXml = System.Net.WebUtility.HtmlEncode(sw.ToString().Trim());

            string sql = string.Format("insert into OBOMNIBEES (OO_UNIQUEID, OO_ACTION, OO_AGENCIA, OO_MAYORISTA, OO_LLEGADA, OO_SALIDA, OO_TIPO_HAB, OO_PLAN, OO_GRUPO, OO_TARIFA, OO_MONEDA, "
                                       + "OO_ADULTO, OO_MENOR, OO_HOTEL_RENTA, OO_NOTA, OO_RVAHOTEL, OO_FECHA, OO_HORA, OO_NOTAS, OO_PAIS, OO_FECREV, OO_HORREV, oo_importe, oo_meal_plan,oo_garantia, oo_tipo_precio"
                                       + ") VALUES ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}','{21}',{22},'{23}','{24}','{25}')",
                                       res.Rva_uniqueID, res.Rva_action, res.Rva_agencia_obees, res.Rva_may, res.Rva_llegada, res.Rva_salida,
                                       res.Rva_hab_renta, res.Rva_plan, res.Rva_grupo, res.Rva_tarifa, res.Rva_moneda, res.Rva_adulto, res.Rva_menor, res.Rva_hotel_renta,
                                       res.Rva_notas, null, fecha_actual, hora_actual, res.Rva_notas, res.Rva_pais, fecha_rev, hora_rev, Convert.ToDouble(res.Rva_importe).ToString(CultureInfo.InvariantCulture),
                                       res.Rva_plancode, res.Rva_tipo_garantia, res.Rva_serv_price_type);

            UConnection DB = new UConnection(Properties.Settings.Default.ipBD, Properties.Settings.Default.serverBD, Properties.Settings.Default.usuarioBD, Properties.Settings.Default.passBD);

            ok = DB.EjecutaSQL(sql, ref filas);
            DB.Dispose();
            return(ok);
        }
        public async Task <IActionResult> Edit(int id, [Bind("ReservacionID,InitialTime,EndTime")] Reservacion reservacion)
        {
            if (id != reservacion.ReservacionID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(reservacion);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ReservacionExists(reservacion.ReservacionID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(reservacion));
        }
예제 #30
0
        public IHttpActionResult HacerReservacion(string fechaLlegada, string fechaSalida, int habitacion, string cedula,
                                                  string nombre, string apellidos, int tarjeta, string email)
        {
            System.DateTime fechaInicio = DateTime.Parse(fechaLlegada);
            System.DateTime fechaFinal  = DateTime.Parse(fechaSalida);

            Reservacion reser   = new Reservacion();
            Cliente     cliente = new Cliente();

            reser.fechaLLegada_Reservacion = fechaInicio;
            reser.fechaSalida_Reservacion  = fechaFinal;
            reser.idHabitacion_Reservacion = habitacion;

            cliente.cedula_Cliente    = cedula;
            cliente.apellidos_Cliente = apellidos;
            cliente.email_Cliente     = email;
            cliente.nombre_Cliente    = nombre;
            cliente.tarjeta_Cliente   = tarjeta;

            IReservacionLN repositorio = FabricaIoC.Contenedor.Resolver <ReservacionLN>();

            //RepositorioReservacion repositorio = new RepositorioReservacion();

            Reservacion reservacion = repositorio.insertarReservacion(reser, cliente);

            return(Ok(reservacion));
        }