build(infra): KIS API 클라이언트 시그니처 일원화 및 빌드 수정
- 수정: KisApiClient 메서드 반환 타입 Task<string> → Task<Dictionary<string, object>>로 통일 - 수정: GetOrRefreshTokenAsync ReadAsAsync → ReadFromJsonAsync로 변경 - 수정: PlaceholderKisApiClient IKisApiClient 인터페이스 완전 구현 - 수정: CollectionEndpoints 모든 WithOpenApi() 호출 제거 - 수정: Program.cs using 지시문 순서 재정렬 - 추가: Client/_Imports.razor Fluent UI 컴포넌트 네임스페이스 정의 이제 빌드 성공: QuantEngine.Web 프로젝트 컴파일 완료 (경고 0, 에러 0) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -107,19 +107,58 @@ public class PlaceholderTokenCache : ITokenCache
|
||||
|
||||
public class PlaceholderKisApiClient : IKisApiClient
|
||||
{
|
||||
// Placeholder: To be implemented with actual KIS API calls
|
||||
public Task<string?> GetAccessTokenAsync(string account = "mock")
|
||||
public Task<Dictionary<string, object>> GetCurrentPriceAsync(string code, string account = "mock")
|
||||
{
|
||||
return Task.FromResult<string?>("placeholder_token");
|
||||
return Task.FromResult(new Dictionary<string, object>
|
||||
{
|
||||
{ "code", code },
|
||||
{ "price", 0 },
|
||||
{ "change", 0 },
|
||||
{ "changeRate", 0 }
|
||||
});
|
||||
}
|
||||
|
||||
public Task<dynamic?> GetQuotationAsync(string ticker, string account = "mock")
|
||||
public Task<Dictionary<string, object>> GetAskingPrice10LevelAsync(string code, string account = "mock")
|
||||
{
|
||||
return Task.FromResult<dynamic?>(null);
|
||||
return Task.FromResult(new Dictionary<string, object>
|
||||
{
|
||||
{ "code", code },
|
||||
{ "askLevels", new List<object>() },
|
||||
{ "bidLevels", new List<object>() }
|
||||
});
|
||||
}
|
||||
|
||||
public Task<dynamic?> GetRankingAsync(string sort = "price", int limit = 10, string account = "mock")
|
||||
public Task<Dictionary<string, object>> GetDailyShortSaleAsync(string code, string startDate, string endDate, string account = "mock")
|
||||
{
|
||||
return Task.FromResult<dynamic?>(null);
|
||||
return Task.FromResult(new Dictionary<string, object>
|
||||
{
|
||||
{ "code", code },
|
||||
{ "startDate", startDate },
|
||||
{ "endDate", endDate },
|
||||
{ "data", new List<object>() }
|
||||
});
|
||||
}
|
||||
|
||||
public Task<Dictionary<string, object>> GetDailyItemChartPriceAsync(string code, string startDate, string endDate, string period = "D", string account = "mock")
|
||||
{
|
||||
return Task.FromResult(new Dictionary<string, object>
|
||||
{
|
||||
{ "code", code },
|
||||
{ "startDate", startDate },
|
||||
{ "endDate", endDate },
|
||||
{ "period", period },
|
||||
{ "candles", new List<object>() }
|
||||
});
|
||||
}
|
||||
|
||||
public Task<Dictionary<string, object>> GetInvestorTrendAsync(string code, string account = "mock")
|
||||
{
|
||||
return Task.FromResult(new Dictionary<string, object>
|
||||
{
|
||||
{ "code", code },
|
||||
{ "individual", 0 },
|
||||
{ "foreign", 0 },
|
||||
{ "institution", 0 }
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user