| 1234567891011121314151617181920212223242526272829 |
- using Web.Api.Common;
- using Application.Abstractions.Messaging;
- namespace Web.Api.Endpoints.Member;
- /// <summary>여러 회원의 장착 지위 아이템 배치 조회 (댓글/채팅/프로필 렌더용). 예: ?ids=1,2,3</summary>
- internal sealed class EquippedItems : IEndpoint
- {
- public void MapEndpoint(IEndpointRouteBuilder app)
- {
- app.MapGet("api/members/equipped-items", async (
- string? ids,
- ISender sender,
- CancellationToken ct
- ) => {
- var memberIDs = (ids ?? string.Empty)
- .Split(',', StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries)
- .Select(s => int.TryParse(s, out var v) ? v : 0)
- .Where(v => v > 0)
- .ToList();
- var query = new Application.Features.Api.Member.Items.Equipped.Query(memberIDs);
- var result = await sender.Send(query, ct);
- return ApiResponse.Ok(result);
- })
- .WithTags("Member");
- }
- }
|