Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -63,15 +63,28 @@ public ResponseEntity<GlobalResponse<Void>> deleteFriend(
return ResponseEntity.ok(GlobalResponse.success("친구 삭제 완료", null));
}

// @GetMapping("/requests/incoming")
// public ResponseEntity<GlobalResponse<FriendRequestListWithCountResDto>> getIncomingRequests(
// @AuthenticationPrincipal(expression = "userAuthDto.userId") Long userId
// ) {
// return ResponseEntity.ok(
// GlobalResponse.success("받은 친구 신청 목록 조회 성공", friendService.getIncomingRequests(userId))
// );
// }

@GetMapping("/requests/incoming")
public ResponseEntity<GlobalResponse<FriendRequestListWithCountResDto>> getIncomingRequests(
public ResponseEntity<GlobalResponse<List<FriendRequestListResDto>>> getIncomingRequests(
@AuthenticationPrincipal(expression = "userAuthDto.userId") Long userId
) {
return ResponseEntity.ok(
GlobalResponse.success("받은 친구 신청 목록 조회 성공", friendService.getIncomingRequests(userId))
GlobalResponse.success(
"받은 친구 신청 목록 조회 성공",
friendService.getIncomingRequests(userId)
)
);
}


@GetMapping("/requests/outgoing")
public ResponseEntity<GlobalResponse<List<FriendRequestListResDto>>> getOutgoingRequests(
@AuthenticationPrincipal(expression = "userAuthDto.userId") Long userId
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,10 @@ ResponseEntity<GlobalResponse<Void>> deleteFriend(
summary = "받은 친구 신청 목록 조회",
description = "내가 받은 친구 신청(PENDING 상태) 목록을 조회합니다."
)
ResponseEntity<GlobalResponse<FriendRequestListWithCountResDto>> getIncomingRequests(
@Parameter(hidden = true)
// ResponseEntity<GlobalResponse<FriendRequestListWithCountResDto>> getIncomingRequests(
ResponseEntity<GlobalResponse<List<FriendRequestListResDto>>> getIncomingRequests(

@Parameter(hidden = true)
@AuthenticationPrincipal(expression = "userAuthDto.userId") Long userId
);

Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package com.example.egobook_be.domain.friend.dto;

import lombok.Builder;

import java.util.List;

@Builder
public record FriendRequestListWithCountResDto(
int totalCount,
List<FriendRequestListResDto> requests
) {
}
//package com.example.egobook_be.domain.friend.dto;
//
//import lombok.Builder;
//
//import java.util.List;
//
//@Builder
//public record FriendRequestListWithCountResDto(
// int totalCount,
// List<FriendRequestListResDto> requests
//) {
//}
Original file line number Diff line number Diff line change
Expand Up @@ -182,24 +182,54 @@ public void deleteFriend(Long userId, Long friendId) {


/** 내가 받은 친구 신청 목록 (승인 대기) **/
// @Transactional(readOnly = true)
// public FriendRequestListWithCountResDto getIncomingRequests(Long userId) {
//
// User receiver = userRepository.findById(userId)
// .orElseThrow(() -> new CustomException(FriendErrorCode.USER_NOT_FOUND));
//
// List<FriendRequest> requests =
// friendRequestRepository.findByReceiverAndStatus(
// receiver,
// FriendRequestStatus.PENDING
// );
//
// int totalCount = (int) friendRequestRepository.countByReceiverAndStatus(
// receiver,
// FriendRequestStatus.PENDING
// );
//
// List<FriendRequestListResDto> list = requests.stream()
// .map(req -> {
// User sender = req.getSender();
//
// return FriendRequestListResDto.builder()
// .requestId(req.getId())
// .userId(sender.getId())
// .nickname(sender.getNickname())
// .level(sender.getLevel())
// .requestedAt(req.getCreatedAt())
// .build();
// })
// .toList();
//
// return FriendRequestListWithCountResDto.builder()
// .totalCount(totalCount)
// .requests(list)
// .build();
// }

@Transactional(readOnly = true)
public FriendRequestListWithCountResDto getIncomingRequests(Long userId) {
public List<FriendRequestListResDto> getIncomingRequests(Long userId) {

User receiver = userRepository.findById(userId)
.orElseThrow(() -> new CustomException(FriendErrorCode.USER_NOT_FOUND));

List<FriendRequest> requests =
friendRequestRepository.findByReceiverAndStatus(
return friendRequestRepository.findByReceiverAndStatus(
receiver,
FriendRequestStatus.PENDING
);

int totalCount = (int) friendRequestRepository.countByReceiverAndStatus(
receiver,
FriendRequestStatus.PENDING
);

List<FriendRequestListResDto> list = requests.stream()
)
.stream()
.map(req -> {
User sender = req.getSender();

Expand All @@ -212,13 +242,9 @@ public FriendRequestListWithCountResDto getIncomingRequests(Long userId) {
.build();
})
.toList();

return FriendRequestListWithCountResDto.builder()
.totalCount(totalCount)
.requests(list)
.build();
}


/** 내가 보낸 친구 신청 목록 **/
@Transactional(readOnly = true)
public List<FriendRequestListResDto> getOutgoingRequests(Long userId) {
Expand Down
Loading