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;
        }
示例#2
0
 public ActionResult Roles(UserRolesViewModel view)
 {
     string errorMessage = _userService.UpdateUserRoles(view);
     var list = _userService.GetAllUsers();
     return string.IsNullOrEmpty(errorMessage) ? View("Index",list) : View("UserRoles", view);
 }
示例#3
0
 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;
 }