Skip to content

[Feat] 홈 티칭맵 출처 extraCount 추가 - #139

Merged
EH-OI merged 1 commit into
mainfrom
feat/home-teachingmap-extra-count
Aug 11, 2026
Merged

EH-OI merged 1 commit into
mainfrom
feat/home-teachingmap-extra-count

Conversation

@m00nsh

@m00nsh m00nsh commented Aug 11, 2026 •

Copy link
Copy Markdown
Collaborator

✨ 어떤 이유로 PR를 하셨나요?

  • feature 병합
  • 버그 수정(아래에 issue #를 남겨주세요)
  • 코드 개선
  • 코드 수정
  • 배포
  • 기타(아래에 자세한 내용 기입해주세요)

📋 세부 내용 - 왜 해당 PR이 필요한지 작업 내용을 자세하게 설명해주세요

작업 내용

홈 대시보드 조회 API(/api/v1/home)의 activeTeachingMaps 응답에 extraCount 필드를 추가했습니다.

기존 티칭맵 목록 API와 동일하게 플랫폼 타입 기준으로 출처 정보를 계산합니다.

  • sourcePlatforms: 중복 제거된 플랫폼 타입 중 최대 3개
  • extraCount: max(0, distinct 플랫폼 타입 개수 - 3)

변경 파일

  • HomeTeachingMapResponse.java
  • HomeService.java
  • HomeServiceTest.java

테스트

( 동작 테스트 case)

  • VELOG

    • sourcePlatforms: 1개
    • extraCount: 0
  • VELOG, VELOG, VELOG, VELOG

    • distinct platform: VELOG
    • sourcePlatforms: 1개
    • extraCount: 0
  • VELOG, NOTION, TISTORY

    • sourcePlatforms: 3개
    • extraCount: 0
  • VELOG, NOTION, TISTORY, YOUTUBE

    • sourcePlatforms: 3개
    • extraCount: 1
  • VELOG, NOTION, TISTORY, YOUTUBE, BLOG

    • sourcePlatforms: 3개
    • extraCount: 2
  • ./gradlew.bat test --tests "*Home*" 성공

  • ./gradlew.bat test --tests "*TeachingMap*" 성공

  • git diff --check 통과

기타

  • 기존 티칭맵 목록 API의 sourcePlatforms / extraCount 계약과 동일하게 동작하도록 반영했습니다.
  • API endpoint 변경 없음
  • DB / Entity / Repository 변경 없음

📸 작업 화면 스크린샷

⚠️ PR하기 전에 확인해주세요

  • 로컬테스트를 진행하셨나요?
  • 머지할 브랜치를 확인하셨나요?
  • 관련 label을 선택하셨나요?

🚨 관련 이슈 번호 [ ]

Summary by CodeRabbit

  • 새로운 기능

    • 교육 지도 응답에 표시 제한을 초과한 플랫폼 수를 제공하도록 개선했습니다.
    • 중복 플랫폼을 제외하고 최대 3개의 플랫폼을 표시하며, 추가 플랫폼 수를 정확히 계산합니다.
  • 버그 수정

    • 동일 플랫폼이 반복 입력될 때 추가 플랫폼 수에 중복 집계되지 않도록 수정했습니다.

@coderabbitai

coderabbitai Bot commented Aug 11, 2026 •

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Teaching map 응답에 extraCount 필드를 추가했습니다. HomeService는 표시 가능한 고유 플랫폼을 최대 3개 반환하고, 초과한 플랫폼 수를 계산합니다. 테스트는 단일 및 다중 teaching map의 결과를 검증합니다.

Changes

Teaching map 플랫폼 초과 개수

Layer / File(s) Summary
응답 계약 및 플랫폼 계산
src/main/java/com/teaching/backend/domain/home/dto/HomeTeachingMapResponse.java, src/main/java/com/teaching/backend/domain/home/service/HomeService.java
HomeTeachingMapResponse에 extraCount를 추가했습니다. HomeService는 표시 가능한 플랫폼을 중복 제거하고, 최대 3개 제한을 초과한 개수를 응답에 전달합니다.
플랫폼 제한 검증
src/test/java/com/teaching/backend/domain/home/service/HomeServiceTest.java
단일 및 다중 teaching map에서 고유 플랫폼 목록과 extraCount를 검증합니다. 중복 플랫폼은 초과 개수에서 제외합니다.

Estimated code review effort: 2 (Simple) | ~10 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목이 홈 티칭맵 응답에 extraCount를 추가하는 주요 변경 사항을 명확하게 요약합니다.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/home-teachingmap-extra-count

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@EH-OI
EH-OI merged commit 66cdfbe into main Aug 11, 2026
2 checks passed
@m00nsh
m00nsh deleted the feat/home-teachingmap-extra-count branch August 13, 2026 12:14
@m00nsh m00nsh added the 🌟Feat 새로운 기능 label Aug 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🌟Feat 새로운 기능

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants