Skip to content

Conversation

@Ogu1208
Copy link
Contributor

@Ogu1208 Ogu1208 commented Sep 11, 2025

대여 → 결제 → 배송 → 리뷰 → 반납 → 관리까지 연결된 최초 버전

관련 Issue (필수)

✨ 주요 기능 (Features)


🔧 리팩토링 (Refactor)


🐞 버그 수정 (Fix)


🧪 테스트 (Test)


📚 문서 및 기타 (Docs / Chore / Style)

주요 변경 사항 (필수)

리뷰어 참고 사항

없음

추가 정보

없음

PR 작성 체크리스트 (필수)

  • 제목이 Issue와 동일함을 확인했습니다.
  • 리뷰어를 지정했습니다.
  • 프로젝트를 연결했습니다.

chanwonlee and others added 30 commits September 5, 2025 13:42
[FEATURE] 장바구니 상품 추가, 삭제 기능 구현
@Ogu1208 Ogu1208 added this to the 2차 MVP 개발 (9.6 ~ 9.10) milestone Sep 11, 2025
@Ogu1208 Ogu1208 added this to 💙 BE Sep 11, 2025
@Ogu1208 Ogu1208 merged commit 1554500 into main Sep 11, 2025
2 checks passed
@github-project-automation github-project-automation bot moved this to Done in 💙 BE Sep 11, 2025
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary of Changes

Hello @Ogu1208, 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!

이 Pull Request는 Cherry 서비스의 v1.0.0 MVP 릴리즈로, 사용자 대여 여정의 핵심 흐름(대여, 결제, 배송, 리뷰, 반납)과 관리자 기능을 완벽하게 구현하는 데 중점을 두었습니다. 새로운 장바구니 및 결제 시스템, 강화된 회원 및 상품 관리 기능, 그리고 자동화된 대여 상태 관리 스케줄러를 포함하여 서비스의 기반을 견고히 다졌습니다. 또한, QueryDSL 도입 및 광범위한 리팩토링을 통해 코드 품질과 유지보수성을 크게 향상시켰습니다.

Highlights

  • 핵심 기능 구현: 대여, 결제, 배송, 리뷰, 반납, 관리 등 서비스의 핵심 사용자 흐름을 포괄하는 MVP(Minimum Viable Product) 기능을 구현했습니다.
  • 관리자 페이지 도입: 상품, 회원, 체험(대여) 관리를 위한 전용 관리자 페이지를 추가하여 운영 효율성을 높였습니다.
  • 장바구니 기능 추가: 사용자가 여러 상품을 장바구니에 담고 일괄 결제할 수 있는 기능을 도입했습니다.
  • 결제 시스템 고도화: 결제 생성 및 조회 기능을 개선하고, 대여 ID 기반 결제 조회 및 추가 요금(배송비, 청소비) 처리를 포함하도록 결제 도메인 구조를 재설계했습니다.
  • 회원 관리 기능 확장: 이메일/닉네임 중복 검증, 회원 탈퇴 기능을 추가하고, 탈퇴 시 사용자 정보 마스킹 처리를 구현했습니다.
  • 상품 관리 개선: 상품 생성, 조회, 삭제 기능을 강화하고, 개발 환경에서 초기 상품 데이터를 자동으로 저장하도록 설정했습니다. QueryDSL을 도입하여 상품 목록 조회 시 필터링 및 정렬 기능을 유연하게 제공합니다.
  • 대여 상태 관리 및 스케줄링: 대여 상태 변화 로직을 정교화하고, 만료된 대여를 자동으로 반납 처리하는 스케줄러를 추가했습니다.
  • 배송 처리 로직 강화: 배송 생성, 시작, 완료 기능을 구현하고, 반납 배송 상태 검증 로직을 추가했습니다.
  • 기술 스택 업데이트 및 리팩토링: QueryDSL 도입을 통해 복잡한 쿼리를 효율적으로 처리하고, Email 엔티티를 record에서 class로 변경하여 QueryDSL 호환성을 확보했습니다. N+1 쿼리 문제 개선, 패키지명 소문자화, 코드 컨벤션 정리 등 전반적인 코드 품질을 향상시켰습니다.
  • API 문서화 및 테스트 강화: Swagger 문서화를 대폭 확대하고, 핵심 비즈니스 로직에 대한 단위 테스트 및 HTTP 기반 통합 테스트를 강화하여 안정성을 확보했습니다.
Using Gemini Code Assist

The 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 in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

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 .gemini/ folder in the base of the repository. Detailed instructions can be found here.

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

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

이번 MVP 릴리스는 프로젝트의 핵심 기능 대부분을 포함하는 대규모 업데이트로 보입니다. 전반적으로 도메인 모델링이 잘 되어 있고, ApplicationService를 통한 계층 분리, QueryDSL을 활용한 동적 쿼리 등 좋은 설계 원칙을 따르고 있습니다. 다만, 프로젝트 전반에 걸쳐 CHERRY 코드 리뷰 가이드라인의 '클래스 시작 시 띄어쓰기' 규칙 위반이 다수 발견되었습니다. 클래스, 레코드, 인터페이스, enum 선언 후에는 가독성을 위해 한 줄의 공백을 추가해야 합니다. 이 부분을 일관되게 수정하면 코드 품질이 더욱 향상될 것입니다. 몇 가지 대표적인 파일에 대해 코멘트를 남겼으니, 다른 파일들에도 동일한 규칙을 적용해주시기 바랍니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants