Skip to content

Refactor/#201 멘토 담당 프로젝트 대회 무관 조회로 변경#202

Merged
pykido merged 1 commit into
developfrom
Refactor/#201_멘토-담당-프로젝트-대회-무관-조회로-변경
Jul 1, 2026

Hidden character warning

The head ref may contain hidden characters: "Refactor/#201_\uba58\ud1a0-\ub2f4\ub2f9-\ud504\ub85c\uc81d\ud2b8-\ub300\ud68c-\ubb34\uad00-\uc870\ud68c\ub85c-\ubcc0\uacbd"
Merged

Refactor/#201 멘토 담당 프로젝트 대회 무관 조회로 변경#202
pykido merged 1 commit into
developfrom
Refactor/#201_멘토-담당-프로젝트-대회-무관-조회로-변경

Conversation

@pykido

@pykido pykido commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

🔥 연관된 이슈

close: #201

📜 작업 내용

  • 멘토(교수/외부멘토) 담당 프로젝트 조회를 특정 대회 스코프에서 대회 무관 조회로 변경했습니다.
    • GET /contests/{contestId}/mentor/projectsGET /contests/mentors/me/projects
    • 본인이 배정된 **모든 대회(종료된 대회 포함)**의 담당 프로젝트를 집계해 반환하며, 상단 통계(담당 팀 수, 검토 대기 건수)도 전 대회 합산입니다.
  • 서비스에서 ContestMember를 멤버 기준으로 전부 조회(findAllByMemberId)한 뒤, 대회별 기존 집계 로직(트랙명·피드백 대기 건수)을 재사용해 flatten·합산하도록 구현했습니다.
  • 컨트롤러 클래스 매핑을 /contests/{contestId}/contests로 조정하고 {contestId}를 팀 제출물 조회 메서드로 옮겼습니다. (팀 제출물 API URL은 그대로 유지)

💬 리뷰 요구사항

  • 조회 범위를 '현재 진행 대회'가 아니라 '배정된 모든 대회(종료 포함)'로 잡았습니다. 멘토가 참여한 대회 수만큼 대회별 쿼리가 반복되는데(현재 규모에선 문제없다고 판단), 이 방향이 괜찮은지 봐주세요.

✨ 기타

  • me@LoginMember로 해석되며, 기존 /members/me 컨벤션과 URL 스타일을 맞췄습니다.

Copilot AI review requested due to automatic review settings July 1, 2026 13:12

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

멘토(교수/외부멘토) 담당 프로젝트 조회 API를 “대회 단건 스코프”에서 “본인이 배정된 모든 대회(종료 포함) 합산 조회”로 리팩터링하여, 멘토가 대회 선택 없이 전체 담당 프로젝트/통계를 한 번에 조회할 수 있도록 변경한 PR입니다.

Changes:

  • 멘토 담당 프로젝트 조회 엔드포인트를 GET /contests/{contestId}/mentor/projectsGET /contests/mentors/me/projects로 변경하고, 서비스 로직을 모든 대회 합산 집계로 변경
  • ContestMemberRepository에 멤버 기준 전체 조회용 findAllByMemberId 추가
  • REST Docs/Asciidoc 및 서비스 테스트를 신규 API/동작에 맞게 업데이트

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/main/java/com/opus/opus/modules/contest/api/ContestMentorController.java 컨트롤러 base path를 /contests로 조정하고 멘토 프로젝트 조회를 me 기반 endpoint로 변경
src/main/java/com/opus/opus/modules/contest/application/ContestMentorQueryService.java 멘토가 배정된 모든 대회의 담당 프로젝트/통계를 flatten·합산하여 반환하도록 집계 로직 변경
src/main/java/com/opus/opus/modules/contest/domain/dao/ContestMemberRepository.java 멘버 기준 ContestMember 전체 조회 메서드 추가
src/test/java/com/opus/opus/contest/application/ContestMentorQueryServiceTest.java 다중 대회 배정 시 합산 조회 동작을 검증하는 테스트 추가 및 기존 contestId 기반 테스트 정리
src/test/java/com/opus/opus/restdocs/docs/ContestMentorApiDocsTest.java REST Docs 스니펫을 신규 멘토 프로젝트 조회 URL(대회 무관)로 변경
src/main/java/com/opus/opus/docs/asciidoc/mentor.adoc 멘토 담당 프로젝트 조회 설명/스니펫을 대회 무관 조회로 반영

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@pykido pykido self-assigned this Jul 1, 2026
@pykido pykido added ‼️P1 우선순위 매우 높음 🔍 기능 수정 기능 일부 수정 (오류 수정, 기획 변경 등) labels Jul 1, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.

@myeowon myeowon left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고하셨습니다!!

@pykido
pykido merged commit cf1be8a into develop Jul 1, 2026
2 checks passed
@pykido
pykido deleted the Refactor/#201_멘토-담당-프로젝트-대회-무관-조회로-변경 branch July 1, 2026 14:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

‼️P1 우선순위 매우 높음 🔍 기능 수정 기능 일부 수정 (오류 수정, 기획 변경 등)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[REFACTOR] 멘토 담당 프로젝트 조회를 대회 무관 조회로 변경

3 participants