리팩토링 이슈
관련 이슈
개선 대상
- 프론트 연동 과정에서 발견된 도메인 버그 및 미연동 지점
- 커뮤니티 게시글 수정/삭제·이미지, 강의 통계, 수강 완료 판정, 영상 완료 정책
개선 내용
- 커뮤니티: 게시글 수정이 INSERT로 새 글을 만들던 버그 수정(
PostRepositoryAdapter ID 있으면 UPDATE), 수정 시 기존 이미지 유지(keepFileUrls), 삭제 시 댓글/view_logs FK 정리, 썸네일 업로드 타입(COURSE_THUMBNAIL) 분리
- 강의: 평점/리뷰수/수강생수 + 강사 통계(전체 수강생/강의수/평점) 실제 집계 추가(Stats Port/Adapter 신규), 인기/별점 정렬 보완
- 수강/완료: 수강중 목록에서 COMPLETED 제외, enrollment status=COMPLETED도 완료로 인정
- 영상 학습: 완료 기준을
max(시청시간, 재생위치) ≥ 90%로 변경 (2배속 시청 대응)
- 회원: 탈퇴 시 phone_number NOT NULL 익명화 처리
- 보안/설정: GET
/uploads/**,/community/**,/identity/**,/api/subjects,/api/notices,/api/notices/* permitAll, WebConfig 정적경로 application.yml 주입화
영향 범위
domain/community, domain/cource, domain/enrollment_management, domain/learning_activity, domain/identity
global/config/SecurityConfig, global/config/WebConfig
- 신규:
cource/application/port/*StatsPort, cource/infrastructure/stats/*StatsAdapter
- 브랜치:
integ/backend
⚠️ application.yml 은 gitignore라 커밋에 미포함 → 별도 공지문 참고(필수 설정값)
⚠️ 영상 완료 기준을 "시청시간 90% → max(시청시간,재생위치) 90%"로 변경. 정책 협의 필요.
작업 체크리스트
리팩토링 이슈
관련 이슈
개선 대상
개선 내용
PostRepositoryAdapterID 있으면 UPDATE), 수정 시 기존 이미지 유지(keepFileUrls), 삭제 시 댓글/view_logs FK 정리, 썸네일 업로드 타입(COURSE_THUMBNAIL) 분리max(시청시간, 재생위치) ≥ 90%로 변경 (2배속 시청 대응)/uploads/**,/community/**,/identity/**,/api/subjects,/api/notices,/api/notices/*permitAll,WebConfig정적경로 application.yml 주입화영향 범위
domain/community,domain/cource,domain/enrollment_management,domain/learning_activity,domain/identityglobal/config/SecurityConfig,global/config/WebConfigcource/application/port/*StatsPort,cource/infrastructure/stats/*StatsAdapterinteg/backend작업 체크리스트