Skip to content

Conversation

@seopgyu
Copy link
Collaborator

@seopgyu seopgyu commented Dec 11, 2025

관련 이슈

PR / 과제 설명

1. 도메인(Entity) 설계 및 수정

Party 엔티티:

  • 상태값 단순화: ACTIVE, CLOSED 2가지로 관리 (시간 만료 시에도 CLOSED 처리).
  • 종료 시간 분리: 만료 예정 시각(expiresAt)과 실제 종료 시각(closedAt) 필드를 분리하여 데이터 정확성 확보.
  • 비즈니스 메서드 추가: closeParty()(수동 종료), expireParty()(스케줄러 만료).

PartyMember 엔티티:

  • 유니크 제약조건 수정: (party_id, user_id) 복합 유니크 키 적용으로 중복 참여 원천 차단.
  • 재가입 로직 추가: 탈퇴한 유저(LEFT)가 다시 참여할 경우를 대비해 rejoinParty() 비즈니스 메서드 추가.

2. 데이터 접근 계층 (Repository) 구현

PartyRepository:

  • 스케줄러용 조회 메서드 구현: findByStatusAndExpiresAtBefore (만료 시간이 지난 활성 파티 조회).

PartyMemberRepository:

  • 중복 검사 및 재가입 확인용 메서드 추가: existsByPartyIdAndUserId, findByPartyIdAndUserId.

3. 데이터 전송 객체 (DTO)

Request DTO:

  • PartyMemberAddRequest: 다중 초대를 지원하기 위해 targetUserId를 List targetUserIds로 변경.

Response DTO:

  • PartyByPostResponse: '참여하기' 버튼 활성화/비활성화를 위해 isJoined 필드 추가
  • PartyMemberListResponse: 유저의 profileImage, nickname, maxCount(빈자리 표시용) 필드 추가.
  • MyPartyListResponse: 리스트 가독성을 위해 gameMode, postId 필드 추가.
  • PartyMemberAddResponse: 초대 즉시 UI 갱신을 위해 nickname, profileImage 필드 포함.

이슈 링크

@seopgyu seopgyu self-assigned this Dec 11, 2025
Copy link
Collaborator

@HongRae-Kim HongRae-Kim left a comment

Choose a reason for hiding this comment

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

확인했습니다 👍

@seopgyu seopgyu requested a review from kimwonmin December 12, 2025 00:20
Copy link
Collaborator

@KyeongwonBang KyeongwonBang left a comment

Choose a reason for hiding this comment

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

확인했습니다!

@seopgyu seopgyu merged commit f0be4dc into main Dec 12, 2025
1 check passed
@seopgyu seopgyu deleted the feat/#2/party-basic branch December 12, 2025 00:23
Copy link
Collaborator

@Boojw Boojw left a comment

Choose a reason for hiding this comment

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

확인했습니다!

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BE/feat] 파티 엔티티, DTO 생성

5 participants