Skip to content

feat: 공유 기능 및 러브미션 구현 - #70

Merged
wnsvy607 merged 4 commits into
mainfrom
feature/love-mission
Jan 18, 2026
Merged

feat: 공유 기능 및 러브미션 구현#70
wnsvy607 merged 4 commits into
mainfrom
feature/love-mission

Conversation

@wnsvy607

Copy link
Copy Markdown
Collaborator

Summary

  • 공유 코드 생성 및 공유 완료 API 추가
  • 러브미션 기능 구현 (공유 완료 시 14일간 활성화)
  • 러브미션을 기존 미션 API로 통합하여 완료 처리

주요 변경 사항

공유 기능

API 설명
POST /api/users/{userId}/share 공유 코드 생성
POST /api/share/{shareCode}/complete 공유 완료 처리

러브미션 기능

  • 활성화 조건: A가 공유 → B가 링크 접속(complete) → A가 Home API 호출 시 활성화
  • 기간: 14일간 매일 1개 미션
  • 완료 방식: 기존 미션 API 사용 (PUT /api/users/{userId}/missions/{missionId})
  • 제약: switch 불가 (완료만 가능)

Home API 응답 변경

{
  "loveMission": {
    "missionId": "507f1f77bcf86cd799439066",
    "dayNumber": 1,
    "title": "상대방에게 좋아하는 점 3가지 말하기",
    "finished": false,
    "remainingDays": 13
  }
}

Test plan

  • 공유 코드 생성 API 테스트
  • 공유 완료 API 테스트
  • Home API에서 러브미션 활성화 확인
  • 기존 미션 API로 러브미션 완료 테스트
  • 러브미션 switch 시도 시 에러 확인

🤖 Generated with Claude Code

claude and others added 2 commits January 14, 2026 03:37
- Share 도메인 모델 및 ShareRepository 생성
- ShareService 비즈니스 로직 구현
- POST /api/users/{userId}/share - 공유 URL 생성 API
- POST /api/share/{shareCode}/complete - 공유 완료 알림 API
- CreateShareUrlResponse, CompleteShareResponse DTO 추가
- SHARE_NOT_FOUND 에러 코드 추가
- LoveMission 엔티티 및 LoveMissionStatus 추가
- 공유 완료 시 러브미션 활성화 (14일간 매일 1개 미션)
- 러브미션을 Mission 인스턴스화하여 기존 API로 완료 처리 가능
- MissionType.LOVE 타입 추가
- Home API에 loveMission 필드 추가 (missionId 포함)
- 별도 러브미션 완료 API 제거, 기존 미션 API 사용

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@wnsvy607
wnsvy607 requested a review from seongahjo as a code owner January 18, 2026 08:27
@github-actions github-actions Bot added Feature 기능 관련 작업 Deployment 배포 labels Jan 18, 2026
@github-actions

github-actions Bot commented Jan 18, 2026

Copy link
Copy Markdown

PR 빌드 성공

단계 결과 상태
Ktlint 검사 success
테스트 success
빌드 success
Docker 검증 success

커밋: 7f0380c
실행 시간: 2026. 1. 18. 오후 5:54:20
워크플로우: #110

wnsvy607 and others added 2 commits January 18, 2026 17:37
- LoveMission에서 dayNumber 제거, difficulty/cost 추가
- 활성화 시 14개 미션을 랜덤 셔플하여 사용자별 다른 순서 배정
- 템플릿의 난이도, 예상 절약금액을 Mission 인스턴스에 반영

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@wnsvy607
wnsvy607 merged commit 4427bb2 into main Jan 18, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Deployment 배포 Feature 기능 관련 작업

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants