diff --git a/src/main/java/com/HHive/hhive/domain/party/controller/PartyController.java b/src/main/java/com/HHive/hhive/domain/party/controller/PartyController.java index 8056ce7..807c03b 100644 --- a/src/main/java/com/HHive/hhive/domain/party/controller/PartyController.java +++ b/src/main/java/com/HHive/hhive/domain/party/controller/PartyController.java @@ -88,5 +88,15 @@ public ResponseEntity> resignParty(@PathVariable Long par return ResponseEntity.ok().body(CommonResponse.of(HttpStatus.OK.value(), "파티 탈퇴 성공", null)); } + @GetMapping("/users/{userId}") + public ResponseEntity>> getPartiesByUserId( + @PathVariable Long userId, @AuthenticationPrincipal UserDetailsImpl userDetails) { + + List response = partyService.getPartiesByUserId(userId); + + return ResponseEntity.ok().body(CommonResponse.of(HttpStatus.OK.value(), + "유저의 파티 조회 성공", response)); + } + } diff --git a/src/main/java/com/HHive/hhive/domain/party/service/PartyService.java b/src/main/java/com/HHive/hhive/domain/party/service/PartyService.java index c45f3e2..cfde145 100644 --- a/src/main/java/com/HHive/hhive/domain/party/service/PartyService.java +++ b/src/main/java/com/HHive/hhive/domain/party/service/PartyService.java @@ -199,4 +199,11 @@ private List getPartyMembers(Long partyId) { .collect(Collectors.toList()); } + public List getPartiesByUserId(Long userId) { + + return partyUserRepository.findPartiesByUserId(userId).stream().map(party -> + new PartyResponseDTO(party.getId(), party.getTitle(), party.getUsername(), + party.getContent(), party.getDateTime(), party.getCreatedAt(), + party.getModifiedAt(), getPartyMembers(party.getId()))).toList(); + } } \ No newline at end of file diff --git a/src/main/java/com/HHive/hhive/domain/relationship/partyuser/repository/PartyUserRepository.java b/src/main/java/com/HHive/hhive/domain/relationship/partyuser/repository/PartyUserRepository.java index 7e3e491..13f40e7 100644 --- a/src/main/java/com/HHive/hhive/domain/relationship/partyuser/repository/PartyUserRepository.java +++ b/src/main/java/com/HHive/hhive/domain/relationship/partyuser/repository/PartyUserRepository.java @@ -1,5 +1,6 @@ package com.HHive.hhive.domain.relationship.partyuser.repository; +import com.HHive.hhive.domain.party.entity.Party; import com.HHive.hhive.domain.relationship.partyuser.entity.PartyUser; import com.HHive.hhive.domain.relationship.partyuser.pk.PartyUserPK; import org.springframework.data.jpa.repository.JpaRepository; @@ -14,4 +15,7 @@ public interface PartyUserRepository extends JpaRepository findPartiesByUserId(Long userId); }