예제 #1
0
        public ActionResult Roles(string userId)
        {
            var user      = this.accountService.Get(a => a.SystemUserId == userId);
            var userRoles = accountService.GetUserRoles(user.SystemUserId);
            var model     = new AccountRolesModel
            {
                SystemUserId = user.SystemUserId,
                UserName     = user.UserName,
                Roles        = userRoles == null ? null : userRoles.Select(x => x.SystemRoleId).ToArray()
            };

            ViewBag.UserRoles = userRoles;
            var allRoles = roleService.PageList(x => true, 1, 1000).Items;

            //待选角色(未选中状态)

            if (userRoles != null)
            {
                var otherRoles = allRoles.Where(r => !userRoles.Any(ur => ur.SystemRoleId == r.SystemRoleId)).ToList();
                ViewBag.OtherRoles = otherRoles;
            }
            else
            {
                ViewBag.OtherRoles = allRoles;
            }

            return(View(model));
        }
        public IActionResult LRAssignRole([FromQuery(Name = "uid")] String uid, [FromBody] AccountRolesModel roles)
        {
            var apiresponse = new RoleApi().AssignRolesByUid(roles, uid);

            if (apiresponse.RestException != null)
            {
                return(StatusCode(400, Json(apiresponse.RestException)));
            }
            return(Json(apiresponse.Response));
        }
예제 #3
0
 public ActionResult RolesForAjax(AccountRolesModel model)
 {
     if (ModelState.IsValid)
     {
         return(Json(accountService.UpdateUserRoles(model.SystemUserId, model.Roles)));
     }
     else
     {
         return(Json(new ServiceResult(GetModelStateMessage()).IsFailed()));
     }
 }