feat: Phase 5 View 분할 + RBAC 2차원 권한 + 게시판 CRUD API 연동 #29

병합
htlee feature/refactor-phase5-view-decomposition 에서 develop 로 2 commits 를 머지했습니다 2026-02-28 19:38:01 +09:00
소유자

Summary

  • View 분할: 대형 View 컴포넌트를 서브탭 단위로 분할, FEATURE_ID 체계 도입
  • RBAC 2차원 권한: 리소스×오퍼레이션(RCUD) 모델, permResolver 엔진, AUTH_PERM_TREE 테이블
  • DB 통합: wing + wing_auth → wing 단일 DB (스키마 분리: wing, auth)
  • 게시판 CRUD API: boardService/boardRouter + requirePermission 적용
  • 프론트엔드 API 연동: BoardView/BoardWriteForm/BoardDetailView mock 제거 → 실제 API 호출
  • 문서: CRUD-API-GUIDE 작성 및 프론트엔드 참조 갱신

Changes (7 commits)

  1. refactor(frontend): 대형 View 서브탭 분할 + FEATURE_ID
  2. feat(auth): RBAC 오퍼레이션 기반 2차원 권한 시스템
  3. feat(backend): DB 통합 + 게시판 CRUD API + RBAC 가이드
  4. chore: develop 머지 충돌 해결
  5. fix(frontend): InfoLayerSection import 경로 수정
  6. fix(frontend): 게시판 CRUD mock 제거 → API 연동
  7. docs: CRUD-API-GUIDE 프론트엔드 파일 참조 갱신

Test plan

  • 게시판 글쓰기 → DB 저장 확인
  • 게시판 목록 API 조회 확인 (카테고리 필터, 검색, 페이지네이션)
  • 게시글 상세 → 조회수 증가 확인
  • 본인 게시글 수정/삭제 확인
  • 타인 게시글 수정/삭제 버튼 미노출 확인
  • RBAC 권한별 글쓰기 버튼 조건부 노출 확인
  • 빌드 성공 확인

🤖 Generated with Claude Code

## Summary - **View 분할**: 대형 View 컴포넌트를 서브탭 단위로 분할, FEATURE_ID 체계 도입 - **RBAC 2차원 권한**: 리소스×오퍼레이션(RCUD) 모델, permResolver 엔진, AUTH_PERM_TREE 테이블 - **DB 통합**: wing + wing_auth → wing 단일 DB (스키마 분리: wing, auth) - **게시판 CRUD API**: boardService/boardRouter + requirePermission 적용 - **프론트엔드 API 연동**: BoardView/BoardWriteForm/BoardDetailView mock 제거 → 실제 API 호출 - **문서**: CRUD-API-GUIDE 작성 및 프론트엔드 참조 갱신 ## Changes (7 commits) 1. `refactor(frontend)`: 대형 View 서브탭 분할 + FEATURE_ID 2. `feat(auth)`: RBAC 오퍼레이션 기반 2차원 권한 시스템 3. `feat(backend)`: DB 통합 + 게시판 CRUD API + RBAC 가이드 4. `chore`: develop 머지 충돌 해결 5. `fix(frontend)`: InfoLayerSection import 경로 수정 6. `fix(frontend)`: 게시판 CRUD mock 제거 → API 연동 7. `docs`: CRUD-API-GUIDE 프론트엔드 파일 참조 갱신 ## Test plan - [ ] 게시판 글쓰기 → DB 저장 확인 - [ ] 게시판 목록 API 조회 확인 (카테고리 필터, 검색, 페이지네이션) - [ ] 게시글 상세 → 조회수 증가 확인 - [ ] 본인 게시글 수정/삭제 확인 - [ ] 타인 게시글 수정/삭제 버튼 미노출 확인 - [ ] RBAC 권한별 글쓰기 버튼 조건부 노출 확인 - [ ] 빌드 성공 확인 🤖 Generated with [Claude Code](https://claude.com/claude-code)
htlee added 2 commits 2026-02-28 19:37:54 +09:00
- BoardView.tsx: initialPosts mock 제거, fetchBoardPosts API로 전환
  - 서브탭별 카테고리 필터링 (NOTICE/DATA/QNA)
  - 실제 페이지네이션 (totalCount 기반)
  - hasPermission 기반 글쓰기 버튼 조건부 노출
- BoardWriteForm.tsx: createBoardPost/updateBoardPost API 직접 호출
  - 카테고리 코드 DB 규격 (NOTICE/DATA/QNA) 사용
  - 작성자 입력 필드 제거 (JWT 인증 사용자 자동 설정)
- BoardDetailView.tsx: fetchBoardPost API로 상세 조회
  - 본인 게시글만 수정/삭제 버튼 노출 (authorId 비교)
  - 댓글 mock 제거, 향후 구현 예정 안내 표시

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- BoardListTable → BoardView/BoardWriteForm/BoardDetailView로 변경
- 권한 기반 UI 분기 코드 예시를 실제 구현과 일치하도록 수정

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
htlee merged commit dcaf8da474 into develop 2026-02-28 19:38:01 +09:00
htlee 삭제된 브랜치 feature/refactor-phase5-view-decomposition 2026-02-28 19:38:01 +09:00
"로그인하여 이 대화에 참여"
No reviewers
레이블 없음
마일스톤 없음
담당자 없음
참여자 1명
알림
마감일
기한이 올바르지 않거나 범위를 벗어났습니다. 'yyyy-mm-dd'형식을 사용해주십시오.

마감일이 설정되지 않았습니다.

의존성

No dependencies set.

Reference: gc/wing-ops#29
No description provided.