Skip to content

Conversation

@coldsunn
Copy link
Collaborator

@coldsunn coldsunn commented Jan 27, 2026

📝 요약(Summary)

주요 구현 내용

  • 공유 관리: 피드를 친구들에게 공유하거나 중단할 수 있습니다.
  • 피드 조회: ACCEPTED 친구 관계만 공유한 피드를 조회할 수 있습니다.
  • 자동 초기화: 굳이 스케줄러로 값을 변경하지 않아도 조회 시에 날짜 필터링을 통해 오늘 공유된 피드만 표시됩니다.

API 엔드포인트

  • POST /feed/share - 피드 공유 시작
  • POST /feed/unshare - 피드 공유 중단
  • GET /feed/share/status - 공유 상태 조회
  • GET /feed - 친구 피드 목록 조회

기술적 구현

  • DailyReport 엔티티에 is_shared 필드 추가
  • 날짜 기반 복합 인덱스로 쿼리 성능 최적화
  • Fetch Join과 DTO Projection으로 N+1 문제 방지

🔗 Related Issue

💬 공유사항

  • is_shared를 DailyReport 엔티티에 추가한 이유는 is_shared = true AND status = 'COMPLETED' 두 조건을 같은 테이블에서 처리하기 위함
  • COMPLETED 상태의 DailyReport만 공유 가능 -> 응답에 emotion이 들어가기 때문에 리포트가 필수적으로 필요
  • 탈퇴 유저는 제외

✅ PR Checklist

PR이 다음 요구 사항을 충족하는지 확인하세요.

  • PR 제목을 커밋 메시지 컨벤션에 맞게 작성했습니다.

status와 isShared를 같이 관리하기 위해 DailyReport 엔티티에 추가, 쿼리 최적화를 위해 인덱스 생성
DTO 프로젝션을 사용하여 필요한 정보 추출
피드 조회 API, 공유 시작/중단 API, 공유 상태 조회 API 구현
응답 필드 값 변경에 따라 DailyReportQueryService도 수정
불필요한 FeedShareStatusScheduler 제거에 따른 resetAllShareStatus 리포지토리 메서드 제거, NPE 방어 코드 추가, 인덱스 이름 수정
@coldsunn coldsunn merged commit 0aa0b95 into develop Jan 27, 2026
1 check passed
@coldsunn coldsunn deleted the feat/daily-report-feed branch January 27, 2026 17:59
@coldsunn coldsunn restored the feat/daily-report-feed branch January 27, 2026 18:08
@coldsunn coldsunn deleted the feat/daily-report-feed branch January 27, 2026 18:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

친구 피드 기능

1 participant