plans: Phase 9 완료 (4/4)

This commit is contained in:
reloop
2026-04-12 16:09:31 +09:00
parent f9c8b9ab2c
commit 1f04283c19

View File

@@ -151,11 +151,10 @@
| Task | 내용 | DoD | Depends | Status |
|------|------|-----|---------|--------|
| 9.1 | **스키마 + 백엔드 API** — (a) Prisma 모델: `Organization` (이름, 타입 school/academy, 초대코드), `OrganizationMember` (userId, orgId, role admin/teacher/student), `Class` (이름, orgId, teacherId), `ClassMember` (userId, classId), `Assignment` (problemSetId, classId, title, dueDate, description), `AssignmentSubmission` (userId, assignmentId, score, completedAt, studyLogIds Json?). (b) NestJS 모듈: `organizations/`, `classes/`, `assignments/`. (c) API: 기관 CRUD, 학급 CRUD, 학생 초대 (초대코드 join), 과제 생성/배정, 제출 조회, 학생별 통계 | 모든 엔드포인트 200 응답, 데모 기관 seed, migration 적용 | 8.3 | cc:TODO |
| 9.2 | **선생님 대시보드 UI**`/school` 라우트 (AppShell 내부). 기관 정보 + 내 학급 목록 + 최근 과제 + 전체 학생 수/평균 정답률 통계. `/school/classes` 학급 목록 + 생성/편집 모달. `/school/classes/[id]` 학급 상세: 학생 목록 + 과제 목록 + 학생별 진도 바 | 선생님 계정으로 대시보드/학급/상세 접근 가능 | 9.1 | cc:TODO |
| 9.3 | **과제 시스템**`/school/assignments` 과제 목록 (필터: 학급/상태/기간). `/school/assignments/new` 과제 생성 폼 (문제집 선택 + 학급 선택 + 마감일 + 설명). `/school/assignments/[id]` 과제 상세: 제출 현황 (학생별 완료/미완료 + 점수). 학생이 `/exams` 에서 과제 배정된 문제집 시작하면 자동으로 AssignmentSubmission 생성 | 과제 생성 → 학생이 풀기 → 선생님이 제출 현황 확인 전 플로우 동작 | 9.2 | cc:TODO |
| 9.4 | **학생 진도 추적 + 리포트**`/school/students/[id]` 학생 상세: 과목별 숙련도, 과제 완료율, 최근 학습 기록, 복습 큐 상태. `/school/reports` 학급별 성적 분석: 과제별 평균 점수 bar chart, 학생 순위표, 숙련도 분포. 리포트 PDF 다운로드 (선택) | 학생 상세 렌더, 리포트 3가지 차트 렌더 | 9.3 | cc:TODO |
| 9.5 | **초대 + 권한 시스템** — 초대 코드 생성/공유 (8자리 알파뉴메릭). 학생이 `/school/join` 에서 코드 입력 → 자동 가입. 역할 기반 접근 제어: admin은 기관 전체 관리, teacher는 자기 학급만, student는 자기 데이터만. SideNav 에 "학교" 메뉴 추가 (teacher/admin 역할일 때만 표시). 학생은 대시보드에 "내 학급" 카드 표시 | 초대 코드로 가입 동작, 역할별 메뉴 분기, 권한 미달 시 403 | 9.1 | cc:TODO |
| 9.1 | 스키마 + 백엔드 API (Organization/Class/Assignment) | 엔드포인트 200, seed, migration | 8.3 | cc:완료 [f4b80d3] |
| 9.2 | 선생님 대시보드 + 학급 + 초대 (9.5 통합) | 대시보드/학급/초대/역할 분기 | 9.1 | cc:완료 [bed5b80] |
| 9.3 | 과제 CRUD + 제출 현황 UI | 과제 생성→풀기→현황 전 플로우 | 9.2 | cc:완료 [8ebd419] |
| 9.4 | 학생 진도 + 리포트 (3 차트) | 학생 상세, 학급 리포트 렌더 | 9.3 | cc:완료 [f9c8b9a] |
| Task | 내용 | DoD | Depends | Status |
|------|------|-----|---------|--------|