protected virtual async Task <AbpUserAuthConfigDto> GetUserAuthConfig()
        {
            var config                 = new AbpUserAuthConfigDto();
            var allPermissionNames     = PermissionManager.GetAllPermissions(false).Select(p => p.Name).ToList();
            var grantedPermissionNames = new List <string>();

            if (AbpSession.UserId.HasValue)
            {
                // foreach (var permissionName in allPermissionNames)
                // {
                //     if (await PermissionChecker.IsGrantedAsync(permissionName))
                //     {
                //         grantedPermissionNames.Add(permissionName);
                //     }
                // }
                var userGrantedPermissions = await PermissionChecker.GetGrantedPermissionAsync(AbpSession.UserId.Value);

                grantedPermissionNames = allPermissionNames.Where(x => userGrantedPermissions.Contains(x)).ToList();
            }

            config.AllPermissions     = allPermissionNames.ToDictionary(permissionName => permissionName, permissionName => "true");
            config.GrantedPermissions = grantedPermissionNames.ToDictionary(permissionName => permissionName, permissionName => "true");

            return(config);
        }
        protected override Task <AbpUserAuthConfigDto> GetUserAuthConfig()
        {
            var config = new AbpUserAuthConfigDto();

            var allPermissionNames     = _permissionInfoManager.GetAll().Select(p => p.Code).ToList();
            var grantedPermissionNames = new List <string>();
            var userId = Session.GetUserId();

            if (!userId.IsNullOrEmpty())
            {
                var pers = _userManager.GetAllPermissions(userId).Select(u => u.Code).ToList();
                if (pers.Count > 0)
                {
                    grantedPermissionNames.AddRange(pers);
                }
            }

            config.AllPermissions     = allPermissionNames.ToDictionary(permissionName => permissionName, permissionName => "true");
            config.GrantedPermissions = grantedPermissionNames.ToDictionary(permissionName => permissionName, permissionName => "true");

            return(Task.FromResult(config));
        }
Esempio n. 3
0
        private async Task <AbpUserAuthConfigDto> GetUserAuthConfig()
        {
            var config = new AbpUserAuthConfigDto();

            var allPermissionNames     = _permissionManager.GetAllPermissions(false).Select(p => p.Name).ToList();
            var grantedPermissionNames = new List <string>();

            if (_abpSession.UserId.HasValue)
            {
                foreach (var permissionName in allPermissionNames)
                {
                    if (await _permissionChecker.IsGrantedAsync(permissionName))
                    {
                        grantedPermissionNames.Add(permissionName);
                    }
                }
            }

            config.AllPermissions     = allPermissionNames.ToDictionary(permissionName => permissionName, permissionName => "true");
            config.GrantedPermissions = grantedPermissionNames.ToDictionary(permissionName => permissionName, permissionName => "true");

            return(config);
        }