Skip to content

[FIX] 구매자 - 참여 상세 정보 모집완료 상태 분철글 상태를 따르게 수정#196

Merged
88guri merged 1 commit intodevelopfrom
fix/#192/participation-detail-change-status
Jan 23, 2026
Merged

[FIX] 구매자 - 참여 상세 정보 모집완료 상태 분철글 상태를 따르게 수정#196
88guri merged 1 commit intodevelopfrom
fix/#192/participation-detail-change-status

Conversation

@88guri
Copy link
Copy Markdown
Collaborator

@88guri 88guri commented Jan 23, 2026

📌 관련 이슈

✨ 변경 사항

📸 테스트 증명 (필수)

  • 멤버 2개인 글에 주문 1개 넣었을때
image
  • 주문 2개 다 넣었을때
image

📚 리뷰어 참고 사항

✅ 체크리스트

  • 브랜치 전략(git flow)을 따랐나요? (develop -> feat/...)
  • 로컬에서 빌드 및 실행이 정상적으로 되나요?
  • 불필요한 주석(TODO 등)이나 더미 코드는 제거했나요?
  • 컨벤션(커밋 메시지, 코드 스타일)을 지켰나요?

Summary by CodeRabbit

릴리스 노트

  • 개선 사항
    • 참여 상세 정보의 상태 표시 우선순위를 개선하여 모집 중 상태가 적절히 강조됩니다.
    • 주문 상태에 따른 상태 메시지 표시 로직을 확장하여 더 정확한 상태 정보를 제공합니다.

✏️ Tip: You can customize this high-level summary in your review settings.

@88guri 88guri requested a review from PBEM22 January 23, 2026 10:05
@88guri 88guri self-assigned this Jan 23, 2026
@88guri 88guri added 🚨 Fix 버그 수정 🐵 시현 시현이에요 ✋Participation 공구 참여, 관리 labels Jan 23, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Jan 23, 2026

📝 Walkthrough

Walkthrough

참여 상세 정보에서 모집 완료 후 상태 표시가 분철글(주문) 상태를 따르도록 로직을 수정했습니다. GroupBuyPostStatus 우선순위 처리를 추가하여 모집 중일 때와 모집 완료 후의 상태 메시지를 구분합니다.

Changes

코호트 / 파일(s) 변경 요약
상태 처리 로직 개선
src/main/java/org/sopt/poti/domain/participation/service/ParticipationDetailService.java
mapTopStatus 메서드 시그니처 변경: GroupBuyPostStatus 매개변수 추가하여 RECRUITING 우선순위 처리. determineStatusMessage 메서드 신규 추가로 상태별 메시지 결정 로직 분리. getParticipationDetail에서 두 메서드 모두 호출 시 GroupBuyPostStatus 전달하도록 업데이트.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested labels

🔥 P0

Suggested reviewers

  • PBEM22
🚥 Pre-merge checks | ✅ 4 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed PR 제목이 변경 사항의 핵심을 명확히 설명합니다. 참여 상세 정보에서 모집완료 상태가 분철글(공구글) 상태를 따르도록 수정했다는 의도가 잘 드러나 있습니다.
Linked Issues check ✅ Passed 이슈 #192의 요구사항인 '참여 상세 정보 모집완료 상태 분철글 상태를 따르게' 수정이 ParticipationDetailService의 mapTopStatus, determineStatusMessage 메서드 개선으로 구현되었습니다.
Out of Scope Changes check ✅ Passed 변경사항이 ParticipationDetailService의 상태 관련 로직 수정으로 제한되어 있으며, 이슈 #192의 요구사항인 모집 상태 반영 기능에만 집중합니다.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
src/main/java/org/sopt/poti/domain/participation/service/ParticipationDetailService.java (1)

150-170: orderStatus가 null일 때 NPE 발생 가능성이 있어요.

mapTopStatus 메서드에서는 line 137-139에서 orderStatus == null 체크를 해주는데, 여기서는 그 체크가 빠져있어요. postStatusRECRUITING이 아닌 상태에서 orderStatus가 null이면 line 162의 switch 문에서 NullPointerException이 발생해요.

🐛 null 체크 추가 제안
  private String determineStatusMessage(
      GroupBuyPostStatus postStatus,
      OrderStatus orderStatus
  ) {
    // 1 모집중이면 무조건 모집중 멘트를 띄움
    if (postStatus == GroupBuyPostStatus.RECRUITING) {
      return "다른 참여자들을 기다리고 있어요";
    }

+   // orderStatus가 null이면 메시지 없음
+   if (orderStatus == null) {
+     return null;
+   }
+
    // 2 모집 마감 이후부터는 OrderStatus 기준으로 멘트를 띄움
    return switch (orderStatus) {
      case WAIT_PAY -> "지금 입금해주세요";
      case WAIT_PAY_CHECK -> "모집자가 입금 내역을 확인하고 있어요";
      case PAID, READY -> "모집자가 배송을 준비 중이에요";
      case SHIPPED -> "모집자가 배송을 시작했어요";
      case DELIVERED -> "거래가 종료되었어요";
      default -> null;
    };
  }

Copy link
Copy Markdown
Collaborator

@PBEM22 PBEM22 left a comment

Choose a reason for hiding this comment

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

믿습니다.

@88guri 88guri merged commit b89387b into develop Jan 23, 2026
2 checks passed
@88guri 88guri deleted the fix/#192/participation-detail-change-status branch January 23, 2026 12:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🚨 Fix 버그 수정 ✋Participation 공구 참여, 관리 🐵 시현 시현이에요

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FIX] 구매자 - 참여 상세 정보 모집완료 상태 분철글 상태를 따르게

2 participants