260707_1_대시보드정리 1차
This commit is contained in:
@@ -139,19 +139,35 @@ B01_Dashboard 페이지는 로그인 후 메인 랜딩 페이지로, 역할에
|
||||
|
||||
## 기능 상세 검증 항목
|
||||
|
||||
### 프로젝트 리스트 워크플로우 표시
|
||||
### 프로젝트 리스트 및 워크플로우 표시 (USER, ADMIN 공통)
|
||||
|
||||
**UI 검증 포인트:**
|
||||
- [ ] 각 프로젝트별 진행도 정상 계산 (B03~B09 단계 기준)
|
||||
- [ ] 워크플로우 단계 버튼 활성화/비활성화 정상 작동
|
||||
- [ ] 완료된 단계 클릭 시 해당 페이지로 이동
|
||||
- [ ] 진행 중 단계 클릭 시 현재 진행 상태 표시
|
||||
- [ ] 미진행 단계 클릭 시 반응 없음 (비활성화 상태 유지)
|
||||
- [ ] 프로젝트 테이블 정상 렌더링 (프로젝트명, 지역, 진행도, 워크플로우, 수정일)
|
||||
- [ ] 각 프로젝트별 진행도 정상 계산 (완료 단계 수 / 6 × 100%)
|
||||
- [ ] 진행도 시각화 `[●●●○○○]` 정상 표시
|
||||
- [ ] **워크플로우 단계 버튼 활성화/비활성화:**
|
||||
- [ ] 완료된 단계 (파란색): 클릭 가능 → 해당 페이지로 이동 ✅
|
||||
- [ ] 진행 중 단계 (주황색): 강조 표시, 클릭해도 현재 페이지 유지
|
||||
- [ ] 미진행 단계 (회색): 클릭 불가 (비활성화 상태)
|
||||
- [ ] [+ 신규 프로젝트] 버튼 클릭 시 B02_ProjRegister로 이동
|
||||
|
||||
**데이터 검증 포인트:**
|
||||
- [ ] projects.status 값이 올바르게 매핑되는지 확인
|
||||
- [ ] `projects.status` 값이 올바르게 매핑되는지 확인
|
||||
- NEW → B03 단계
|
||||
- FILE_UPLOADED → B03 완료, B04 시작
|
||||
- WF1_ANALYZING → B04 진행 중
|
||||
- WF1_COMPLETE → B04 완료, B05 시작
|
||||
- (계속...)
|
||||
- [ ] 프로젝트명, 지역, 수정일 정상 표시
|
||||
- [ ] [+ 신규 프로젝트] 버튼 클릭 시 B02_ProjRegister로 이동
|
||||
- [ ] 사용자의 프로젝트만 조회되는지 확인 (projects.user_id 필터링)
|
||||
|
||||
### 회사 프로젝트 조회 (ADMIN용)
|
||||
|
||||
**검증 포인트:**
|
||||
- [ ] ADMIN 계정에서 "회사 프로젝트" 섹션 표시 여부
|
||||
- [ ] 회사에 속한 모든 프로젝트 조회 (본인이 생성하지 않은 프로젝트 포함)
|
||||
- [ ] 프로젝트명, 소유자, 지역, 진행도, 상태 정상 표시
|
||||
- [ ] 프로젝트 클릭 시 해당 페이지로 이동 (USER 프로젝트도 접근 가능한지 확인)
|
||||
|
||||
### 회사 상태 섹션 (USER 역할)
|
||||
|
||||
@@ -236,6 +252,62 @@ B01_Dashboard 페이지는 로그인 후 메인 랜딩 페이지로, 역할에
|
||||
|
||||
---
|
||||
|
||||
## 구현 완료 현황
|
||||
|
||||
### ✅ 완료된 항목
|
||||
|
||||
#### DB 마이그레이션
|
||||
- ✅ users.role (ENUM: SYSTEM_ADMIN, ADMIN, USER) 추가
|
||||
- ✅ users.is_master (BOOLEAN) 추가
|
||||
- ✅ users.status (ENUM: PENDING_EMAIL, NO_COMPANY, PENDING, ACTIVE, INACTIVE, REJECTED) 추가
|
||||
- ✅ users.department (TEXT) 추가
|
||||
- ✅ users.last_login (DATETIME) 추가
|
||||
- ✅ users.auth_expires_at (DATETIME) 추가
|
||||
- ✅ join_requests 테이블 생성 + review_comment 컬럼 추가
|
||||
- ✅ system_audit_logs 테이블 생성
|
||||
- ✅ system_resources 테이블 생성
|
||||
- ✅ 기존 데이터 변환 (MASTER → ADMIN, MEMBER → USER)
|
||||
|
||||
#### 백엔드 API
|
||||
- ✅ B01_Dashboard_Router.py 구현
|
||||
- ✅ B01_Dashboard_Repository.py 구현
|
||||
- ✅ B01_Dashboard_Schema.py 구현
|
||||
- ✅ 공통 API (GET/PATCH /api/dashboard/me)
|
||||
- ✅ USER 역할 API (프로젝트, 회사 관련)
|
||||
- ✅ ADMIN 역할 API (팀원, 가입 요청 관련)
|
||||
- ✅ SYSTEM_ADMIN 역할 API (전체 조회/관리)
|
||||
- ✅ main.py에 라우터 등록
|
||||
|
||||
#### 프론트엔드 UI
|
||||
- ✅ B01_Dashboard_UI_Page.ts (역할별 섹션 조건부 렌더링)
|
||||
- ✅ B01_Dashboard_Api_Fetch.ts (API 클라이언트)
|
||||
- ✅ B01_Dashboard_UI_Style.css (스타일링)
|
||||
- ✅ ui_template_locale.ts 확장 (다국어 문구)
|
||||
- ✅ router.ts 업데이트 (B01 라우팅)
|
||||
|
||||
#### 인증/세션
|
||||
- ✅ PENDING 상태 사용자도 B01 대시보드 접근 허용
|
||||
- ✅ auth_expires_at을 이메일 인증 완료 시 3개월 뒤로 설정
|
||||
- ✅ 로그인 시 last_login, auth_expires_at 갱신
|
||||
- ✅ 기본 역할을 USER로 표준화
|
||||
|
||||
#### 코드 검증
|
||||
- ✅ TypeScript 검사 통과
|
||||
- ✅ Python Ruff 검사 통과
|
||||
- ✅ DB 마이그레이션 적용 확인
|
||||
- ✅ 폴더 정리 (B01_AccountDetail 삭제, B01_Dashboard 통합)
|
||||
|
||||
---
|
||||
|
||||
## 남은 항목
|
||||
|
||||
### ⏳ 브라우저 실제 검증 필요
|
||||
- [ ] 로그인 후 B01_Dashboard 페이지 렌더링 확인
|
||||
- [ ] 역할별 섹션 정상 표시 (USER, ADMIN, SYSTEM_ADMIN)
|
||||
- [ ] 각 기능별 실제 동작 테스트 (아래 시나리오 참고)
|
||||
|
||||
---
|
||||
|
||||
## 통합 테스트 시나리오 (다음 단계)
|
||||
|
||||
### 시나리오 1: 회사 생성 (USER → ADMIN 전환)
|
||||
|
||||
Reference in New Issue
Block a user