public async Task <IActionResult> Edit(int id, [Bind("Id,Nombre,Apellido,Dni,NroHabitacion,FechaIngreso,FechaEgreso,DiasHospedado,IdActivo")] Registro registro)
        {
            if (id != registro.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(registro);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!RegistroExists(registro.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(registro));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,NroHabitacion,PrecioPorDia,CapacidadMax")] Habitaciones habitaciones)
        {
            if (id != habitaciones.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid && PrecioValido(habitaciones.PrecioPorDia) && CapacidadValida(habitaciones.CapacidadMax))
            {
                try
                {
                    habitaciones.EstaOcupada = false;
                    _context.Update(habitaciones);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!HabitacionesExists(habitaciones.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }

            else if (!PrecioValido(habitaciones.PrecioPorDia))
            {
                ViewBag.habitacionExiste = "alert('Precio por dia invalido');";
                return(View(habitaciones));
            }

            else
            {
                ViewBag.habitacionExiste = "alert('Capacidad max. invalida');";
                return(View(habitaciones));
            }
        }
        public async Task <IActionResult> Edit(int id, [Bind("Id,Nombre,Apellido,Dni,NroHabitacion,FechaIngreso,FechaEgreso,DiasHospedado")] Huespedes huespedes)
        {
            if (id != huespedes.Id)
            {
                return(NotFound());
            }

            double dif = CalcularDiasHospedado(huespedes.FechaEgreso, huespedes.FechaIngreso);

            if (ModelState.IsValid && HabitacionDisponible(huespedes.NroHabitacion) && StringValidado(huespedes.Nombre) && StringValidado(huespedes.Apellido) && dif >= 0)
            {
                int idActivo = huespedes.Id;
                huespedes.DiasHospedado = dif;
                ActualizarRegistro(id, huespedes.Nombre, huespedes.Apellido, huespedes.Dni, huespedes.NroHabitacion, huespedes.FechaIngreso, huespedes.FechaEgreso, dif);
                _context.Update(huespedes);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }

            else if (!HabitacionDisponible(huespedes.NroHabitacion))
            {
                ViewBag.Validacion = "alert('Habitacion inexistente o llena');";
                return(View(huespedes));
            }

            else if (!StringValidado(huespedes.Nombre) || !StringValidado(huespedes.Apellido))
            {
                ViewBag.Validacion = "alert('El nombre o apellido es invalido');";
                return(View(huespedes));
            }

            else if (dif < 0)
            {
                ViewBag.Validacion = "alert('La fecha de ingreso no puede ser mayor a la de salida');";
                return(View(huespedes));
            }

            return(View(huespedes));
        }