Skip to content

Conversation

@Dimo-2562
Copy link
Contributor

❤️ 기능 설명

주요 변경사항

1. PostRepository V2 메서드 추가

  • findByCompanyNamesWithCursor: 여러 회사 동시 조회 + publishedAt, id 커서
  • findRecentPostsWithCursorV2: publishedAt + id 기반 정확한 커서 페이징
  • findPopularPostsWithCursorV2: viewCount + id 기반 정확한 커서 페이징

2. PostQueryService 개선

  • getPostsByCompanyV2: 다중 회사 선택 지원
  • getRecentPostsV2: LATEST/POPULAR 정렬 시 올바른 커서 파라미터 사용

3. PostControllerV2 API 추가

  • GET /api/v2/posts/by-company: companies 리스트 파라미터로 다중 선택
  • GET /api/v2/posts/recent: 정렬 방식에 따라 다른 커서 파라미터
    • LATEST: lastPublishedAt, lastPostId
    • POPULAR: lastViewCount, lastPostId

4. 인덱스 최적화

  • Post 엔티티의 인덱스를 정렬 기준과 일치하도록 수정
    • (publishedAt, id)
    • (viewCount, id)
    • (company, publishedAt, id)

5. 테스트 코드 작성

  • Repository 단위 테스트 6개 추가
  • Service 단위 테스트 4개 추가
  • Controller 통합 테스트 6개 추가

API 변경사항

기존 V1 API는 유지됩니다

/api/v2/posts/by-company (NEW)

GET /api/v2/posts/by-company?companies=카카오&companies=네이버&size=20
GET /api/v2/posts/by-company?companies=카카오&lastPublishedAt=2024-01-12T10:00:00&lastPostId=100&size=20

/api/v2/posts/recent (NEW)

LATEST 정렬

GET /api/v2/posts/recent?sortBy=LATEST&size=20
GET /api/v2/posts/recent?sortBy=LATEST&lastPublishedAt=2024-01-12T10:00:00&lastPostId=100&size=20

POPULAR 정렬

GET /api/v2/posts/recent?sortBy=POPULAR&size=20
GET /api/v2/posts/recent?sortBy=POPULAR&lastViewCount=500&lastPostId=100&size=20

swagger 테스트 성공 결과 스크린샷 첨부

연결된 issue

연결된 issue를 자동으로 닫기 위해 아래 {이슈넘버}를 입력해주세요.

close #156



✅ 체크리스트

  • PR 제목 규칙 잘 지켰는가?
  • 추가/수정사항을 설명하였는가?
  • 테스트 결과 사진을 넣었는가?
  • 이슈넘버를 적었는가?

@Dimo-2562 Dimo-2562 self-assigned this Jan 12, 2026
@Dimo-2562 Dimo-2562 added ✨ IMPROVE 기존 기능 변경 📝 domain:post 게시글 관련 labels Jan 12, 2026
@Dimo-2562 Dimo-2562 merged commit 3c83091 into develop Jan 12, 2026
1 check passed
@Dimo-2562 Dimo-2562 deleted the improve/#156 branch January 12, 2026 08:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📝 domain:post 게시글 관련 ✨ IMPROVE 기존 기능 변경

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[IMPROVE] 커서 기반 페이징 정렬 기준 일치 및 기업별 게시글 다중 선택 지원

2 participants