using Easy.DDD.Application; using Easy.Result; using IdentityServer.DDD.Contracts.Inputs; using IdentityServer.DDD.Shared.IServices; namespace IdentityServer.DDD.Application; public class PermissionAppService : ApiService { private IPermissionGrantManager PermissionGrantManager { get; } public PermissionAppService(IPermissionGrantManager permissionGrantManager) { PermissionGrantManager = permissionGrantManager; } public async Task UpdateAsync(UpdatePermissionsInput input) { foreach (var permission in input.Permissions) { await PermissionGrantManager.SetAsync(permission.PermissionName, input.ProviderName, input.ProviderKey, permission.IsGranted); } return ApiResult.Success(); } }