Files
kent 2d9b02f74e docs: API 통합 프로젝트 계획 및 Flow Test 스펙 추가
- INDEX.md: TODO.md 링크 추가
- TODO.md: 프로젝트 할일 목록 신규 생성
- plans/flow-tests/: Flow Tester 테스트 시나리오 JSON 추가
  - auth-api-flow.json: 인증 API 플로우 테스트
  - pricing-validation-test.json: 가격 검증 테스트
- projects/api-integration/: 마이그레이션 계획 문서
  - MASTER_PLAN.md: 전체 마이그레이션 전략
  - PROGRESS.md: 진행 상황 추적
  - WORKFLOW.md: 작업 워크플로우
  - phase-1 ~ phase-4: 단계별 상세 계획

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-21 01:35:43 +09:00

78 lines
2.1 KiB
Markdown

# Phase 2: React 라우터 → 메뉴 추출
> **상태**: ✅ 완료
> **완료일**: 2025-12-20
> **병행 작업**: Phase 3과 병행 가능
---
## 목표
React 라우트 기반으로 mng에 등록할 메뉴 목록 추출
## 체크리스트
- [x] React 전체 라우트 목록 추출
- [x] 메뉴 구조 정리 (계층, 이름, URL)
- [x] 접근 권한 매핑
- [x] mng 등록용 포맷 생성
- [ ] 메뉴 등록 (mng에서) → Phase 4에서 진행
## React 라우트 구조
```
react/src/app/
├── [locale]/
│ ├── page.tsx # 루트 (→ dashboard 리다이렉트)
│ ├── login/page.tsx # 로그인
│ └── (protected)/ # 인증 필요
│ ├── dashboard/ # 대시보드
│ ├── items/ # 품목 관리
│ ├── accounting/ # 회계
│ ├── sales/ # 영업
│ ├── hr/ # 인사
│ ├── board/ # 게시판
│ ├── settings/ # 설정
│ └── ...
```
## 메뉴 추출 포맷
| 메뉴명 | URL | 부모 | 순서 | 아이콘 | 권한 |
|--------|-----|------|------|--------|------|
| 대시보드 | /dashboard | - | 1 | dashboard | all |
| 품목관리 | /items | - | 2 | box | items.view |
| ... | ... | ... | ... | ... | ... |
## 산출물
- [x] `react-routes-analysis.md` - 라우트 상세 분석 (107개 페이지, 15개 도메인)
- [x] `menu-list.md` - 최종 메뉴 리스트 (11개 대메뉴, 54개 중메뉴, 52개 권한)
## 작업 순서
1. React 라우터 파일 전체 스캔
2. 페이지별 메타 정보 수집
3. 메뉴 계층 구조 설계
4. 권한 매핑 정의
5. mng 등록용 SQL/JSON 생성
---
## 참고: 현재 메뉴 로드 방식
```typescript
// 로그인 시 API에서 메뉴 로드
POST /api/v1/login
Response: {
user: {...},
menus: [...], // 권한 기반 메뉴
roles: [...]
}
```
메뉴가 등록되지 않으면 해당 라우트 접근 불가.
---
*Phase 2 작업 시작 시 이 체크리스트를 업데이트하세요.*