| 12345678910111213141516171819202122232425262728 |
- using Application.Abstractions.Messaging;
- using Domain.Entities.Stocks.ValueObject;
- using Web.Api.Common;
- namespace Web.Api.Endpoints.Market;
- /// <summary>옵션(일반/주식유가/주식코스닥) 목록 — 상품군·세션(기본 정규, 2=야간)별 지정일(미지정 시 최신 거래일) 페이징 (익명 열람). KRX 파생상품 수집.</summary>
- internal sealed class Options : IEndpoint
- {
- public void MapEndpoint(IEndpointRouteBuilder app)
- {
- app.MapGet("api/market/options", async (
- ISender sender,
- OptionsKind kind = OptionsKind.General,
- DateOnly? date = null,
- int page = 1,
- ushort perPage = 20,
- MarketSession session = MarketSession.Regular,
- CancellationToken ct = default
- ) => {
- var result = await sender.Send(new Application.Features.Api.Stocks.GetOptions.Query(kind, date, page, perPage, session), ct);
- return ApiResponse.Ok(result);
- })
- .WithTags("Market")
- .AllowAnonymous();
- }
- }
|