public async Task <ActionResult> CheckMantenimientoRealizado([FromRoute] int id) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } HoteleriaContext _context2 = new HoteleriaContext(); var habitacion = await _context.Habitacion.FindAsync(id); var incidencia = _context.Incidencia.Where(i => i.Habitacion == habitacion.Numero).Last(); if (habitacion == null) { return(NotFound()); } if (incidencia == null) { return(BadRequest(new ErrorResponse() { messages = new string[] { "HABITACION.MISSING_ISSUE" } })); } var asignEmpleado = _asignacionesRepository.EmpleadoAsignadoPorRol(habitacion.HabitacionId, (int)RolEnum.AgenteDeLimpieza); if (asignEmpleado == null) { return(BadRequest(new ErrorResponse() { messages = new string[] { "HABITACION.MISSING_CLEANER" } })); } if (habitacion.EstadoHabitacionId != (int)HabitacionEstado.Bloqueado) { return(BadRequest(new ErrorResponse() { messages = new string[] { "HABITACION.ERROR_ON_CHECK_UPKEEP" } })); } habitacion.EstadoHabitacionId = (int)HabitacionEstado.Desocupado; _habitacionRepository.Edit(habitacion); incidencia.Estado = 1; incidencia.FechaCerrado = DateTime.Now; _context.Update(incidencia); var empleadoid = _context2.Empleado.Where(e => e.UsuarioNombre == _userManager.GetUserName(User)).First().EmpleadoId; var asignacion = _context2.AsignacionHabitacion.Where(a => a.EmpleadoId == empleadoid && a.HabitacionId == habitacion.HabitacionId).First(); _context2.Remove(asignacion); _habitacionRepository.SaveChanges(); _context.SaveChanges(); _context2.SaveChanges(); new NotificacionService().Notificar(asignEmpleado.Empleado, habitacion, ActividadTipo.Limpieza); return(Ok(habitacion)); }
public void SaveChanges() { _context.SaveChanges(); }