주식 히스토리 API 및 블로그 작성 API 추가

This commit is contained in:
2026-03-11 08:08:39 +09:00
parent bbc9bf36f9
commit c6ac849a25
5 changed files with 1121 additions and 142 deletions

View File

@@ -137,6 +137,22 @@ export function deletePortfolio(id) {
return apiDelete(`/api/portfolio/${id}`);
}
// ── 자산 스냅샷 API ──────────────────────────────────────────────────────────
// 장 마감 시점 총 자산을 기록하고, 기간별 추이를 조회합니다.
// GET /api/portfolio/snapshot/history?days=N
// response: { history: [{ date: "2026-03-07", total_assets: 12345678 }, ...] }
export function getAssetHistory(days = 30) {
const qs = days ? `?days=${days}` : '';
return apiGet(`/api/portfolio/snapshot/history${qs}`);
}
// POST /api/portfolio/snapshot (body 없이 호출 — 서버가 현재 total_assets 계산해서 저장)
// 또는 body: { total_assets: number } 로 직접 지정 가능
export function saveAssetSnapshot(total_assets) {
return apiPost('/api/portfolio/snapshot', total_assets != null ? { total_assets } : undefined);
}
// ── 예수금 API ───────────────────────────────────────────────────────────────
export function upsertCash(broker, cash) {
@@ -204,3 +220,25 @@ export function deleteTodo(id) {
export function clearTodos() {
return apiDelete('/api/todos/done');
}
// ── 블로그 API ────────────────────────────────────────────────────────────────
// GET /api/blog/posts → { posts: [{id, title, tags, body, date, excerpt}] }
// POST /api/blog/posts → 새 글 생성
// PUT /api/blog/posts/:id → 글 수정
// DELETE /api/blog/posts/:id → 글 삭제
export function getBlogPostsApi() {
return apiGet('/api/blog/posts');
}
export function createBlogPost(data) {
return apiPost('/api/blog/posts', data);
}
export function updateBlogPost(id, data) {
return apiPut(`/api/blog/posts/${id}`, data);
}
export function deleteBlogPost(id) {
return apiDelete(`/api/blog/posts/${id}`);
}