public async Task <IActionResult> ManageUserRoles(string userId) { ViewBag.userId = userId; var user = await userManager.FindByIdAsync(userId); if (user == null) { ViewBag.ErrorMessage = $"User with Id = {userId} cannot be found"; return(View("NotFound")); } var model = new List <UserRolesViewModel>(); foreach (var role in roleManager.Roles) { var userRolesViewModel = new UserRolesViewModel { RoleId = role.Id, RoleName = role.Name }; if (await userManager.IsInRoleAsync(user, role.Name)) { userRolesViewModel.IsSelected = true; } else { userRolesViewModel.IsSelected = false; } model.Add(userRolesViewModel); } return(View(model)); }
public async Task <IActionResult> Index() { if (!User.IsInRole(Warehouse.Areas.Identity.Roles.Admin)) { return(RedirectToAction("Index", "Home")); } var users = await _userManager.Users.ToListAsync(); var userRolesViewModel = new List <UserRolesViewModel>(); foreach (IdentityUser user in users) { if (User.Identity.Name != user.UserName) { var thisViewModel = new UserRolesViewModel(); thisViewModel.UserId = user.Id; thisViewModel.Email = user.Email; thisViewModel.Roles = await GetUserRoles(user); userRolesViewModel.Add(thisViewModel); } } return(View(userRolesViewModel)); }
//// GET: Admin/User/Details/5 //public ActionResult Details(string id) //{ // if (id == null) // { // return new HttpStatusCodeResult(HttpStatusCode.BadRequest); // } // ApplicationUser applicationUser = db.Users.Find(id); // if (applicationUser == null) // { // return HttpNotFound(); // } // return View(applicationUser); //} //// GET: Admin/User/Create //public ActionResult Create() //{ // //ViewBag.ProfileID = new SelectList(db.UserProfiles, "ID", "RealName"); // return View(); //} //// POST: Admin/User/Create //// 为了防止“过多发布”攻击,请启用要绑定到的特定属性,有关 //// 详细信息,请参阅 https://go.microsoft.com/fwlink/?LinkId=317598。 //[HttpPost] //[ValidateAntiForgeryToken] //public ActionResult Create([Bind(Include = "Id,Disable,ProfileID,Email,EmailConfirmed,PasswordHash,SecurityStamp,PhoneNumber,PhoneNumberConfirmed,TwoFactorEnabled,LockoutEndDateUtc,LockoutEnabled,AccessFailedCount,UserName")] ApplicationUser applicationUser) //{ // if (ModelState.IsValid) // { // db.Users.Add(applicationUser); // db.SaveChanges(); // return RedirectToAction("Index"); // } // //ViewBag.ProfileID = new SelectList(db.UserProfiles, "ID", "RealName", applicationUser.ProfileID); // return View(applicationUser); //} // GET: Admin/User/UserRole/5, id 代表用户id public ActionResult UserRole(string id) { List <UserRolesViewModel> userRolesVM = new List <UserRolesViewModel>(); var userStore = new UserStore <ApplicationUser, ApplicationRole, string, IdentityUserLogin, IdentityUserRole, IdentityUserClaim>(db); var userManager = new ApplicationUserManager(userStore); List <ApplicationRole> allRoles = db.Roles.Where(r => !r.Disable).ToList(); foreach (ApplicationRole role in allRoles) { UserRolesViewModel vm = new UserRolesViewModel { ID = role.Id, Name = role.Name }; vm.Selected = userManager.IsInRoleAsync(id, role.Name).Result; userRolesVM.Add(vm); } ViewBag.UserID = id; return(View(userRolesVM)); }
public async Task <IActionResult> ManageUserRoles(string id) { var user = await _userManager.FindByIdAsync(id); ViewBag.userId = id; if (user is null) { ViewBag.ErrorMessage($"User with ID = {id} cannot be found!"); return(View("Error/NotFound")); } var roles = _roleManager.Roles; var model = new List <UserRolesViewModel>(); foreach (var stringRole in roles) { var role = await _roleManager.FindByNameAsync(stringRole.Name); UserRolesViewModel userRolesViewModel = new UserRolesViewModel { RoleId = role.Id, RoleName = role.Name }; if (await _userManager.IsInRoleAsync(user, stringRole.Name)) { userRolesViewModel.IsSelected = true; } else { userRolesViewModel.IsSelected = false; } model.Add(userRolesViewModel); } return(View(model)); }
public ActionResult Roles(string username) { var vm = new UserRolesViewModel(this.UserManagementRepository, username); return(View("Roles", vm)); }
public JsonResult GetDatas(int page = 1, int pageSize = 10, string sortBy = "UserName", bool isAsc = true, string search = null) { ApplicationDbContext db = new ApplicationDbContext(); var UserManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var users = UserManager.Users.ToList(); if (!string.IsNullOrWhiteSpace(search)) { search = search.ToLower(); users = users.Where(x => x.Email.ToLower().Contains(search) || x.FirstName.ToLower().Contains(search) || x.LastName.ToLower().Contains(search) || x.UserName.ToLower().Contains(search)).ToList(); } switch (sortBy) { case "UserName": users = isAsc ? users.OrderBy(e => e.UserName).ToList() : users.OrderByDescending(e => e.UserName).ToList(); break; case "Email": users = isAsc ? users.OrderBy(e => e.Email).ToList() : users.OrderByDescending(e => e.Email).ToList(); break; case "FirstName": users = isAsc ? users.OrderBy(e => e.FirstName).ToList() : users.OrderByDescending(e => e.FirstName).ToList(); break; case "LastName": users = isAsc ? users.OrderBy(e => e.LastName).ToList() : users.OrderByDescending(e => e.LastName).ToList(); break; default: users = isAsc ? users.OrderBy(e => e.Id).ToList() : users.OrderByDescending(e => e.Id).ToList(); break; } var TotalPages = (int)Math.Ceiling((double)users.Count() / pageSize); users = users .Skip((page - 1) * pageSize) .Take(pageSize) .ToList(); var userRoles = new List <UserRolesViewModel>(); foreach (var user in users) { var r = new UserRolesViewModel { Id = user.Id, UserName = user.UserName, Email = user.Email, FirstName = user.FirstName, LastName = user.LastName, }; userRoles.Add(r); } //Get all the Roles for our users foreach (var user in userRoles) { user.RoleNames = UserManager.GetRoles(users.First(s => s.UserName == user.UserName).Id); } var result = new { TotalPages = TotalPages, Users = userRoles, CurrentPage = page, PageSize = pageSize, Search = search }; return(Json(result, JsonRequestBehavior.AllowGet)); }
public UserRolesViewModel CreateUserViewMode() { var viewModel = new UserRolesViewModel(); return(viewModel); }
public ActionResult UserRoles(int id = 0) { _repository.UserName = User?.Identity?.Name; if (!DbHelper.UserIsAdmin(_repository.UserName)) { return(View("Unauthorize")); } var users = DbHelper.GetAllUsers(_repository.UserName); var roles = DbHelper.GetAllRoles(_repository.UserName); if (users == null || roles == null) { return(View(new UserRolesViewModel())); } var model = new UserRolesViewModel { Users = users.Values, Roles = roles.Values }; //if (Request.Form["submitbutton"] == null || Request.Form["submitbutton"] != "Сохранить") // return View("UserRoles", model); var result = false; if (users.Any() && roles.Any()) { var newChecked = Request.Form.AllKeys; int index = newChecked.Length; Array.Resize <string>(ref newChecked, index + 1); newChecked[index] = $"chk_{DbHelper.GetUserId(_repository.UserName, _repository.UserName)}_{Constants.IdRoleAdmin}"; var toDelete = new List <UserRole>(); var toAdd = new List <UserRole>(); foreach (var user in users.Values) { foreach (var role in roles.Values) { var inNewChecked = newChecked.Any(k => k == $"chk_{user.Id}_{role.Id}"); var inOldChecked = user.Roles.Any(r => r.Id == role.Id); if (inNewChecked && inOldChecked) { continue; } if (inNewChecked) { toAdd.Add(new UserRole { IdUser = user.Id, IdRole = role.Id }); } else if (inOldChecked) { toDelete.Add(new UserRole { IdUser = user.Id, IdRole = role.Id }); } } } result = DbHelper.UpdateUserRoles(toAdd, toDelete, _repository.UserName); } if (result) { users = DbHelper.GetAllUsers(_repository.UserName); roles = DbHelper.GetAllRoles(_repository.UserName); if (users == null || roles == null) { return(View(new UserRolesViewModel())); } var modelNew = new UserRolesViewModel { Users = users.Values, Roles = roles.Values }; return(View("UserRoles", modelNew)); } else { ModelState.AddModelError("Db", "Роли пользователей не был изменены! Повторите попытку или свяжитесь с администратором."); return(View("UserRoles", model)); } }
public ActionResult ChangeRoles(int id, UserRolesViewModel model) { userService.ChangeRoles(id, model.SelectedRoles.ToArray()); return(RedirectToAction("List")); }
public ResponseModel <bool> Roles_Update([FromBody] UserRolesViewModel model) { return(_aspNetRolesServices.Roles_Update(model)); }
public ActionResult Users() { UserRolesViewModel urvm = _service.GetAllUsersAndRoles(); return(this.View(urvm)); }
public async Task <bool> roleAssignToUser([FromBody] UserRolesViewModel userRolesView) { var result = await userRoleService.AddUserRoles(userRolesView); return(result.Succeeded); }
public async Task <bool> DeleteUserRoles([FromBody] UserRolesViewModel userViewModel) { var result = await userRoleService.DeleteUserRoles(userViewModel); return(result.Succeeded); }
public async Task <IActionResult> Post([FromBody] UserRolesViewModel item) { var response = await _documentClient.CreateDocumentAsync(UriFactory.CreateDocumentCollectionUri(databaseId, collectionId), item); return(Ok()); }
public IViewComponentResult Invoke(UserRolesViewModel vm) { return(View(vm)); }