Files
2026-08-19 23:25:08 +07:00

18 lines
571 B
C#

using AutoMapper;
using MediatR;
using mws.backend.dotnet.application.Common;
namespace mws.backend.dotnet.application.Permissions;
public record GetRoleQuery(Guid Id) : IRequest<RoleDto>;
public class GetRoleHandler(IUnitOfWork uow, IMapper mapper) : IRequestHandler<GetRoleQuery, RoleDto>
{
public async Task<RoleDto> Handle(GetRoleQuery query, CancellationToken ct)
{
var role = await uow.Roles.GetByIdWithPermissionsAsync(query.Id, ct)
?? throw new NotFoundException("Role not found");
return mapper.Map<RoleDto>(role);
}
}