public JsonResult UpdateManager(int hotelID, int managerID, int priority, List <HotelUpdateRightsViewModel> rights) { try { var hotel = hotelRepository.GetById(hotelID); var manager = hotelManagerRepository.Get(hotelID, managerID); var hotelRights = new HotelRights() { Priority = priority }; foreach (var right in Enums.ToArray <HotelRightsEnum>()) { hotelRights[right] = rights.First(r => r.HotelRights == right).Value; } var result = hotelService.CanUpdateManager(manager, SessionHelper.CurrentEntity, hotelRights); if (result.IsError) { return(JsonError(result)); } hotelService.UpdateManager(manager, hotelRights); return(JsonSuccess("Manager has been updated!")); } catch (Exception e) { return(JsonDebugOnlyError(e)); } }