public UserRolesViewModel MapUserRoles(UserProfile user, IList<UserRole> roles) { if (user == null) return new UserRolesViewModel(); var view = new UserRolesViewModel { FirstName = user.FirstName, LastName = user.LastName, UserName = user.UserName, Roles = new List<RolesViewModel>() }; foreach (UserRole role in roles) { RolesViewModel roleView = Mapper.Map<UserRole, RolesViewModel>(role); foreach (UserRole userRole in user.Roles) { roleView.IsChecked = userRole.Id == role.Id; } view.Roles.Add(roleView); } var selectRoles = new MultiSelectList(view.Roles, "RoleId", "RoleName", view.Roles .Where(x => x.IsChecked) .Select(x =>x.RoleId)); view.MultiSelectRoles = selectRoles; return view; }
public ActionResult Roles(UserRolesViewModel view) { string errorMessage = _userService.UpdateUserRoles(view); var list = _userService.GetAllUsers(); return string.IsNullOrEmpty(errorMessage) ? View("Index",list) : View("UserRoles", view); }
public string UpdateUserRoles(UserRolesViewModel userRolesViewModel) { string errorMessage = _profileUserRepository.RemoveAllUserRoles(userRolesViewModel.UserName); if (!string.IsNullOrEmpty(errorMessage)) return errorMessage; errorMessage = _profileUserRepository.AddUserRoles(userRolesViewModel.SelectedRoleIds, userRolesViewModel.UserName); return errorMessage; }