public async Task <bool> Handle(RoleAccessToMenu request, CancellationToken cancellationToken) { await _genericRoleToResourceHandler.Handle(request.Model, cancellationToken); if (request.AssignRecursive) { var page = await _context.MenuResources.AsNoTracking().Where(x => x.Id == request.Model.ResourceId).Select(x => x.PageId).SingleOrDefaultAsync(); if (page is not null && page != Guid.Empty) { await _mediator.Send(request : new RoleAccessToPage(new AssignRoleToResourceDto(RoleName: request.Model.RoleName, ResourceId: page.Value, Permission: request.Model.Permission), AssignRecursive: false), cancellationToken : cancellationToken); } } return(true); }
public async Task <bool> Handle(RoleAccessToApi request, CancellationToken cancellationToken) => await _genericRoleToResourceHandler.Handle(request.Model, cancellationToken);