//加载该角色的权限树 public ActionResult LoadRightForThisRole(int id) { var model = roleInfoMan.GetEntity(id); if (model == null) { return(Json(new { code = "500", msg = "该角色不存在" })); } var list = model.SysRoleRights.Select( c => c.RightId ).ToList(); var l = new SysRightInfoMan().GetEntityList(c => c.DataState != DataStateEnum.除 && c.IsPublic == false); StringBuilder sb = new StringBuilder(); sb.Append("["); foreach (var r in l) { sb.Append(string.Format("{{ \"Id\": \"{0}\",\"checked\":\"{1}\",\"name\": \"{2}\",\"ParentId\": \"{3}\"}},", r.Id, list.Contains(r.Id), r.RightName, r.ParentId)); } var tree = sb.ToString(); tree = tree.Substring(0, tree.Length - 1); tree += "]"; ViewBag.TreeData = tree; ViewBag.Id = id; return(View()); }
public ActionResult MenuList(int mid = 0) { var model = new SysRightInfoMan().GetEntity(mid); if (mid > 0) { List <SysRightInfo> list = Startup.GetUserRightInfoList(false).FindAll(o => o.RightType == 1 && o.ParentId == mid && o.DataState != DataStateEnum.除); if (list.Count > 0) { ViewBag.Name = model.RightName; return(View(list)); } } ViewBag.Name = model.RightName; return(View()); }
/// <summary> /// 获得当前登录用户的权限列表集合 /// </summary> /// <param name="reset">是否重置</param> /// <returns>用户权限集合</returns> ///Author:fredjiang ///Created:2015-10-29 public static List <SysRightInfo> GetUserRightInfoList(bool reset) { List <SysRightInfo> list = new List <SysRightInfo>(); SysUserInfo ui = GetUserInfo(); string key = "current_user_right_list"; if (ui != null) { if (HttpContext.Current.Session[key] == null || reset) { SysRightInfoMan siMan = new SysRightInfoMan(); list = siMan.GetListByUser(ui).ToList(); if (list.Count > 0) { HttpContext.Current.Session[key] = list; } } else { list = HttpContext.Current.Session[key] as List <SysRightInfo>; } } return(list); }