CrewRanking.cs 669 B

12345678910111213141516171819202122
  1. using Web.Api.Common;
  2. using MediatR;
  3. namespace Web.Api.Endpoints.Widget;
  4. /// <summary>크루 리더보드 (OBS 위젯용, 인증 불필요)</summary>
  5. internal sealed class CrewRanking : IEndpoint
  6. {
  7. public void MapEndpoint(IEndpointRouteBuilder app)
  8. {
  9. app.MapGet("api/widget/crew/ranking/{crewSessionID}", async (
  10. int crewSessionID,
  11. ISender sender,
  12. CancellationToken ct
  13. ) => {
  14. var data = await sender.Send(new Application.Features.Api.Crew.GetCrewRanking.Query(crewSessionID), ct);
  15. return ApiResponse.Ok(data);
  16. })
  17. .WithTags("Widget")
  18. .AllowAnonymous();
  19. }
  20. }