Example #1
0
        public IEnumerable <PermissionViewModel> GetPermissions(int?userRoles)
        {
            var rsp    = new ApiResponse <List <PermissionViewModel> >();
            var _perms = ((Permission[])Enum.GetValues(typeof(Permission)));

            var perms = _perms.Where(p => !userRoles.HasValue || p == (Permission)userRoles)
                        .Select(p => new PermissionViewModel
            {
                Id          = Convert.ToInt16(p),
                Name        = p.ToString(),
                Category    = PermissionHelper.GetPermissionCategory(p),
                Description = PermissionHelper.GetPermissionDescription(p)
            });

            return(perms);
        }
Example #2
0
        public async Task <(List <ValidationResult>, IEnumerable <PermissionViewModel>)> GetUserPermissions(string userId)
        {
            var user = await _userManager.FindByIdAsync(userId);

            if (user == null)
            {
                results.Add(new ValidationResult("User not found"));
                return(results, Enumerable.Empty <PermissionViewModel>());
            }

            var _perms = await _userManager.GetClaimsAsync(user);

            var perms = _perms.Select(p => new PermissionViewModel
            {
                Id          = Convert.ToInt32(p.Value),
                Name        = p.Type,
                Category    = PermissionHelper.GetPermissionCategory((Permission)Convert.ToInt32(p.Value)),
                Description = PermissionHelper.GetPermissionDescription((Permission)Convert.ToInt32(p.Value))
            });

            return(results, perms);
        }