/// <summary> /// Default constructor. /// </summary> public AccessEditModel() { Access = new SysAccess() ; List<SysGroup> groups = SysGroup.GetStructure().Flatten() ; groups.Insert(0, new SysGroup() { Name = "" }) ; Groups = new SelectList(groups, "Id", "Name") ; }
public async Task <IActionResult> Permission(RolesModel model, SysRole role) { var arr = model.ArrID.Split(',').ToList(); int count = arr.Count; List <SysAccess> data = new List <SysAccess>(); for (int i = 0; i < count; i++) { var iview = arr[i].Split('|'); string cname = iview[0]; string aname = iview[1]; bool isTrue = iview[2] == "true"; SysAccess item = new SysAccess() { ControlName = cname, ActionName = aname, Activity = isTrue, RoleID = model.ID }; await _sysAccess.InsertItemAsync(item); } CacheExtends.ClearCache(AuthenticationExtends.CurrentUser.RoleID.ToString() + CacheExtends.CacheAccessDefault); return(View()); }
/// <summary> /// 获取用户信息(包括权限) /// </summary> /// <param name="userName">用户名</param> /// <returns></returns> public UserInfo GetFullUserInfo(string userName) { SysAccess sa = new SysAccess(); UserInfo ui = ua.GetUser(userName); return(ui); }
/// <summary> /// Gets the specified access model. /// </summary> /// <param name="id">The access id</param> /// <returns>The model</returns> public static AccessEditModel GetById(Guid id) { AccessEditModel m = new AccessEditModel(); m.Access = SysAccess.GetSingle(id); return(m); }
/// <summary> /// Gets all available data. /// </summary> /// <returns>The model</returns> public static AccessListModel Get() { AccessListModel m = new AccessListModel(); m.Access = SysAccess.Get(new Params() { OrderBy = "sysaccess_function" }); return(m); }
/// <summary> /// Checks if the current user has access to the function. /// </summary> /// <param name="p">The principal</param> /// <param name="function">The function to check</param> /// <returns>If the user has access</returns> public static bool HasAccess(this IPrincipal p, string function) { if (Piranha.Application.Current.UserProvider.IsAuthenticated) { Dictionary<string, SysAccess> access = SysAccess.GetAccessList() ; if (access.ContainsKey(function)) { SysGroup group = SysGroup.GetStructure().GetGroupById(p.GetProfile().GroupId) ; return group != null && (group.Id == access[function].GroupId || group.HasChild(access[function].GroupId)) ; } } return false ; }
/// <summary> /// Default constructor. /// </summary> public AccessEditModel() { Access = new SysAccess(); List <SysGroup> groups = SysGroup.GetStructure().Flatten(); groups.Insert(0, new SysGroup() { Name = "" }); Groups = new SelectList(groups, "Id", "Name"); }