Conversation
Summary of ChangesHello @1000hyehyang, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! 이 PR은 매칭 완료 카드( Highlights
Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
PR은 매칭 완료 카드에 proposalDirection 필드를 성공적으로 추가하여, 비즈니스 이벤트부터 채팅 시스템 메시지 페이로드까지 제안 방향 정보를 일관되게 전달하도록 개선했습니다. 이를 통해 프론트엔드에서 제안 방향에 따라 다른 UI를 표시할 수 있게 되었습니다. 또한 campaignId가 null일 경우 매칭 카드를 전송하지 않도록 처리하여 NPE 발생 가능성을 방지한 점도 좋은 개선입니다. 전반적으로 변경 사항은 명확하고 논리적으로 잘 구현되었습니다. 코드의 견고성을 높이는 과정에서 발생한 중복 검사를 제거하여 코드를 더 간결하게 만들 수 있으며, 아키텍처 일관성을 위해 isDeleted 검사 위치를 조정하는 것을 고려해볼 수 있습니다.
Summary
채팅 매칭 완료 카드(
MATCHED_CAMPAIGN_CARD)에 누가 제안했는지를 나타내는proposalDirection필드를 추가했습니다.프론트에서 "제안한 사람 / 받은 사람"에 따라 카드 문구·UI를 다르게 보여줄 수 있습니다.
campaignId가 null인 경우 매칭 카드 미전송 및 NPE 방지 처리Changes
CampaignProposalStatusChangedEvent:ProposalDirection proposalDirection필드 추가CampaignProposalService.publishProposalStatusChangedEvent:ProposalDirection.fromWhoProposed(proposal.getWhoProposed())로 설정 후 발행ProposalStatusChangedEvent:ChatProposalDirection proposalDirection필드 추가CampaignProposalStatusChangedEventListener: 비즈니스ProposalDirection→ChatProposalDirection변환 후 내부 이벤트에 포함ChatMatchedCampaignPayloadResponse:ChatProposalDirection proposalDirection필드 추가MatchedCampaignPayloadProvider:getPayload(Long campaignId, ChatProposalDirection proposalDirection)시그니처로 변경MatchedCampaignPayloadProviderImpl: 전달받은proposalDirection을 payload에 포함ProposalSystemMessageHandler: 매칭 카드 생성 시event.proposalDirection()전달, campaignId가 null이면 매칭 카드 전송 생략 (NPE 방지)chat-api-guide.md: MATCHED_CAMPAIGN_CARD payload에proposalDirection설명 및 프론트 분기 가이드chat-system-architecture.md: MATCHED_CAMPAIGN_CARD payload 예시에proposalDirection추가chat-rest-api.md: 메시지 예시 payload에proposalDirection추가chat-dto.md: 매칭 카드 payload 항목에 제안 방향 추가Type of Change
Related Issues
Closes #323
참고 사항