protected void OnAddRole(object sender, EventArgs args)
        {
            if (ShowRoleType && (cbAddRole.SelectedIndex == 0 || cbAddRoleType.SelectedIndex == 0))
            {
                return;
            }
            if (!ShowRoleType && cbAddRole.SelectedIndex == 0)
            {
                return;
            }

            Role role = null;

            if (ShowRoleType)
            {
                if (cbAddRoleType.SelectedItem.Value == "view")
                {
                    role = new ViewRole();
                }
                else
                {
                    role = new EditRole();
                }
            }
            else
            {
                role = new ViewRole();
            }

            role.name = cbAddRole.SelectedItem.Value;
            roleList.Add(role);

            Bind();
        }
        /// <summary>
        /// 通过角色id获得角色
        /// </summary>
        /// <param name="iRoleID">角色id</param>
        /// <returns></returns>
        public static Role GetRole(int iRoleID)
        {
            ViewRole vwRole = new ViewRole();

            vwRole.BaseCondition = "a.ID='" + iRoleID + "'";
            return(vwRole.Count > 0 ? vwRole.GetItem(0) as Role : null);
        }
Beispiel #3
0
 public ActionResult Edit([Bind(Include = "Id,Name")] ViewRole role)
 {
     if (ModelState.IsValid)
     {
         var currentRole = _roleManager.Roles.FirstOrDefault(x => x.Id == role.Id);
         if (currentRole != null)
         {
             currentRole.Name = role.Name;
             var result = _roleManager.Update(currentRole);
             if (result.Succeeded)
             {
                 return(RedirectToAction("Index"));
             }
             else
             {
                 ModelState.AddModelError("", "Could not update the role!" + result.Errors.FirstOrDefault());
             }
         }
         else
         {
             ModelState.AddModelError("", "Role does not exist!");
         }
     }
     return(View());
 }
		protected void OnAddRole(object sender, EventArgs args)
		{
			if(ShowRoleType && (cbAddRole.SelectedIndex == 0 || cbAddRoleType.SelectedIndex == 0)) return;
			if(!ShowRoleType && cbAddRole.SelectedIndex == 0 ) return;

			Role role = null;
			if(ShowRoleType)
			{
				if(cbAddRoleType.SelectedItem.Value == "view")
				{
					role = new ViewRole();
				}
				else
				{
					role = new EditRole();
				}
			}
			else
			{
				role = new ViewRole();
			}

			role.name = cbAddRole.SelectedItem.Value;
			roleList.Add(role);

			Bind();
		}
        public ActionResult EditRole(ViewRole Role)
        {
            using (var context = new IdentityDbContext())
            {
                try
                {
                    var roleStore   = new RoleStore <IdentityRole>(context);
                    var roleManager = new RoleManager <IdentityRole>(roleStore);

                    var Data = new IdentityRole
                    {
                        Id   = Role.Id,
                        Name = Role.Name
                    };
                    roleManager.Update(Data);
                    context.SaveChanges();

                    return(RedirectToAction("ListRole", "Account"));
                }
                catch
                {
                    return(View());
                }
            }
        }
Beispiel #6
0
 public bool AddRole(ViewRole role)
 {
     return(Function(context =>
     {
         return Create(Mapper.Map <Role>(role));
     }));
 }
        /// <summary>
        /// 通过角色名称获得角色
        /// </summary>
        /// <param name="strName">角色名称</param>
        /// <returns></returns>
        public static Role GetRole(string strName)
        {
            ViewRole vwRole = new ViewRole();

            vwRole.BaseCondition = "a.Name='" + strName + "'";
            return(vwRole.Count > 0 ? vwRole.GetItem(0) as Role : null);
        }
Beispiel #8
0
 public bool UpdateRole(ViewRole role)
 {
     return(Function(context =>
     {
         return Update(Mapper.Map <Role>(role));
     }));
 }
    public async Task <IViewComponentResult> InvokeAsync(string executingViewPath, ViewRole viewRole)
    {
        if (viewRole != ViewRole.Display)
        {
            return(new NullViewComponentResult());
        }

        IEnumerable <string> viewSource = await GetViewSourceAsync(executingViewPath);

        return(View(viewSource));
    }
Beispiel #10
0
        public async Task OnGetAsync_GivenRoleIsNotInSystem_ExpectNotFoundResultReturned()
        {
            var roleQueries = new Mock <IRoleQueries>();

            roleQueries.Setup(x => x.GetDetailsOfRoleById(It.IsAny <Guid>()))
            .ReturnsAsync(() => Maybe <DetailedRoleModel> .Nothing);

            var page = new ViewRole(roleQueries.Object);

            var result = await page.OnGetAsync();

            Assert.IsType <NotFoundResult>(result);
        }
Beispiel #11
0
        public ActionResult AddRole(string id)
        {
            ViewRole model = new ViewRole();

            using (var db = new EFContext())
            {
                if (id.IsNotNull())
                {
                    var role = db.selrole.FirstOrDefault(x => x.ID == id);
                    model.ID           = role.ID;
                    model.Title        = role.Title;
                    model.Introduction = role.Introduction;
                    if (role.IsDefault == 1)
                    {
                        return(Redirect("RoleSet"));
                    }
                }

                var query = new List <ViewPemit>().AsQueryable();
                //查询网店所有者用户拥有的权限

                var selmanagerowner     = db.selmanager.FirstOrDefault(x => x.ShopID == ShopId && x.IsOwner == 1);
                var selmanagerroleowner = db.selmanager_role.FirstOrDefault(x => x.SelManagerID == ManagerId);
                var rolepemitidowner    = db.selrole_pemit.Where(x => x.SelRoleID == selmanagerroleowner.SelRoleID).Select(x => x.SelPemitID).ToList();
                //查询当前用户拥有的权限
                var selmanagerrole = db.selmanager_role.FirstOrDefault(x => x.SelManagerID == ManagerId);
                var rolepemitid    = db.selrole_pemit.Where(x => x.SelRoleID == selmanagerrole.SelRoleID).Select(x => x.SelPemitID).ToList();
                if (IsOwner == 1)
                {
                    query = db.selpemit.Where(x => rolepemitid.Contains(x.ID))
                            .Select(x => new ViewPemit()
                    {
                        ID = x.ID, Title = x.Title, ParentID = x.ParentID, IsDel = x.IsDel, ImgUrl = x.ImgUrl, PemitType = x.PemitType, Sort = x.Sort, Url = x.Url
                    });
                }
                else
                {
                    query = db.selpemit.Where(x => rolepemitid.Contains(x.ID)).Where(x => !rolepemitidowner.Contains(x.ID))
                            .Select(x => new ViewPemit()
                    {
                        ID = x.ID, Title = x.Title, ParentID = x.ParentID, IsDel = x.IsDel, ImgUrl = x.ImgUrl, PemitType = x.PemitType, Sort = x.Sort, Url = x.Url
                    });
                }


                model.ListPemit = query.ToList();
            }
            return(View(model));
        }
Beispiel #12
0
        /// <summary>
        /// 获取人的角色有四种方式:
        /// 1.通过User取角色
        /// 2.通过人所在的部门的职位取角色
        /// 3.通过部门取角色
        /// 4.通过职位取角色
        /// </summary>
        /// <param name="bIncludeDept">是否包含所在部门的角色</param>
        /// <returns></returns>
        public ViewBase GetRoles(bool bIncludeDept)
        {
            ViewBase vwRole       = new ViewRole();
            string   strCondition = "b.FK_UserID=" + base.ID.ToString();

            if (bIncludeDept)
            {
                //人所在部门职位的角色
                string strRole = this.GetRoleByDeptID();
                if (strRole.Length > 0)
                {
                    strCondition += " OR a.ID IN (" + strRole + ")";
                }
            }
            vwRole.BaseCondition = strCondition;
            return(vwRole);
        }
Beispiel #13
0
 public ActionResult Create([Bind(Include = "Name")] ViewRole role)
 {
     if (ModelState.IsValid)
     {
         var x = _roleManager.Create(new IdentityRole {
             Name = role.Name
         });
         if (x.Succeeded)
         {
             return(RedirectToAction("Index"));
         }
         else
         {
             ModelState.AddModelError("", "Could not create role! \n"
                                      + x.Errors.FirstOrDefault());
         }
     }
     return(View());
 }
Beispiel #14
0
        public async Task OnGetAsync_GivenRoleIsInSystem_ExpectDataToBeSetAndPageResultReturned()
        {
            var roleQueries = new Mock <IRoleQueries>();

            roleQueries.Setup(x => x.GetDetailsOfRoleById(It.IsAny <Guid>()))
            .ReturnsAsync(() => Maybe.From(new DetailedRoleModel(
                                               TestVariables.RoleId,
                                               "name",
                                               new List <Guid> {
                TestVariables.ResourceId
            })));

            var page = new ViewRole(roleQueries.Object);

            var result = await page.OnGetAsync();

            Assert.IsType <PageResult>(result);
            Assert.NotNull(page.Role);
            Assert.Equal("name", page.Name);
        }
        public ActionResult DeleteRole(ViewRole Role)
        {
            using (var context = new IdentityDbContext())
            {
                try
                {
                    var roleStore   = new RoleStore <IdentityRole>(context);
                    var roleManager = new RoleManager <IdentityRole>(roleStore);


                    var Data = context.Roles.Find(Role.Id);
                    context.Roles.Remove(Data);
                    context.SaveChanges();

                    return(RedirectToAction("ListRole", "Account"));
                }
                catch
                {
                    return(View());
                }
            }
        }
        /// <summary>
        /// 获得所有角色
        /// </summary>
        /// <returns></returns>
        public static ViewBase GetALLRole()
        {
            ViewRole vRole = new ViewRole(true);

            return(vRole);
        }
Beispiel #17
0
 public IActionResult GetAddRole(ViewRole role)
 {
     return(Ok(_roleService.AddRole(role)));
 }
Beispiel #18
0
        public JsonResult Destroy_roles([DataSourceRequest] DataSourceRequest request, ViewRole vrole)
        {
            new RoleService().DestoryRole(ref vrole);


            return(Json(new[] { vrole }.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet));
        }
Beispiel #19
0
 public IActionResult GetUpdateRole(ViewRole role)
 {
     return(Ok(_roleService.UpdateRole(role)));
 }
Beispiel #20
0
        public ActionResult SelRoleSave(ViewRole r)
        {
            var b      = new ViewBase();
            var pemits = Request["cbPemit"];

            List <selrole_pemit> role_nav = new List <selrole_pemit>();

            using (var db = new EFContext())
            {
                try
                {
                    if (r.ID.IsNull())
                    {
                        #region 添加
                        selrole entity = new selrole();
                        entity.ID              = WebTools.getGUID();
                        entity.CreateTime      = DateTime.Now;
                        entity.IsAvailable     = 1;
                        entity.ShopID          = ShopId;
                        entity.CreateManagerID = ManagerId;
                        entity.IsDefault       = 0;
                        entity.Title           = r.Title;
                        entity.Introduction    = r.Introduction;
                        db.selrole.Add(entity);

                        if (pemits.IsNotNull())
                        {
                            var str = pemits.Split(',');
                            for (int i = 0; i < str.Length; i++)
                            {
                                var pr = new selrole_pemit();
                                pr.SelPemitID = str[i];
                                pr.SelRoleID  = entity.ID;
                                pr.ID         = WebTools.getGUID();
                                db.selrole_pemit.Add(pr);
                            }
                        }
                        #endregion
                    }
                    else
                    {
                        #region 修改
                        var model = db.selrole.Find(r.ID);
                        if (model != null)
                        {
                            model.Title        = r.Title;
                            model.Introduction = r.Introduction;

                            var selrolepemitlist = db.selrole_pemit.Where(x => x.SelRoleID == r.ID);
                            if (selrolepemitlist.Count() > 0)
                            {
                                db.selrole_pemit.RemoveRange(selrolepemitlist);
                            }

                            if (pemits.IsNotNull())
                            {
                                var str = pemits.Split(',');
                                for (int i = 0; i < str.Length; i++)
                                {
                                    var pr = new selrole_pemit();
                                    pr.SelPemitID = str[i];
                                    pr.SelRoleID  = r.ID;
                                    pr.ID         = WebTools.getGUID();
                                    db.selrole_pemit.Add(pr);
                                }

                                //var str = pemits.Split(',');
                                //for (int i = 0; i < str.Length; i++)
                                //{
                                //    var pr = new selrole_pemit();
                                //    pr.SelPemitID = str[i];
                                //    pr.SelRoleID = entity.ID;
                                //    pr.ID = WebTools.getGUID();
                                //    role_nav.Add(pr);
                                //}
                                //var oldNav = db.selrole_pemit.Where(p => p.SelRoleID == entity.ID);
                                ////先删除原来多余的
                                //foreach (var item in oldNav)
                                //{
                                //    var exsit = role_nav.Any(a => a.SelPemitID == item.SelPemitID);
                                //    if (exsit == false)
                                //    {
                                //        db.selrole_pemit.Remove(item);
                                //    }
                                //}
                                ////再添加原来没有的
                                //foreach (var item in role_nav)
                                //{
                                //    var exsit = oldNav.FirstOrDefault(a => a.SelPemitID == item.SelPemitID);
                                //    if (exsit == null)
                                //    {
                                //        db.selrole_pemit.Add(item);
                                //    }
                                //}
                            }
                        }
                        #endregion
                    }
                    db.SaveChanges();
                    b.IsSuccess = true;
                }
                catch (Exception e)
                {
                    LogHelper.Error("添加角色:" + WebTools.getFinalException(e));
                    b.Message = "添加角色失败";
                }
                if (b.IsSuccess)
                {
                    b.Message = "操作成功";
                    b.Url     = "/Permission/RoleSet"; //成功后跳转
                }
            }
            return(Json(b));
        }