Conversation
Feature/13 user
* feat : google login 구현 완료 (ios 구현 중)
* feat : google login 구현 완료 * fix : user hard delete * feat : apple 로그인 구현 및 ddl-auto -> update 변경
* 약관 엔티티 생성 및 연관관계 설정 * 회원가입에 약관 저장 로직 추가 * 서버에서 idToken을 받아올 수 없으므로 단순히 이메일로 accessToken을 받아오는 test API 추가
* feat : 파티 엔티티 정의 * feat : 파티 dto * feat : party dto 정의 * feat : party entity 정의 * feat : 파티 생성,수정,삭제, 조회 partycontroller partyservice partyrepository * feat : 거리 계산 클래스 * refactor : 불필요한 코드 삭제 * refactor : token provider로 유저 아이디 추출하도록 변경 * Fix: 파티 기능 버그 수정 * docs : 파티 swagger 문서 추가
* feat : 파티 검색 추가
* feature & fix : 유저 최근 검색어 API 구현
* feat : stomp import 및 인증 설정 진행 * feat : 웹소켓 subscribe, unsubscribe, disconnect 시 유저의 실시간 채팅방 접속 정보 수정 * feat : chatMessage 엔티티 추가 * feat : 채팅 전송, 채팅이력 조회 API 생성 * fix : 채팅 기능 고도화 * fix : minor change * fix : 웹소켓에서 오류 발생 시 에러 메시지 사용자에게 보냄 * fix : 참여 요청 거절 수정
* feat : 유저 프로필 이미지 수정, 삭제 * fix : 유저 프로필 수정, 삭제
* feat : 거리 계산 쿼리 PartySearchRepository로 분리 (거리순, 페이징, 검색) * feat : 거리 계산 API 구현
Co-authored-by: marshmallowing <yuin1111801@naver.com>
|
Caution Review failedThe pull request is closed. 📝 WalkthroughWalkthrough이 PR은 파티 알림 시스템을 재구성하여 파티 참여 요청, 승인, 거절, 자동 종료 및 완료 흐름을 중심으로 변경합니다. PartyNotificationService의 메서드 서명을 업데이트하여 partyTitle을 포함하고, NotificationFacade에 PartyRepository 및 UserRepository를 추가하여 파티 정보를 조회합니다. PartyService에 NotificationFacade를 통합하여 파티 참여, 승인, 거절 및 정산 시점에 알림을 발송합니다. PartyParticipantRepository에 새로운 쿼리 메서드를 추가하고, UserController에서 getActiveParties 엔드포인트를 제거하며, UserService의 정렬 로직을 개선합니다. 또한 PartyErrorCode 예외 정의를 신규 추가합니다. Sequence DiagramsequenceDiagram
participant User as User
participant PartyService as PartyService
participant PartyRepository as PartyRepository
participant NotificationFacade as NotificationFacade
participant PartyNotificationService as PartyNotificationService
participant FCMService as FCM Service
User->>PartyService: joinParty(partyId, userId)
PartyService->>PartyRepository: save(PartyParticipant)
PartyService->>NotificationFacade: notifyNewPartyRequest(hostId, userId, partyId)
NotificationFacade->>PartyRepository: findById(partyId)
NotificationFacade->>PartyNotificationService: sendNewPartyRequestNotification(hostId, nickname, title, partyId)
PartyNotificationService->>FCMService: send notification
User->>PartyService: approveParticipant(participantId)
PartyService->>NotificationFacade: notifyApproval(userId, partyId)
NotificationFacade->>PartyRepository: findById(partyId)
NotificationFacade->>PartyNotificationService: sendApprovalNotification(userId, title, partyId)
PartyNotificationService->>FCMService: send notification
User->>PartyService: settleParty(partyId)
PartyService->>PartyRepository: findApprovedMembers(partyId)
PartyService->>NotificationFacade: notifyPartyComplete(memberIds, partyId)
NotificationFacade->>PartyRepository: findById(partyId)
NotificationFacade->>PartyNotificationService: sendPartyCompleteNotification(memberIds, title, partyId)
PartyNotificationService->>FCMService: send notification to all members
Possibly related PRs
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (7)
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. Comment |
📝 상세 내용
Summary by CodeRabbit
릴리스 노트
새로운 기능
개선사항
변경사항
✏️ Tip: You can customize this high-level summary in your review settings.