Esempio n. 1
0
        public List <DetalleReserva> listarDetalleXReserva(int idReserva)
        {
            ReservaDAO reservaDao = new ReservaDAO();
            TarifaDAO  tarifaDao  = new TarifaDAO();

            List <DetalleReserva> listadoDetalle = null;
            DetalleReserva        detalle        = null;

            string query = "Select * from  Reserva_Tarifa where IdRserva=@pr1";

            SqlParameter[] dbParams = new SqlParameter[]
            {
                DBHelper.MakeParam("@pr1", idReserva)
            };

            using (SqlDataReader lector = DBHelper.ExecuteDataReader(query, dbParams))
            {
                if (lector != null && lector.HasRows)
                {
                    listadoDetalle = new List <DetalleReserva>();
                    while (lector.Read())
                    {
                        detalle            = new DetalleReserva();
                        detalle.Reserva    = reservaDao.ObtenerReservaxId(int.Parse(lector["idRserva"].ToString()));
                        detalle.Tarifa     = tarifaDao.ObtenerTarifaxId(int.Parse(lector["idTarifa"].ToString()));
                        detalle.HoraInicio = lector["HoraInicio"].ToString();
                        detalle.HoraFin    = lector["HoraFin"].ToString();
                        detalle.Precio     = double.Parse(lector["Tarifa"].ToString());
                        listadoDetalle.Add(detalle);
                    }
                }
            }

            return(listadoDetalle);
        }
        public void Agregar()
        {
            Tarifa tarifa = new Tarifa {
                Id = 3
            };
            DetalleReserva dt = new DetalleReserva
            {
                Tarifa     = tarifa,
                HoraInicio = "10:00",
                HoraFin    = "11:00",
                Precio     = 80
            };

            List <DetalleReserva> detalles = new List <DetalleReserva>();

            detalles.Add(dt);

            Campo campo = new Campo {
                Id = 1
            };
            Usuario usuario = new Usuario {
                Id = 8
            };
            DateTime dia     = DateTime.Today;
            Reserva  reserva = new Reserva();

            reserva.FechaReserva = dia;
            reserva.campo        = campo;
            reserva.usuario      = usuario;
            reserva.Estado       = "Pendiente";
            reserva.Monto        = 80;
            Assert.IsTrue(proxy.AgregarReserva(reserva, detalles));
        }
Esempio n. 3
0
        public ActionResult Disponibilidad(List <Tarifa> lista, DateTime dia)
        {
            DetalleReserva        dtReserva;
            List <DetalleReserva> listaDetalles = new List <DetalleReserva>();
            double monto = 0;

            foreach (var tarifa in lista)
            {
                if (tarifa.Checked)
                {
                    monto                = tarifa.Precio + monto;
                    dtReserva            = new DetalleReserva();
                    dtReserva.Tarifa     = tarifa;
                    dtReserva.HoraInicio = tarifa.HoraInicio;
                    dtReserva.HoraFin    = tarifa.HoraFin;
                    dtReserva.Precio     = tarifa.Precio;
                    listaDetalles.Add(dtReserva);
                }
            }
            Session["diaReservaCliente"]    = dia;
            Session["montoCliente"]         = monto;
            Session["listaDetallesCliente"] = listaDetalles;
            if (Session["usuarioCliente"] != null)
            {
                return(RedirectToAction("DetalleReserva", "ReservaClient"));
            }
            else
            {
                return(RedirectToAction("Login", "LoginClient"));
            }
        }
        public ActionResult NuevaReserva(int?id)
        {
            //Se deberia hacer tiro a la api para obtener datos del modelo de un vehiculo
            DetalleReserva dr = new DetalleReserva();

            dr.IDVehiculoCiudad = (int)id;
            ViewBag.IdUser      = System.Web.HttpContext.Current.Session["sessionIdUser"];
            ViewBag.Title       = "Nueva Reserva";
            return(View(dr));
        }
Esempio n. 5
0
        public List <DetalleReserva> ReporteReservasDetallado(int idTeatro, DateTime fechaInicio, DateTime fechaFin)
        {
            List <DetalleReserva> listaDetalle = new List <DetalleReserva>();
            DetalleReserva        detalle      = null;
            //string sql = "SELECT * FROM (((TH_RESERVA R INNER JOIN TH_OBRA O ON O.IDOBRA = R.IDOBRA) INNER JOIN TH_FUNCION F ON F.IDFUNCION = R.IDFUNCION) INNER JOIN TH_CLIENTE C ON C.IDCLIENTE = R.IDCLIENTE) INNER JOIN TH_TEATRO T ON T.IDTEATRO = O.IDTEATRO WHERE T.IDTEATRO = @IdTeatro AND IdEstadoReserva = 1 AND R.FechaReserva between @FechaReserva and @fechaFin ORDER BY C.Nombre ASC";
            string sql = "SELECT * FROM ((TH_DETALLE_RESERVA DR INNER JOIN TH_RESERVA R ON R.IDRESERVA = DR.IDRESERVA) INNER JOIN TH_OBRA O ON O.IDOBRA = R.IDOBRA) INNER JOIN TH_CLIENTE C ON C.IDCLIENTE = R.IDCLIENTE WHERE R.IDESTADORESERVA = 1  AND O.IDTEATRO = @IdTeatro AND R.FechaReserva between @FechaReserva and @fechaFin ORDER BY R.FechaReserva,C.ApePaterno, C.ApeMaterno, C.Nombre ;";

            OleDbParameter pIdTeatro = UtilDA.SetParameters("@IdTeatro", OleDbType.Integer, idTeatro);
            OleDbParameter pFecha    = UtilDA.SetParameters("@FechaReserva", OleDbType.Date, fechaInicio);
            OleDbParameter pFechaFin = UtilDA.SetParameters("@fechaFin", OleDbType.Date, fechaFin);

            using (var dtr = UtilDA.ExecuteReader(cmd, CommandType.Text, sql, cnx, pIdTeatro, pFecha, pFechaFin))
            {
                while (dtr.Read())
                {
                    detalle = new DetalleReserva()
                    {
                        IdDetalleReserva = DataConvert.ToInt(dtr["IdDetalleReserva"]),
                        Precio           = DataConvert.ToSingle(dtr["Precio"]),
                        NombreZona       = DataConvert.ToString(dtr["NombreZona"]),
                        NombreFila       = DataConvert.ToString(dtr["NombreFila"]),
                        NombreAsiento    = DataConvert.ToString(dtr["NombreAsiento"]),
                        NombrePromocion  = DataConvert.ToString(dtr["DR.NombrePromocion"]),
                        Reserva          = new Reserva()
                        {
                            IdReserva       = DataConvert.ToInt(dtr["R.IdReserva"]),
                            FechaReserva    = DataConvert.ToDateTime(dtr["FechaReserva"]),
                            Horario         = DataConvert.ToString(dtr["Horario"]),
                            NombrePromocion = DataConvert.ToString(dtr["R.NombrePromocion"]),
                            PrecioTotal     = DataConvert.ToSingle(dtr["PrecioTotal"]),
                            Asientos        = DataConvert.ToString(dtr["Asientos"]),
                            FechaCreacion   = DataConvert.ToDateTime(dtr["R.FechaCrea"]),
                            UsuarioCreacion = DataConvert.ToString(dtr["R.UserCrea"]),
                            NombreCliente   = DataConvert.ToString(dtr["NombreCliente"]),
                            Empresa         = DataConvert.ToString(dtr["Empresa"]),
                            Obra            = new Obra()
                            {
                                IdObra = DataConvert.ToInt(dtr["O.IdObra"]),
                                Nombre = DataConvert.ToString(dtr["O.Nombre"])
                            },
                            Cliente = new Cliente()
                            {
                                Nombre = DataConvert.ToString(dtr["ApePaterno"]) + " " + DataConvert.ToString(dtr["ApeMaterno"]) + " " + DataConvert.ToString(dtr["C.Nombre"])
                            }
                        }
                    };
                    listaDetalle.Add(detalle);
                }
            }
            UtilDA.Close(cnx);
            return(listaDetalle);
        }
        public ActionResult CrearReserva(DetalleReserva detalleReserva)
        {
            try
            {
                var req = WebRequest.Create(@"http://localhost:26812/api/Reservas/ReservarVehiculo");

                req.Method      = "POST";
                req.ContentType = "application/json";

                Stream dataStream = req.GetRequestStream();
                dataStream.Write(this.ToByteArray(detalleReserva), 0, 0);
                dataStream.Close();

                return(View());

                /*
                 * var resp = req.GetResponse() as HttpWebResponse;
                 * if (resp != null && resp.StatusCode == HttpStatusCode.OK)
                 * {
                 *  using (var respStream = resp.GetResponseStream())
                 *  {
                 *      if (respStream != null)
                 *      {
                 *          var writer = new StreamWriter(respStream);
                 *          var reader = new StreamReader(respStream, Encoding.UTF8);
                 *          string result = reader.ReadToEnd();
                 *
                 *          var listResult = JsonConvert.DeserializeObject<List<Reserva>>(result);
                 *
                 *          ViewBag.Reservas = listResult;
                 *          return View();
                 *      }
                 *      return View();
                 *  }
                 *  //return View();
                 * }
                 * else
                 * {
                 *  Console.WriteLine("Status Code: {0}, Status Description: {1}", resp.StatusCode, resp.StatusDescription);
                 *  return View();
                 * }*/
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
                return(null);
            }
        }
Esempio n. 7
0
        public bool Agregar(DetalleReserva dtReserva)
        {
            bool   exito = false;
            string query = "INSERT INTO  RESERVA_TARIFA  VALUES(@pr1,@pr2,@pr3,@pr4,@pr5)";

            SqlParameter[] dbParams = new SqlParameter[]
            {
                DBHelper.MakeParam("@pr1", dtReserva.Reserva.Id),
                DBHelper.MakeParam("@pr2", dtReserva.Tarifa.Id),
                DBHelper.MakeParam("@pr3", dtReserva.HoraInicio),
                DBHelper.MakeParam("@pr4", dtReserva.HoraFin),
                DBHelper.MakeParam("@pr5", dtReserva.Precio)
            };
            exito = DBHelper.ExecuteNonQuery(query, dbParams) > 0;
            return(exito);
        }
        public IHttpActionResult ReservarVehiculo([FromBody] DetalleReserva reserva)
        {
            //TIRO EN POSTMAN
            //http://localhost:26812/api/Vehiculos/ReservarVehiculos?nomyape="Santiago Innocenti"&fhdev=2019-06-22T13:45:30&fhret=2019-06-23T13:45:30&idVehCiudad=58&lugarDev=Plaza Colon&lugarRet=Aeropuerto&doc=123456789


            try
            {
                var client      = new ServiceReference1.WCFReservaVehiculosClient();
                var credentials = Credenciales();

                var request = new ServiceReference1.ReservarVehiculoRequest();
                request.ApellidoNombreCliente = reserva.ApellidoNombreCliente;
                request.FechaHoraDevolucion   = reserva.FechaHoraDevolucion;
                request.FechaHoraRetiro       = reserva.FechaHoraRetiro;
                request.IdVehiculoCiudad      = reserva.IDVehiculoCiudad;
                request.NroDocumentoCliente   = reserva.NroDocumentoCliente;
                //request.LugarRetiro = reserva.LugarRetiro;
                //request.LugarDevolucion = reserva.LugarDevolucion;
                var valor = client.ReservarVehiculo(credentials, request);

                decimal costoReserva       = valor.Reserva.TotalReserva; //VIENE EN NEGATIVO, POR ESO SE MULTIPLICA POR -1
                decimal precioFinalReserva = costoReserva * (decimal)1.2;
                string  codigoReserva      = valor.Reserva.CodigoReserva;

                Reserva nuevaReserva = new Reserva();
                nuevaReserva.IdCliente     = reserva.IdUsuario;
                nuevaReserva.CodigoReserva = codigoReserva;
                nuevaReserva.FechaReserva  = reserva.FechaHoraRetiro;

                nuevaReserva.Costo            = (double)costoReserva;
                nuevaReserva.PrecioVenta      = (double)precioFinalReserva;
                nuevaReserva.IdVehiculoCiudad = reserva.IDVehiculoCiudad;
                nuevaReserva.IdCiudad         = valor.Reserva.VehiculoPorCiudadEntity.CiudadId;
                //nuevaReserva.idPais = valor.Reserva.VehiculoPorCiudadEntity;

                db.Reserva.Add(nuevaReserva);
                db.SaveChanges();

                return(Ok(nuevaReserva.ToString()));
            }
            catch (Exception)
            {
                return(NotFound());
            }
        }
Esempio n. 9
0
 /// <summary>
 /// Set reservation details
 /// </summary>
 private void AsociarEntidadesReserva()
 {
     listaDetalle          = new List <DetalleReserva>();
     reserva.ListaDetalles = null;
     foreach (AsientoZona ap in listaAsientoPrecioTemp)
     {
         detalle                 = new DetalleReserva();
         detalle.Asiento         = ap.Asiento;
         detalle.Precio          = ap.Zona.Precio;
         detalle.NombreZona      = ap.Zona.Nombre;
         detalle.NombreFila      = ap.Asiento.Fila;
         detalle.NombreAsiento   = ap.Asiento.Descripcion;
         detalle.NombrePromocion = ap.NombrePromocion;
         listaDetalle.Add(detalle);
     }
     reserva.Asientos      = asientos;
     reserva.ListaDetalles = listaDetalle;
     reserva.PrecioTotal   = precioTotal;
 }
Esempio n. 10
0
        public ActionResult DetalleReserva(string Idr, Guid Idc)
        {
            var DetalleReserva = new DetalleReserva();
            int CMesas         = 0;
            var Idreserva      = db.DetalleMesasCliente.Where(r => r.Cod_Cli == Idc && r.NConfirmacion_DMC == Idr).ToList();

            foreach (var item in Idreserva)
            {
                MesasOcupadas mesasOcupadas = db.MesasOcupadas.Find(item.Cod_MesasO);
                if (mesasOcupadas.ConfirmarMesa == true)
                {
                    return(HttpNotFound());
                    //return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
                }
                mesasOcupadas.ConfirmarMesa   = true;
                db.Entry(mesasOcupadas).State = EntityState.Modified;
                db.SaveChanges();
                DetalleReserva.MesasOcupada = mesasOcupadas;
                CMesas++;
            }
            ViewBag.CMesas         = CMesas;
            DetalleReserva.Cliente = db.Clientes.Find(Idc);
            return(View(DetalleReserva));
        }
Esempio n. 11
0
        public ActionResult DetalleReserva(List <Tarifa> lista)
        {
            DetalleReserva        dtReserva;
            List <DetalleReserva> listaDetalles = new List <DetalleReserva>();
            double monto = 0;

            foreach (var tarifa in lista)
            {
                if (tarifa.Checked)
                {
                    monto                = tarifa.Precio + monto;
                    dtReserva            = new DetalleReserva();
                    dtReserva.Tarifa     = tarifa;
                    dtReserva.HoraInicio = tarifa.HoraInicio;
                    dtReserva.HoraFin    = tarifa.HoraFin;
                    dtReserva.Precio     = tarifa.Precio;
                    listaDetalles.Add(dtReserva);
                }
            }
            Session["monto"]         = monto;
            Session["listaDetalles"] = listaDetalles;

            return(View(listaDetalles));
        }
Esempio n. 12
0
        public bool CargaMasiva(string path)
        {
            List <ExcelModelMasivo> lista = ExcelHelper.GetListaCargaMasiva(path);

            lista = lista.OrderBy(x => x.Telefono).ThenBy(x => x.FechaReserva).ThenByDescending(x => x.Obra).ToList();
            if (lista.Count == 0)
            {
                throw new Exception("El archivo se encuentra vacio");
            }
            List <Asiento>        listaAsientos    = new List <Asiento>();
            List <DetalleReserva> listaDetalle     = new List <DetalleReserva>();
            List <Reserva>        listaReservas    = new List <Reserva>();
            List <String>         listaPromociones = new List <string>();
            Single precio = 0;

            for (int x = 0; x < lista.Count; x++)
            {
                #region DeclararVariables

                Reserva        reserva = new Reserva();
                DetalleReserva detalle;

                #endregion

                #region CapturarAsientos


                precio += lista[x].Precio;

                if (lista[x].Nombre == null)
                {
                    throw new Exception("Nombre debe ser ingresado en la fila: " + (x + 2));
                }
                if (lista[x].Apellidos == null)
                {
                    throw new Exception("Apellidos deben ser ingresados en la fila: " + (x + 2));
                }
                if (lista[x].Telefono == null)
                {
                    throw new Exception("Telefono debe ser ingresado en la fila: " + (x + 2));
                }
                if (lista[x].Teatro == null)
                {
                    throw new Exception("Teatro debe ser ingresado en la fila: " + (x + 2));
                }
                if (lista[x].UsuarioRegistro == null)
                {
                    throw new Exception("Usuario Registro debe ser ingresado en la fila: " + (x + 2));
                }
                if (lista[x].Zona == null)
                {
                    throw new Exception("Zona debe ser ingresada en la fila: " + (x + 2));
                }
                if (lista[x].Correo == null)
                {
                    throw new Exception("Correo debe ser ingresado en la fila: " + (x + 2));
                }
                if (lista[x].Fila == null)
                {
                    throw new Exception("Fila debe ser ingresado en la fila: " + (x + 2));
                }
                if (lista[x].Asiento == null)
                {
                    throw new Exception("Asiento debe ser ingresado en la fila: " + (x + 2));
                }
                if (lista[x].Funcion == null)
                {
                    throw new Exception("Funcion debe ser ingresado en la fila: " + (x + 2));
                }
                if (lista[x].FechaReserva == null)
                {
                    throw new Exception("Fecha Reserva debe ser ingresado en la fila: " + (x + 2));
                }
                if (lista[x].Obra == null)
                {
                    throw new Exception("Obra Reserva debe ser ingresado en la fila: " + (x + 2));
                }


                Teatro teatro = teatroRepository.GetLista().FirstOrDefault(te => te.Nombre.ToUpper().Trim() == lista[x].Teatro.ToUpper().Trim());
                if (teatro == null)
                {
                    throw new Exception("Teatro no encontrada en la fila: " + (x + 2));
                }
                Asiento asiento = asientoRepository.GetLista().FirstOrDefault(asi => asi.Teatro.IdTeatro == teatro.IdTeatro &&
                                                                              asi.Fila == lista[x].Fila && asi.Descripcion == lista[x].Asiento);
                if (asiento == null)
                {
                    throw new Exception("Asiento no encontrado en la fila: " + (x + 2));
                }
                asiento.EstadoTemporal = lista[x].Zona;
                listaAsientos.Add(asiento);


                detalle                 = new DetalleReserva();
                detalle.Asiento         = asiento;
                detalle.NombreZona      = lista[x].Zona;
                detalle.FechaCreacion   = DateTime.Now;
                detalle.UsuarioCreacion = lista[x].UsuarioRegistro;
                detalle.Estado          = "A";
                detalle.Precio          = lista[x].Precio;
                detalle.NombreFila      = asiento.Fila;
                detalle.NombreAsiento   = asiento.Descripcion;
                if (lista[x].Promocion != null)
                {
                    detalle.NombrePromocion = lista[x].Promocion;
                    if (!listaPromociones.Contains(lista[x].Promocion))
                    {
                        listaPromociones.Add(lista[x].Promocion);
                    }
                }
                listaDetalle.Add(detalle);

                if (x < lista.Count - 1)//saltar ultima vuelta
                {
                    if (lista[x].Telefono == lista[x + 1].Telefono && lista[x].Obra == lista[x + 1].Obra && lista[x].FechaReserva == lista[x + 1].FechaReserva &&
                        lista[x].Funcion == lista[x + 1].Funcion &&
                        lista[x].Teatro == lista[x + 1].Teatro)
                    {
                        continue;
                    }
                }

                #endregion

                #region Obtener Datos Cabecera

                Cliente tempCliente = clienteRepository.GetByTelefono(lista[x].Telefono);
                if (tempCliente == null)
                {
                    Cliente newCliente = new Cliente()
                    {
                        Correo          = lista[x].Correo,
                        Nombre          = lista[x].Nombre,
                        Telefono        = lista[x].Telefono,
                        ApellidoPaterno = lista[x].Apellidos,
                        Apellidomaterno = ""
                    };
                    int idCliente = clienteRepository.GetNewIdCliente(newCliente);
                }
                else
                {
                    tempCliente.Correo          = lista[x].Correo;
                    tempCliente.Nombre          = lista[x].Nombre;
                    tempCliente.Telefono        = lista[x].Telefono;
                    tempCliente.ApellidoPaterno = lista[x].Apellidos;
                    tempCliente.Apellidomaterno = "";
                    clienteRepository.Update(tempCliente);
                }

                reserva.Cliente = tempCliente;
                reserva.Obra    = obraRepository.GetLista().FirstOrDefault(ob => ob.Nombre.ToUpper().Trim() == lista[x].Obra.ToUpper().Trim());
                if (reserva.Obra == null)
                {
                    throw new Exception("Obra no encontrada en la fila: " + (x + 2));
                }
                reserva.Funcion = funcionRepository.GetLista().FirstOrDefault(fu => fu.Horario == lista[x].Funcion && fu.Obra.IdObra == reserva.Obra.IdObra);
                if (reserva.Funcion == null)
                {
                    throw new Exception("Funcion no encontrada en la fila: " + (x + 2));
                }

                reserva.Usuario = usuarioRepository.GetLista().FirstOrDefault(us => us.Login.ToUpper().Trim() == lista[x].UsuarioRegistro.ToUpper().Trim());
                if (reserva.Usuario == null)
                {
                    throw new Exception("Usuario no encontrado en la fila: " + (x + 2));
                }

                if (!String.IsNullOrEmpty(lista[x].Empresa))
                {
                    Empresa objEmpresa = empresaRepository.GetLista().Where(tx => tx.Nombre.ToLower().Equals(lista[x].Empresa.ToLower())).FirstOrDefault();
                    if (objEmpresa == null)
                    {
                        throw new Exception("Empresa no encontrado en la fila: " + (x + 2));
                    }
                    else
                    {
                        reserva.Empresa = objEmpresa.Nombre;
                    }
                }
                else
                {
                    reserva.Empresa = "";
                }


                Reserva reservaExiste = reservaRepository.ReservaExiste(lista[x].FechaReserva, reserva.Funcion.IdFuncion, reserva.Cliente.IdCliente);
                if (reservaExiste != null)
                {
                    throw new Exception("Reserva ya se encuentra registrada en la fila: " + (x + 2));
                }


                string asientos = "";
                listaAsientos.ForEach(tx => {
                    asientos += tx.EstadoTemporal + " / " + tx.Fila + " / " + tx.Descripcion + "\n";
                });
                asientos            = asientos.Substring(0, asientos.LastIndexOf("\n"));
                reserva.Asientos    = asientos;
                reserva.PrecioTotal = precio;

                EstadoReserva estadoReserva = new EstadoReserva()
                {
                    IdEstadoReserva = 1,
                    Nombre          = "Confirmada",
                    Estado          = "A"
                };
                reserva.EstadoReserva = estadoReserva;

                reserva.FechaCreacion   = DateTime.Now;
                reserva.UsuarioCreacion = lista[x].UsuarioRegistro;
                reserva.ListaDetalles   = listaDetalle;
                reserva.FechaReserva    = lista[x].FechaReserva;
                reserva.Horario         = lista[x].Funcion;

                string promociones = "";
                listaPromociones.ForEach(tx => {
                    promociones += tx + ",";
                });

                if (promociones.IndexOf(',') != -1)
                {
                    promociones = promociones.Substring(0, promociones.LastIndexOf(','));
                }

                reserva.NombrePromocion = promociones;
                #endregion

                #region Inserts
                listaReservas.Add(reserva);
                #endregion

                #region Limpiar valores
                listaDetalle     = new List <DetalleReserva>();
                listaAsientos    = new List <Asiento>();
                listaPromociones = new List <string>();
                precio           = 0;
                #endregion
            }
            return(reservaRepository.InsertMasivo(listaReservas));
        }
        public ActionResult Reservar(int idUsuario, string apeynom, string doc, DateTime fechaRetiro, DateTime fechaDevolucion, int idVehiculo, string lugarRetiro, string lugarDevolucion)
        {
            try
            {
                DetalleReserva dr = new DetalleReserva();
                dr.IdUsuario             = idUsuario;
                dr.ApellidoNombreCliente = apeynom;
                dr.NroDocumentoCliente   = doc;
                dr.FechaHoraRetiro       = fechaRetiro;
                dr.FechaHoraDevolucion   = fechaDevolucion;
                dr.IDVehiculoCiudad      = idVehiculo;
                dr.LugarRetiro           = lugarRetiro;
                dr.LugarDevolucion       = lugarDevolucion;

                //Inicializamos el objeto WebRequest
                var req = WebRequest.Create(@"http://localhost:26812/api/Reservas/ReservarVehiculo");

                //Indicamos el método a utilizar
                req.Method = "POST";
                //Definimos que el contenido del cuerpo del request tiene el formato Json
                req.ContentType = "application/json";

                //Escribimos sobre el cuerpo del request los datos del usuario en formato Json
                using (var streamWriter = new StreamWriter(req.GetRequestStream()))
                {
                    //Serializamos el objeto usuario en un string con formato Json
                    var jsonData = JsonConvert.SerializeObject(dr);

                    streamWriter.Write(jsonData);
                    streamWriter.Flush();
                    streamWriter.Close();
                }

                //Realizamos la llamada a la API de la siguiente forma.
                var resp = req.GetResponse() as HttpWebResponse;

                //El protocolo HTTP define un cambpo Status que indica el estado de la peticion.
                //StatusCode = 200 (OK), indica que la llamada se proceso correctamente.
                //Cualquier otro caso corresponde a un error.
                if (resp != null && resp.StatusCode == HttpStatusCode.OK)
                {
                    using (var respStream = resp.GetResponseStream())
                    {
                        if (respStream != null)
                        {
                            //Obtenemos de la siguiente el cuerpo de la respuesta
                            var    reader = new StreamReader(respStream, Encoding.UTF8);
                            string result = reader.ReadToEnd();

                            //El cuerpo en formato Json lo deserealizamos en el objeto usuario
                            Reserva res = JsonConvert.DeserializeObject <Reserva>(result);

                            return(Json(new { ok = true, reserva = res.CodigoReserva }, JsonRequestBehavior.AllowGet));
                        }
                    }
                    return(null);
                }
                else
                {
                    Console.WriteLine("Status Code: {0}, Status Description: {1}", resp.StatusCode, resp.StatusDescription);
                    return(null);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
                return(null);
            }
        }
 public bool Update(DetalleReserva datos)
 {
     throw new NotImplementedException();
 }
Esempio n. 15
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            try

            {
                DateTime fechaReserva = DateTime.Parse(fechaReservacion.Text);
                DateTime fechaSalid   = DateTime.Parse(fechaSalida.Text);
                DateTime hoy          = DateTime.Today;


                if (DateTime.Compare(fechaReserva, hoy) < 0)
                {
                    this.Page.Response.Write("<script language='JavaScript'>window.alert('La fecha no puede ser menor a la actua');</script>");
                }
                else
                {
                    if (DateTime.Compare(fechaSalid, fechaReserva) < 0)
                    {
                        this.Page.Response.Write("<script language='JavaScript'>window.alert('La fecha de reserva no puede ser mayor que la de salida');</script>");
                    }
                    else
                    {
                        if (Decimal.Parse(SaldoReserva.Text.Replace(".", ",")) < 0)
                        {
                            this.Page.Response.Write("<script language='JavaScript'>window.alert('El pago no puede ser mayor que la reserva');</script>");
                        }
                        else
                        {
                            modeloReservacionDetalle = (Session["datos"] as List <ModeloReservacionDetalle>);
                            if (modeloReservacionDetalle.Count > 0)
                            {
                                Guardar();
                                short IdReserva = CapaProceso.Clases.Reserva.IdReserva();

                                foreach (var item in modeloReservacionDetalle)
                                {
                                    DetalleReserva.Insertar(IdReserva, fechaReservacion.Text, item);
                                    if (int.Parse(idEstadoReserva.SelectedValue) == 2)
                                    {
                                        CapaProceso.Clases.Habitacion.ActualizarEstado(short.Parse(item.numeroHabitacion.ToString()), 2);
                                    }
                                }

                                enviar();
                                Session.Remove("total");
                                Session.Remove("datos");

                                Response.Redirect("Index.aspx");
                            }
                            else
                            {
                                this.Page.Response.Write("<script language='JavaScript'>window.alert('Ingrese el detalle de la raserva');</script>");
                            }
                        }
                    }
                }
            }
            catch (Exception)
            {
                this.Page.Response.Write("<script language='JavaScript'>window.alert('Error al guardar');</script>");
            }
        }