Skip to content

Commit

Permalink
✨ Feat: 친구 목록 조회 DTO Converter 구현
Browse files Browse the repository at this point in the history
<body>
Friendship -> toFriendListDto 를 매핑하는 Converter 구현

- 관련 : #382
  • Loading branch information
hosung-222 committed Oct 23, 2024
1 parent 6507e22 commit 00fc792
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@ public static Friendship toFriendShip(Member request, Member target){
.build();
}

public static FriendshipResponse.GetFriendRequestDto toGetFriendRequestDto(Page<Friendship> friendships){
public static FriendshipResponse.FriendRequestListDto toFriendRequestDto(Page<Friendship> friendships){
List<FriendshipResponse.FriendRequestDto> friendRequestDto = friendships.stream()
.map(FriendshipConverter::toFriendRequestDto)
.toList();
return FriendshipResponse.GetFriendRequestDto.builder()
return FriendshipResponse.FriendRequestListDto.builder()
.friendRequests(friendRequestDto)
.currentPage(friendships.getNumber()+1)
.pageSize(friendships.getSize())
Expand All @@ -33,8 +33,9 @@ public static FriendshipResponse.GetFriendRequestDto toGetFriendRequestDto(Page<
.build();
}

public static FriendshipResponse.FriendRequestDto toFriendRequestDto(Friendship friendship){
private static FriendshipResponse.FriendRequestDto toFriendRequestDto(Friendship friendship){
Member requestMember = friendship.getMember();
// todo : birthday 로직 일원화 필요 2024.10.23 Castle
String birthday = requestMember.isBirthdayVisible() ? requestMember.getBirthday().format(DateTimeFormatter.ofPattern("MM-dd")) : BIRTHDAY_HIDDEN;
return FriendshipResponse.FriendRequestDto.builder()
.friendRequestId(friendship.getId())
Expand All @@ -47,4 +48,30 @@ public static FriendshipResponse.FriendRequestDto toFriendRequestDto(Friendship
.favoriteColorId(requestMember.getPalette().getId())
.build();
}

public static FriendshipResponse.FriendListDto toFriendListDto(Page<Friendship> friendships) {
List<FriendshipResponse.FriendInfoDto> friendList = friendships.stream()
.map(FriendshipConverter::toFriendInfoDto)
.toList();
return FriendshipResponse.FriendListDto.builder()
.friendList(friendList)
.currentPage(friendships.getNumber()+1)
.pageSize(friendships.getSize())
.totalPages(friendships.getTotalPages())
.totalItems(friendships.getTotalElements())
.build();
}

private static FriendshipResponse.FriendInfoDto toFriendInfoDto(Friendship friendship){
Member friend = friendship.getFriend();
String birthday = friend.isBirthdayVisible() ? friend.getBirthday().format(DateTimeFormatter.ofPattern("MM-dd")) : BIRTHDAY_HIDDEN;
return FriendshipResponse.FriendInfoDto.builder()
.memberId(friend.getId())
.nickname(friend.getNickname())
.tag(friend.getTag())
.bio(friend.getBio())
.birthday(birthday)
.favoriteColorId(friend.getPalette().getId())
.build();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ public class FriendshipResponse {

@Getter
@Builder
public static class GetFriendRequestDto{
public static class FriendRequestListDto {
List<FriendRequestDto> friendRequests;
@Schema(description = "총 페이지 수", example = "5")
private int totalPages;
Expand Down Expand Up @@ -46,7 +46,7 @@ public static class FriendRequestDto{

@Getter
@Builder
public static class GetFriendListDto{
public static class FriendListDto {
List<FriendInfoDto> friendList;
@Schema(description = "총 페이지 수", example = "5")
private int totalPages;
Expand Down

0 comments on commit 00fc792

Please sign in to comment.