PR 7-3: 과제 제출 + 인증서 PDF 구현
ID: 99bb5328-82a3-460f-bc42-56d08058b0df
과제 제출/리뷰 + 수료/자격 인증서 PDF 생성. TDD 기반.
## 담당 파일
- db/migrate/xxx_create_study_assignments.rb (신규)
- db/migrate/xxx_create_study_certificates.rb (신규)
- app/models/study/assignment.rb (신규)
- app/models/study/certificate.rb (신규)
- app/controllers/study/assignments_controller.rb (신규)
- app/controllers/study/certificates_controller.rb (신규)
- app/controllers/admin/study_assignments_controller.rb (신규 - Admin 과제 검토)
- app/services/study/certificate_generator.rb (신규)
- app/views/study/assignments/ (new, show)
- app/views/study/certificates/show.html.erb
- app/views/admin/study_assignments/ (index, show)
- config/routes.rb (edu subdomain + admin namespace)
- test/ (모델 2개, 컨트롤러 3개, 서비스 1개)
## 스키마
### study_assignments
- enrollment_id(FK), user_id(FK), course_id(FK)
- status: enum (pending/reviewed/approved/rejected)
- feedback:text
- has_one_attached :file (10MB)
### study_certificates
- user_id(FK), course_id(FK), enrollment_id(FK)
- certificate_type: enum (completion/qualification)
- certificate_number: string (unique, 9W-SC-YYYY-NNNNN)
- issued_at:datetime
## 비즈니스 로직
- 80% 수강 완료 → 수료 인증서 자동 발급
- 과제 승인 → 코치 자격 인증서
- PDF: 기존 PdfGenerator 패턴 참고 (Grover)
- 인증서 번호: 9W-SC-YYYY-NNNNN 형식 자동 생성
## 주의사항
- Study 모듈 table_name_prefix "study_", UUID PK
- routes.rb: edu subdomain + admin namespace 두 곳에 추가
- 다른 에이전트의 routes 영역 수정 금지
첨부 이미지
이미지 추가 (Ctrl+V로 붙여넣기 또는 클릭)
JPEG, PNG, GIF, WebP / 최대 10MB
활동 로그
-
팀팀리드 상태 변경: 리뷰 → 완료
2026년 03월 11일 22:23:30
-
팀팀리드 상태 변경: 할 일 → 리뷰
2026년 03월 11일 15:15:36