Пример #1
0
        public IHttpActionResult GetRole(string id)
        {
            var role = RoleManager.FindById(id);

            if (role == null)
            {
                return(BadRequest("Role not found."));
            }
            var model = new RoleEdit
            {
                Id       = role.Id,
                RoleName = role.Name,
                Users    = new List <string>()
            };
            var allUsers = new List <ApplicationUser>(UserManager.Users);

            foreach (var user in allUsers)
            {
                if (UserManager.IsInRole(user.Id, role.Name))
                {
                    model.Users.Add(user.UserName);
                }
            }
            return(Ok(model));
        }
 public ActionResult Add(RoleEdit roleEdit)
 {
     if (ModelState.IsValid)
     {
         Role role = Mapper.Map <Role>(roleEdit);
         //role.IsDelete = 0;
         RoleServices.AddEntity(role);
         return(Json(new Result <int>
         {
             State = 1,
             Message = "添加成功",
             Data = role.ID
         }));
     }
     else
     {
         IEnumerable <object> errors = ModelStateToJson();
         return(Json(new Result <object>
         {
             State = 0,
             Message = "错误",
             Data = errors
         }));
     }
 }
Пример #3
0
 public ActionResult Create(RoleEdit role)
 {
     try
     {
         RoleEditManager.SaveRoleEdit(role);
         return(RedirectToAction("Index"));
     }
     catch (Csla.DataPortalException ex)
     {
         if (ex.BusinessException != null)
         {
             ModelState.AddModelError("", ex.BusinessException.Message);
         }
         else
         {
             ModelState.AddModelError("", ex.Message);
         }
     }
     catch (Exception ex)
     {
         ModelState.AddModelError("", ex.Message);
     }
     ViewData.Model = role;
     return(View());
 }
Пример #4
0
        public PartialViewResult EditRole(int roleID)
        {
            IEnumerable <Department> dpts = db.Department.ToList();
            List <SelectListItem>    sli  = new List <SelectListItem>();

            foreach (Department dpt in dpts)
            {
                sli.Add(new SelectListItem {
                    Value = dpt.departmentID.ToString(), Text = dpt.departmentName
                });
            }

            IEnumerable <uRoles>  urss  = db.uRoles.ToList();
            List <SelectListItem> ursli = new List <SelectListItem>();

            foreach (uRoles urs in urss)
            {
                ursli.Add(new SelectListItem {
                    Value = urs.uRoleID.ToString(), Text = urs.uRoleName
                });
            }

            uRoles uRole = db.uRoles.Find(roleID);

            RoleEdit roleEdit = new RoleEdit
            {
                departments = sli,
                uRoles      = uRole,
                roleID      = roleID,
                supervisors = ursli
            };

            return(PartialView(roleEdit));
        }
Пример #5
0
        public ActionResult Edit(RoleEdit roleEdit)
        {
            Role role = RoleServices
                        .LoadFirst(r => r.ID == roleEdit.ID.Value);

            if (role == null)
            {
                return(NotFound(new Result
                {
                    State = 0,
                    Message = "修改的角色不存在"
                }));
            }
            role = Mapper.Map(roleEdit, role);
            if (RoleServices.EditEntity(role))
            {
                return(Ok(new Result
                {
                    State = 1,
                    Message = "修改成功"
                }));
            }
            else
            {
                return(BadRequest(new Result
                {
                    State = 1,
                    Message = "修改失败"
                }));
            }
        }
Пример #6
0
 /// <summary>
 /// New role click handler.
 /// </summary>
 private void btnNewRole_Click(object sender, EventArgs e)
 {
     RoleID = RoleEdit.ItemID = Role.ItemID = 0;
     RoleEdit.ReloadData(true);
     SelectedControl = "newrole";
     DisplayControls(SelectedControl);
 }
Пример #7
0
        public async Task <IActionResult> EditRoles(string userName, RoleEdit roles)
        {
            var user = await userManager.FindByNameAsync(userName);

            var userRoles = await userManager.GetRolesAsync(user);

            var selectedRoles = roles.RolesNames;

            selectedRoles = selectedRoles ?? new string[] { };

            var result = await userManager.AddToRolesAsync(user, selectedRoles.Except(userRoles));

            if (!result.Succeeded)
            {
                return(BadRequest("Failed to add new roles"));
            }


            result = await userManager.RemoveFromRolesAsync(user, userRoles.Except(selectedRoles));

            if (!result.Succeeded)
            {
                return(BadRequest("Failed to remove user roles"));
            }

            return(Ok(await userManager.GetRolesAsync(user)));
        }
        public async Task Get()
        {
            var role = new RoleEdit()
            {
                Id            = Guid.NewGuid(),
                Name          = "role_1",
                Description   = "Role 1",
                ApplicationId = Guid.NewGuid(),
                UseCaseIds    = new List <string>()
                {
                    "uc1"
                }
            };

            var service = new Mock <IRoleService>();

            service.Setup(c => c.GetRole(It.Is <Guid>(m => m == role.Id.Value)))
            .ReturnsAsync(role);

            var controller = new RolesController(service.Object);

            var result = await controller.Get(role.Id.Value);

            var okResult    = Assert.IsType <OkObjectResult>(result);
            var returnValue = Assert.IsType <RoleEdit>(okResult.Value);

            Assert.Same(role, returnValue);
        }
Пример #9
0
        public ActionResult Edit(Guid id, string returnUrl)
        {
            var svc   = CreateRoleService();
            var model = new RoleEdit(svc.GetRoleById(id), returnUrl);

            return(View(model));
        }
Пример #10
0
        public async Task <OperationResult> UpdateRolesAsync(string userName, RoleEdit roleEdit)
        {
            var result = new OperationResult();

            try
            {
                var user = await _userManager.FindByNameAsync(userName);

                if (user == null)
                {
                    result.Message = "User can not be found!";
                    return(result);
                }

                var currentRoles = await _userManager.GetRolesAsync(user);

                var newRoles     = roleEdit.Roles.Except(currentRoles);
                var deletedRoles = currentRoles.Except(roleEdit.Roles);

                await _userManager.AddToRolesAsync(user, newRoles);

                await _userManager.RemoveFromRolesAsync(user, deletedRoles);

                result.IsSuccessful = true;
            }
            catch (Exception ex)
            {
                result.Message = ex.Message;
                _logger.LogError(ex.Message);
            }

            return(result);
        }
Пример #11
0
 public ActionResult Edit(int id, RoleEdit role)
 {
     LoadProperty(role, RoleEdit.IdProperty, id);
     try
     {
         RoleEditManager.SaveRoleEdit(role);
         return(RedirectToAction("Index"));
     }
     catch (Csla.DataPortalException ex)
     {
         if (ex.BusinessException != null)
         {
             ModelState.AddModelError("", ex.BusinessException.Message);
         }
         else
         {
             ModelState.AddModelError("", ex.Message);
         }
     }
     catch (Exception ex)
     {
         ModelState.AddModelError("", ex.Message);
     }
     // failure condition
     ViewData.Model = role;
     return(View());
 }
Пример #12
0
 public ActionResult Delete(int id, RoleEdit role)
 {
     try
     {
         var list = RoleEditList.GetRoles();
         var item = list.GetRoleById(id);
         list.Remove(item);
         list.Save();
         return(RedirectToAction("Index"));
     }
     catch (Csla.DataPortalException ex)
     {
         if (ex.BusinessException != null)
         {
             ModelState.AddModelError("", ex.BusinessException.Message);
         }
         else
         {
             ModelState.AddModelError("", ex.Message);
         }
     }
     catch (Exception ex)
     {
         ModelState.AddModelError("", ex.Message);
     }
     // failure condition
     LoadProperty(role, RoleEdit.IdProperty, id);
     ViewData.Model = role;
     return(View());
 }
Пример #13
0
        public async Task <IActionResult> EditRoles(string userName, RoleEdit roleEdit)
        {
            var user = await this.userManager.FindByNameAsync(userName);

            var userRoles = await this.userManager.GetRolesAsync(user);

            var selectedRoles = roleEdit.RoleNames;

            // Esto equivale a selectedRoles = selectedRoles != null ? selectedRoles : new string[] {};
            selectedRoles = selectedRoles ?? new string[] {};
            var result = await this.userManager.AddToRolesAsync(user, selectedRoles.Except(userRoles));


            if (!result.Succeeded)
            {
                return(BadRequest("Failed To Add to roles"));
            }

            result = await this.userManager.RemoveFromRolesAsync(user, userRoles.Except(selectedRoles));

            if (!result.Succeeded)
            {
                return(BadRequest("Failed To Remove the roles"));
            }

            return(Ok(await this.userManager.GetRolesAsync(user)));
        }
Пример #14
0
        public async Task <IActionResult> EditRoles(string userName, RoleEdit roleEdit)
        {
            var user = await _userManager.FindByNameAsync(userName);

            if (user == null)
            {
                return(BadRequest($"No user with username \"{userName}\"."));
            }

            var userRoles = await _userManager.GetRolesAsync(user);

            var selectedRoles = roleEdit.RoleNames;

            selectedRoles = selectedRoles ?? new string[] {};
            var result = await _userManager.AddToRolesAsync(user, selectedRoles.Except(userRoles));

            if (!result.Succeeded)
            {
                return(BadRequest("Failed to add to roles"));
            }

            result = await _userManager.RemoveFromRolesAsync(user, userRoles.Except(selectedRoles));

            if (!result.Succeeded)
            {
                return(BadRequest("Failed to remove the roles"));
            }

            return(Ok(await _userManager.GetRolesAsync(user)));
        }
Пример #15
0
    /// <summary>
    /// Reloads and displays appropriate controls.
    /// </summary>
    public override void ReloadData(bool forceReload)
    {
        RoleEdit.ItemID      = RoleUsers.RoleID = ItemID;
        RoleEdit.SiteID      = SiteID;
        RoleEdit.DisplayMode = DisplayMode;
        RoleEdit.ReloadData(forceReload);

        RoleEdit.Visible  = false;
        RoleUsers.Visible = false;

        tabMenu.SelectedTab = SelectedTab;

        switch (SelectedTab)
        {
        case 0:
        default:
            RoleEdit.Visible = true;
            break;

        case 1:
            RoleUsers.Visible = true;
            RoleUsers.ReloadData();
            break;
        }
    }
Пример #16
0
        public ActionResult EditRole(string id)
        {
            RoleEdit role = null;

            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri("https://localhost:44320/api/");
                string token = DeserializeToken();
                client.DefaultRequestHeaders.Clear();
                client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);
                var responseTask = client.GetAsync("Admin/GetRoleById?id=" + id);
                responseTask.Wait();

                var result = responseTask.Result;
                if (result.IsSuccessStatusCode)
                {
                    var readTask = result.Content.ReadAsAsync <RoleEdit>();
                    readTask.Wait();
                    role = readTask.Result;
                }
                else
                {
                    ModelState.AddModelError(string.Empty, result.Content.ReadAsStringAsync().Result);
                }
            }

            return(View(role));
        }
Пример #17
0
        public void RoleEdit_Template_Test()
        {
            var template = new RoleEdit(new SmartAppInfo {
                Id = ApplicationId
            });
            var output = template.TransformText();

            Assert.NotNull(output);
            Assert.NotEmpty(output);
            Assert.Contains($"@model {ApplicationId}.Backend.Models.RoleViewModel", output);
        }
Пример #18
0
        public async Task <IActionResult> Insert([FromBody] RoleEdit role)
        {
            var result = await RoleService.InsertRole(role);

            if (!result.Success)
            {
                return(BadRequest(result.ValidationFailures));
            }

            return(Ok(result));
        }
Пример #19
0
 public ActionResult Update(RoleEdit role)
 {
     if (ModelState.IsValid)
     {
         Irole.Update(role.Id, role.Name, role.DesId);
         return(Json("ok"));
     }
     else
     {
         return(Json("no"));
     }
 }
Пример #20
0
        public async Task <IActionResult> Update(Guid roleId, [FromBody] RoleEdit role)
        {
            role.Id = roleId;

            var result = await RoleService.UpdateRole(role);

            if (!result.Success)
            {
                return(BadRequest(result.ValidationFailures));
            }

            return(Ok(result));
        }
Пример #21
0
        public async Task <IActionResult> EditRoles(string userName, RoleEdit roleEdit)
        {
            var result = await _userRepository.UpdateRolesAsync(userName, roleEdit);

            if (result.IsSuccessful)
            {
                return(Ok());
            }
            else
            {
                return(BadRequest(result.Message));
            }
        }
Пример #22
0
        public ActionResult Add(RoleEdit roleEdit)
        {
            Role role = Mapper.Map <Role>(roleEdit);

            //role.IsDelete = 0;
            RoleServices.AddEntity(role);
            return(Ok(new Result <int>
            {
                State = 1,
                Message = "添加成功",
                Data = role.ID
            }));
        }
Пример #23
0
        private RoleEntity MapModelToEntity(RoleEdit model, RoleEntity entity = null)
        {
            if (entity == null)
            {
                entity = new RoleEntity();
            }

            entity.Name           = model.Name;
            entity.NormalizedName = model.Name.ToUpper();
            entity.Description    = model.Description;
            entity.ApplicationId  = model.ApplicationId.Value;

            return(entity);
        }
Пример #24
0
        public ActionResult Edit(RoleEdit model)
        {
            var svc = CreateRoleService();

            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            if (svc.EditRole(model))
            {
                TempData["SaveResult"] = "The Role was successfully updated.";
                return(Redirect(model.ReturnUrl));
            }
            return(View(model));
        }
Пример #25
0
    /// <summary>
    /// Displays appropriate controls.
    /// </summary>
    public void DisplayControls(string control)
    {
        // Hide all controls first and set all IDs
        Role.Visible                = false;
        RoleList.Visible            = false;
        RoleEdit.Visible            = false;
        headerLinks.Visible         = false;
        pnlRolesBreadcrumbs.Visible = false;

        // Display edit control
        if (RoleID > 0)
        {
            Role.Visible = true;
            pnlRolesBreadcrumbs.Visible = true;
            RoleInfo role = RoleInfoProvider.GetRoleInfo(RoleID);
            if (role != null)
            {
                lblRole.ResourceString = HTMLHelper.HTMLEncode(role.DisplayName);
            }

            Role.SiteID = SiteID;
            Role.ItemID = RoleID;
            Role.ReloadData(false);
        }
        else
        {
            switch (control)
            {
            // Display list control
            case "general":
            default:
                RoleList.Visible    = true;
                headerLinks.Visible = true;
                RoleList.SiteID     = SiteID;
                RoleEdit.SiteID     = SiteID;
                RoleEdit.ReloadData(false);
                break;

            // Display new control
            case "newrole":
                RoleEdit.Visible            = true;
                pnlRolesBreadcrumbs.Visible = true;
                lblRole.ResourceString      = "Administration-Role_New.Title";
                break;
            }
        }
    }
Пример #26
0
        //GET /admin/roles/editrole
        public async Task <IActionResult> EditRole(string id)
        {
            IdentityRole role = await roleManager.FindByIdAsync(id);

            if (role == null)
            {
                TempData["Error"] = $"Role with Id: {id} cannot be found";
                return(NotFound());
            }

            var model = new RoleEdit
            {
                Id       = role.Id,
                RoleName = role.Name
            };

            return(View(model));
        }
Пример #27
0
        public IHttpActionResult UpdateRole(RoleEdit model)
        {
            var role = RoleManager.FindById(model.Id);

            if (role == null)
            {
                return(BadRequest($"Role Id {model.Id} not found."));
            }

            role.Name = model.RoleName;
            IdentityResult result = RoleManager.Update(role);

            if (result.Succeeded)
            {
                return(Ok("Role successfully updated."));
            }
            return(InternalServerError());
        }
Пример #28
0
        public async Task <IActionResult> Edit(RoleEdit roleEdit)
        {
            IdentityResult result;

            foreach (string userId in roleEdit.AddIds ?? new string[] { })
            {
                AppUser user = await _userManager.FindByIdAsync(userId);

                result = await _userManager.AddToRoleAsync(user, roleEdit.RoleName);
            }
            foreach (string userId in roleEdit.DeleteIds ?? new string[] { })
            {
                AppUser user = await _userManager.FindByIdAsync(userId);

                result = await _userManager.RemoveFromRoleAsync(user, roleEdit.RoleName);
            }
            return(Redirect(Request.Headers["Referer"].ToString()));
        }
 public ActionResult Edit(RoleEdit roleEdit)
 {
     if (ModelState.IsValid)
     {
         Role role = RoleServices
                     .LoadFirst(r => r.ID == roleEdit.ID.Value);
         if (role == null)
         {
             return(Json(new Result
             {
                 State = 0,
                 Message = "修改的角色不存在"
             }));
         }
         role = Mapper.Map(roleEdit, role);
         if (RoleServices.EditEntity(role))
         {
             return(Json(new Result
             {
                 State = 1,
                 Message = "修改成功"
             }));
         }
         else
         {
             return(Json(new Result
             {
                 State = 1,
                 Message = "修改失败"
             }));
         }
     }
     else
     {
         IEnumerable <object> errors = ModelStateToJson();
         return(Json(new Result <object>
         {
             State = 0,
             Message = "错误",
             Data = errors
         }));
     }
 }
Пример #30
0
    /// <summary>
    /// Displays appropriate controls.
    /// </summary>
    public void DisplayControls(string control)
    {
        // Hide all controls first and set all IDs
        Role.Visible                = false;
        RoleList.Visible            = false;
        RoleEdit.Visible            = false;
        headerLinks.Visible         = false;
        pnlRolesBreadcrumbs.Visible = false;

        // Display edit control
        if (RoleID > 0)
        {
            Role.Visible = true;
            pnlRolesBreadcrumbs.Visible = true;
            InitializeBreadcrumbs();

            Role.SiteID = SiteID;
            Role.ItemID = RoleID;
            Role.ReloadData(false);
        }
        else
        {
            switch (control)
            {
            // Display list control
            case "general":
            default:
                RoleList.Visible    = true;
                headerLinks.Visible = true;
                RoleList.SiteID     = SiteID;
                RoleEdit.SiteID     = SiteID;
                RoleEdit.ReloadData(false);
                break;

            // Display new control
            case "newrole":
                RoleEdit.Visible            = true;
                pnlRolesBreadcrumbs.Visible = true;
                InitializeBreadcrumbs();
                break;
            }
        }
    }
Пример #31
0
 public ActionResult Create(RoleEdit role)
 {
   try
   {
     RoleEditManager.SaveRoleEdit(role);
     return RedirectToAction("Index");
   }
   catch (Csla.DataPortalException ex)
   {
     if (ex.BusinessException != null)
       ModelState.AddModelError("", ex.BusinessException.Message);
     else
       ModelState.AddModelError("", ex.Message);
   }
   catch (Exception ex)
   {
     ModelState.AddModelError("", ex.Message);
   }
   ViewData.Model = role;
   return View();
 }
Пример #32
0
 public ActionResult Delete(int id, RoleEdit role)
 {
   try
   {
     var list = RoleEditList.GetRoles();
     var item = list.GetRoleById(id);
     list.Remove(item);
     list.Save();
     return RedirectToAction("Index");
   }
   catch (Csla.DataPortalException ex)
   {
     if (ex.BusinessException != null)
       ModelState.AddModelError("", ex.BusinessException.Message);
     else
       ModelState.AddModelError("", ex.Message);
   }
   catch (Exception ex)
   {
     ModelState.AddModelError("", ex.Message);
   }
   // failure condition
   LoadProperty(role, RoleEdit.IdProperty, id);
   ViewData.Model = role;
   return View();
 }
Пример #33
0
 public ActionResult Edit(int id, RoleEdit role)
 {
   LoadProperty(role, RoleEdit.IdProperty, id);
   try
   {
     RoleEditManager.SaveRoleEdit(role);
     return RedirectToAction("Index");
   }
   catch (Csla.DataPortalException ex)
   {
     if (ex.BusinessException != null)
       ModelState.AddModelError("", ex.BusinessException.Message);
     else
       ModelState.AddModelError("", ex.Message);
   }
   catch (Exception ex)
   {
     ModelState.AddModelError("", ex.Message);
   }
   // failure condition
   ViewData.Model = role;
   return View();
 }
Пример #34
0
 private void EditSB_Click(object sender, EventArgs e)
 {
     RoleEdit rn = new RoleEdit(Convert.ToInt32(RolesGV.SelectedRows[0].Cells[0].FormattedValue));
     rn.ShowDialog();
     FillGrid();
 }