- wtm-frontend → wtm-frontend-vue 이름 변경 - wtm-frontend-react 추가 (React 18 + PrimeReact + Zustand) - 동일한 모듈 구조 및 API 연동 (Vue 버전과 기능 동일) - Vue:5173 / React:5174 포트 분리 - 개발자 가이드에 React 프론트엔드 안내 추가 - .gitignore: Claude/OMC, 문서 생성 스크립트, package-lock 제외 - 불필요 파일 git 추적 제거 (.omc, generate_*.py, regenerate_*.py) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
16 줄
1000 B
TypeScript
16 줄
1000 B
TypeScript
import api from '@/core/api/axios';
|
|
|
|
export const wbsService = {
|
|
upload: (projectId: number, file: File, effectiveDate: string) => {
|
|
const formData = new FormData();
|
|
formData.append('file', file);
|
|
formData.append('effectiveDate', effectiveDate);
|
|
return api.post(`/api/wtm/projects/${projectId}/wbs/upload`, formData, { headers: { 'Content-Type': 'multipart/form-data' } });
|
|
},
|
|
getVersions: (projectId: number) => api.get(`/api/wtm/projects/${projectId}/wbs/versions`),
|
|
getVersionNodes: (projectId: number, version: number) => api.get(`/api/wtm/projects/${projectId}/wbs/versions/${version}`),
|
|
activateVersion: (projectId: number, version: number) => api.post(`/api/wtm/projects/${projectId}/wbs/versions/${version}/activate`),
|
|
getCanonicalWbs: (projectId: number) => api.get(`/api/wtm/projects/${projectId}/canonical-wbs`),
|
|
compareVersions: (projectId: number, v1: number, v2: number) => api.get(`/api/wtm/projects/${projectId}/wbs/compare`, { params: { v1, v2 } }),
|
|
};
|