コード例 #1
0
        public Boolean RealizarAlquiler(EntAlquiler alquiler)
        {
            SqlCommand cmd = null;
            Boolean    alquila;

            try
            {
                SqlConnection cn = Conexion.Instancia.Conectar();
                cmd = new SqlCommand("Sp_RealizarAlquiler", cn)
                {
                    CommandType = System.Data.CommandType.StoredProcedure
                };

                cmd.Parameters.AddWithValue("@prmintAlquilerID", alquiler.AlquilerID);
                cmd.Parameters.AddWithValue("@prmintCantidadAdultos", alquiler.CantidaAdultos);
                cmd.Parameters.AddWithValue("@prmintCantidadKids", alquiler.CantidadKids);
                cmd.Parameters.AddWithValue("@prmstrFechadeingreso", alquiler.FechadeIngreso);
                cmd.Parameters.AddWithValue("@prmstrFechadesalida", alquiler.FechadeSalida);
                cmd.Parameters.AddWithValue("@prmstrDni", alquiler.Huesped.Dni);
                cmd.Parameters.AddWithValue("@prmstrNumeroHabitacion", alquiler.Habitacion.NumeroHabitacion);
                cn.Open();
                int result = cmd.ExecuteNonQuery();
                alquila = result > 0 ? true : false;
            }
            catch (SqlException err)
            {
                throw err;
            }
            finally
            {
                cmd.Connection.Close();
            }
            return(alquila);
        }
コード例 #2
0
        public ActionResult RealizarAlquiler(EntHabitacion habitacion, FormCollection frm)
        {
            verificarSesion();
            string dni = frm["txtDni"];

            string numeroHabitacion = frm["txtNumeroHabitacion"];

            double precio = double.Parse(frm["txtprecio"]);

            EntHuesped huesped = LogHuesped.Instancia.BuscarHuesped(dni);

            habitacion = new EntHabitacion
            {
                NumeroHabitacion = numeroHabitacion
            };

            Random rdn = new Random();

            EntAlquiler alquiler = new EntAlquiler
            {
                AlquilerID     = rdn.Next(20, int.MaxValue),
                FechadeIngreso = frm["txtFechaIngreso"],
                FechadeSalida  = frm["txtFechaSalida"],

                CantidaAdultos = int.Parse(frm["txtCantidadAdultos"]),

                CantidadKids = int.Parse(frm["txtCantidadKids"]),

                Habitacion = habitacion,
                Huesped    = huesped
            };

            try
            {
                Boolean alquila = LogAlquiler.Instancia.RealizarAlquiler(alquiler);
                if (alquila)
                {
                    EntComprobantedepagoalquiler ca = new EntComprobantedepagoalquiler
                    {
                        Alquiler    = alquiler,
                        Monto       = precio,
                        NumeroSerie = rdn.Next(10001, int.MaxValue)
                    };

                    Boolean generarCPAlquiler = LogComprobantePagoAlquiler.Instancia.GenerarComprobanteAlquiler(ca);

                    return(RedirectToAction("AlquilerMenu", "RealizarAlquiler", new { dni = huesped.Dni }));
                }
                else
                {
                    return(View(alquiler));
                }
            }
            catch (ApplicationException ex)
            {
                return(RedirectToAction("RealizarAlquiler", new { mesjException = ex.Message }));
            }
        }
コード例 #3
0
 public Boolean RealizarAlquiler(EntAlquiler alquiler)
 {
     try
     {
         return(DatAlquiler.Instancia.RealizarAlquiler(alquiler));
     }
     catch (Exception e)
     {
         throw e;
     }
 }
コード例 #4
0
        public ActionResult ProcesarAlquiler(int reservaID)
        {
            verificarSesion();
            EntReserva reserva = LogReserva.Instancia.BuscarReserva(reservaID);

            ((EntCuenta)Session["cuenta"]).ReservaID = reserva.ReservaID;

            EntAlquiler alquiler = new EntAlquiler
            {
                FechadeIngreso = reserva.FechadeIngreso,
                FechadeSalida  = reserva.FechadeSalida,
                CantidaAdultos = reserva.CantidaAdultos,
                CantidadKids   = reserva.CantidadKids,
                Habitacion     = reserva.Habitacion,
                Huesped        = reserva.Huesped
            };

            return(View(alquiler));
        }
コード例 #5
0
        public ActionResult RealizarAlquiler(string numeroHabitacion, string dni, string fechaIngreso, string fechaSalida, int cantidadAdultos, int cantidadKids)
        {
            verificarSesion();
            EntHabitacion habitacion = new EntHabitacion();

            habitacion = LogHabitacion.Instancia.BuscarHabitacion(numeroHabitacion);
            EntHuesped huesped = new EntHuesped
            {
                Dni = dni
            };


            EntAlquiler alquiler = new EntAlquiler
            {
                FechadeIngreso = fechaIngreso,
                FechadeSalida  = fechaSalida,
                CantidaAdultos = cantidadAdultos,
                CantidadKids   = cantidadKids,
                Habitacion     = habitacion,
                Huesped        = huesped
            };

            return(View(alquiler));
        }
コード例 #6
0
        public ActionResult HabitacionesDisponibles(FormCollection frm)
        {
            verificarSesion();
            string cultureName = "en-US";
            var    culture     = new CultureInfo(cultureName);
            string dni         = Convert.ToString(frm["txtdni"]);

            string _fechaIngreso = DateTime.Today.ToString("d", culture);
            string _fechaSalida  = frm["txtCheckOut"];

            int cantidadAdultos  = int.Parse(frm["selectAdultos"]);
            int cantidadKids     = int.Parse(frm["selectKids"]);
            int cantidadPersonas = cantidadAdultos + cantidadKids;

            DateTime fechaIngreso = Convert.ToDateTime(_fechaIngreso, CultureInfo.InvariantCulture),
                     fechaSalida  = Convert.ToDateTime(_fechaSalida, CultureInfo.InvariantCulture);

            try
            {
                string fechaIngresoAlquiler = DateTime.Today.Date.ToString("yyyy-MM-dd");

                TimeSpan diferencia       = fechaSalida - fechaIngreso;
                TimeSpan diferenciaSalida = fechaSalida - DateTime.Today.Date;

                EntHuesped huesped = LogHuesped.Instancia.BuscarHuesped(dni);

                EntAlquiler alquiler = new EntAlquiler
                {
                    FechadeIngreso = _fechaIngreso,
                    FechadeSalida  = _fechaSalida,
                    CantidaAdultos = cantidadAdultos,
                    CantidadKids   = cantidadKids,
                    Huesped        = huesped
                };

                if (diferenciaSalida.Days < 0)
                {
                    EntAlquilerViewModel ViewModelError = new EntAlquilerViewModel
                    {
                        Alquiler = alquiler,
                        ErrorID  = 0
                    };
                    return(View(ViewModelError));
                }

                if (diferencia.Days > 28)
                {
                    EntAlquilerViewModel ViewModelError = new EntAlquilerViewModel
                    {
                        Alquiler = alquiler,
                        ErrorID  = 1
                    };
                    return(View(ViewModelError));
                }
                if (cantidadAdultos == 0)
                {
                    EntAlquilerViewModel ViewModelError = new EntAlquilerViewModel
                    {
                        Alquiler = alquiler,
                        ErrorID  = 2
                    };
                    return(View(ViewModelError));
                }
                if (cantidadPersonas > 6)
                {
                    EntAlquilerViewModel ViewModelError = new EntAlquilerViewModel
                    {
                        Alquiler = alquiler,
                        ErrorID  = 3
                    };
                    return(View(ViewModelError));
                }

                List <EntHabitacion> listaHabitacionesDisponibles = LogAlquiler.Instancia.ListarHabitacionesDisponibles(cantidadPersonas, fechaIngresoAlquiler, fechaSalida);

                List <EntHabitacion> lista = new List <EntHabitacion>();
                foreach (EntHabitacion habitacion in listaHabitacionesDisponibles)
                {
                    int ID = habitacion.Tipodehabitacion.TipodehabitacionID;
                    List <EntServicioadicional> servs = LogServiciosAdicionales.Instancia.ObtenerServicios(ID);
                    habitacion.Tipodehabitacion.ServiciosAdicionales = servs;
                    lista.Add(habitacion);
                }


                EntAlquilerViewModel ViewModel = new EntAlquilerViewModel
                {
                    Alquiler     = alquiler,
                    Habitaciones = lista,
                    ErrorID      = -1
                };

                return(View(ViewModel));
            }
            catch (Exception err)
            {
                throw err;
            }
        }