docs(menu): 사이드바 권한 동기화 지침 추가

- frontend_backend_alignment_report.md에 사이드바/그룹 권한 TODO와 테스트 계획을 정리
- stock_approval_system_api_v4.md에 메뉴/그룹 권한 API 규칙과 응답 예시를 추가
- stock_approval_system_spec_v4.md에 공식 메뉴 표와 기본 그룹 권한 케이스를 기재
This commit is contained in:
JiWoong Sul
2025-11-12 00:27:17 +09:00
parent eaac3c23ae
commit f767c44573
3 changed files with 84 additions and 0 deletions

View File

@@ -59,6 +59,18 @@
- `GET /api/v1/group-menu-permissions``include_deleted`를 허용하고 `route_path`, `path`, `is_deleted`를 응답에 포함한다. 프런트 DTO와 편집 화면이 삭제 항목을 구분 표시하는지 확인한다.
- 백엔드/프런트 문서가 모두 최신 스펙을 참조하도록, `backend_change_requests.md`와 프런트 대응 문서를 동시에 업데이트한 후 공유한다.
## 사이드바 & 메뉴 권한
- 백엔드 `menus` 테이블이 사이드바 18개 항목과 1:1 매핑되도록 `menu_code / route_path / display_order`가 고정됐다. 스펙·API 문서에 표가 추가됐으므로 프런트 문서도 동일 표를 참조한다.
- `group_menu_permissions` 응답은 삭제 메뉴를 숨기므로, 드롭다운 리스트 역시 서버 응답 기준으로 렌더링해야 한다. 기존 로컬 enum은 제거한다.
- 로그인 세션 `permissions[].resource``route_path` 값을 사용하므로, 사이드바 렌더링은 `menu_code ↔ route_path` 매퍼만 유지하면 된다.
### 프런트엔드 작업
1. **사이드바 소스 통합**`GET /menus?active=true&include=parent` 응답을 불러와 `SidebarSection`을 구성하고, `display_order` 순서를 그대로 따른다.
2. **그룹 권한 드롭다운 개편** — 권한 편집 화면에서 동일 메뉴 데이터를 트리형 선택 UI로 노출하고, `include_deleted` 케이스에 회색/비활성 스타일을 적용한다.
3. **권한 기반 렌더링 보강** — 로그인 세션 `permissions` + 메뉴 데이터를 조합해 그룹별 사이드바 노출을 제어하고, 관리자/결재 담당자/일반 사용자 시나리오에 대한 스냅샷 테스트를 추가한다.
4. **문서/DTO 동기화**`tool/sync_stock_docs.sh` 실행 후 `doc/frontend_api_alignment_plan.md` 등에 새 메뉴 표와 라우트 매핑 규칙을 기록한다.
5. **회귀 테스트** — 그룹 메뉴 권한 수정 → 재로그인 플로우를 E2E 테스트에 추가해 라우트/사이드바 반영 여부를 검증한다.
## 일정 & 의존성
| 구분 | 작업 내용 | 담당 | 상태 | 목표일(제안) | 비고 |
| --- | --- | --- | --- | --- | --- |