diff --git a/src/docs/asciidoc/check-user-v2.adoc b/src/docs/asciidoc/check-user-v2.adoc index e536e83a..1924a580 100644 --- a/src/docs/asciidoc/check-user-v2.adoc +++ b/src/docs/asciidoc/check-user-v2.adoc @@ -28,6 +28,8 @@ include::{snippets}/api/v2/user/http-response.adoc[] - "ticketCount": Integer - "point": Integer - "subscribe": "normal" | "active" | "canceled" +- "yelloCount": Integer +- "friendCount": Integer === Note diff --git a/src/main/java/com/yello/server/domain/user/dto/response/UserDetailV2Response.java b/src/main/java/com/yello/server/domain/user/dto/response/UserDetailV2Response.java index fcfe13a0..d5185150 100644 --- a/src/main/java/com/yello/server/domain/user/dto/response/UserDetailV2Response.java +++ b/src/main/java/com/yello/server/domain/user/dto/response/UserDetailV2Response.java @@ -27,10 +27,12 @@ public record UserDetailV2Response( Long recommendCount, Integer ticketCount, Integer point, - String subscribe + String subscribe, + Integer yelloCount, + Integer friendCount ) { - public static UserDetailV2Response of(User user, UserGroup userGroup) { + public static UserDetailV2Response of(User user, UserGroup userGroup, Integer yelloCount, Integer friendCount) { return UserDetailV2Response.builder() .userId(user.getId()) .name(user.getName()) @@ -50,6 +52,8 @@ public static UserDetailV2Response of(User user, UserGroup userGroup) { .ticketCount(user.getTicketCount()) .point(user.getPoint()) .subscribe(user.getSubscribe().getIntial()) + .yelloCount(yelloCount) + .friendCount(friendCount) .build(); } } diff --git a/src/main/java/com/yello/server/domain/user/service/UserService.java b/src/main/java/com/yello/server/domain/user/service/UserService.java index 4e69aef1..6abf05fe 100644 --- a/src/main/java/com/yello/server/domain/user/service/UserService.java +++ b/src/main/java/com/yello/server/domain/user/service/UserService.java @@ -49,7 +49,10 @@ public UserDetailResponse findMyProfile(Long userId) { public UserDetailV2Response getUserDetailV2(Long userId) { final User user = userRepository.getById(userId); - return UserDetailV2Response.of(user, user.getGroup()); + final Integer yelloCount = voteRepository.countAllByReceiverUserId(user.getId()); + final Integer friendCount = friendRepository.findAllByUserId(user.getId()).size(); + + return UserDetailV2Response.of(user, user.getGroup(), yelloCount, friendCount); } public UserResponse findUserById(Long userId) { diff --git a/src/main/resources/static/docs/check-user-v2.html b/src/main/resources/static/docs/check-user-v2.html index 5aaa4387..6aef59d3 100644 --- a/src/main/resources/static/docs/check-user-v2.html +++ b/src/main/resources/static/docs/check-user-v2.html @@ -483,7 +483,9 @@

응답

"recommendCount" : 0, "ticketCount" : 0, "point" : 200, - "subscribe" : "normal" + "subscribe" : "normal", + "yelloCount" : 100, + "friendCount" : 200 } } @@ -547,6 +549,12 @@

응답

  • "subscribe": "normal" | "active" | "canceled"

  • +
  • +

    "yelloCount": Integer

    +
  • +
  • +

    "friendCount": Integer

    +
  • @@ -585,7 +593,7 @@

    CHANGELOG

    diff --git a/src/main/resources/static/docs/index.html b/src/main/resources/static/docs/index.html index 08f0b9e2..fd59a82c 100644 --- a/src/main/resources/static/docs/index.html +++ b/src/main/resources/static/docs/index.html @@ -643,7 +643,7 @@

    Notice API

    diff --git a/src/test/java/com/yello/server/domain/user/medium/UserControllerTest.java b/src/test/java/com/yello/server/domain/user/medium/UserControllerTest.java index d936777e..e9b8236d 100644 --- a/src/test/java/com/yello/server/domain/user/medium/UserControllerTest.java +++ b/src/test/java/com/yello/server/domain/user/medium/UserControllerTest.java @@ -115,7 +115,7 @@ void init() { @Test void 내_정보_조회_V2에_성공합니다() throws Exception { // given - UserDetailV2Response response = UserDetailV2Response.of(user, user.getGroup()); + UserDetailV2Response response = UserDetailV2Response.of(user, user.getGroup(), 100, 200); given(userService.getUserDetailV2(anyLong())) .willReturn(response);