From 08f27ccc2b3e58ad58dd0f445799fb559f4ee12f Mon Sep 17 00:00:00 2001 From: sungone <20200999@sungshin.ac.kr> Date: Wed, 29 Mar 2023 00:20:45 +0900 Subject: [PATCH] =?UTF-8?q?#3=20feat=20:=20=EB=A7=88=EC=9D=B4=ED=8E=98?= =?UTF-8?q?=EC=9D=B4=EC=A7=80=20->=20=EB=8B=89=EB=84=A4=EC=9E=84,=20?= =?UTF-8?q?=EB=82=98=EC=9D=98=EC=9E=AC=EC=B9=98=ED=98=84=ED=99=A9(?= =?UTF-8?q?=EB=82=98=EC=9D=98=EC=9E=AC=EC=B9=98=20=EC=88=98,=20=EA=B4=80?= =?UTF-8?q?=EC=8B=AC=EB=AA=A9=EB=A1=9D=20=EC=88=98)=20get?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zatch/zatchserver/ResponseMessage.java | 1 + .../zatchserver/controller/UserController.java | 14 +++++++++++++- .../com/zatch/zatchserver/dto/GetMypageResDto.java | 10 ++++++++++ .../zatch/zatchserver/dto/GetProfileResDto.java | 2 +- .../zatchserver/repository/JdbcUserRepository.java | 13 +++++++++++++ .../zatchserver/repository/UserRepository.java | 2 ++ .../com/zatch/zatchserver/service/UserService.java | 1 + .../zatch/zatchserver/service/UserServiceImpl.java | 5 +++++ 8 files changed, 46 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/zatch/zatchserver/dto/GetMypageResDto.java diff --git a/src/main/java/com/zatch/zatchserver/ResponseMessage.java b/src/main/java/com/zatch/zatchserver/ResponseMessage.java index 5e99c7e..66f9ac4 100644 --- a/src/main/java/com/zatch/zatchserver/ResponseMessage.java +++ b/src/main/java/com/zatch/zatchserver/ResponseMessage.java @@ -9,6 +9,7 @@ public class ResponseMessage { public static final String UPDATE_USER = "회원 정보 수정 성공"; public static final String DELETE_USER = "회원 탈퇴 성공"; public static final String USER_TOWN_SUCCESS = "회원 동네 설정 성공"; + public static final String MY_PROFILE_SUCCESS = "내 프로필 불러오기 성공"; public static final String MYPAGE_SUCCESS = "마이페이지 불러오기 성공"; public static final String USER_NICKNAME_EDIT_SUCCESS ="회원 닉네임 수정 성공"; public static final String INTERNAL_SERVER_ERROR = "서버 내부 에러"; diff --git a/src/main/java/com/zatch/zatchserver/controller/UserController.java b/src/main/java/com/zatch/zatchserver/controller/UserController.java index 7a1fb39..7c7d7d1 100644 --- a/src/main/java/com/zatch/zatchserver/controller/UserController.java +++ b/src/main/java/com/zatch/zatchserver/controller/UserController.java @@ -96,7 +96,7 @@ public ResponseEntity patchNickname(@PathVariable("userId") Long userId public ResponseEntity getProfile(@PathVariable("userId") Long userId) { try { String userNickname = userService.profile(userId); - return new ResponseEntity(DefaultRes.res(StatusCode.OK, ResponseMessage.MYPAGE_SUCCESS, new GetProfileResDto(userNickname)), HttpStatus.OK); + return new ResponseEntity(DefaultRes.res(StatusCode.OK, ResponseMessage.MY_PROFILE_SUCCESS, new GetProfileResDto(userNickname)), HttpStatus.OK); } catch (Exception e) { return new ResponseEntity(DefaultRes.res(StatusCode.INTERNAL_SERVER_ERROR, ResponseMessage.INTERNAL_SERVER_ERROR, "Error Profile"), HttpStatus.INTERNAL_SERVER_ERROR); } @@ -113,4 +113,16 @@ public ResponseEntity postTown(@PathVariable("userId") Long userId, @RequestBody return new ResponseEntity(DefaultRes.res(StatusCode.INTERNAL_SERVER_ERROR, ResponseMessage.INTERNAL_SERVER_ERROR, "Error User Town"), HttpStatus.INTERNAL_SERVER_ERROR); } } + + @GetMapping("/{userId}/mypage") + @ApiOperation(value = "회원 프로필", notes = "회원 프로필 API") + public ResponseEntity getMypage(@PathVariable("userId") Long userId) { + try { + String user_id = userService.mypage(userId); + System.out.println(user_id); + return new ResponseEntity(DefaultRes.res(StatusCode.OK, ResponseMessage.MYPAGE_SUCCESS, new GetMypageResDto(user_id)), HttpStatus.OK); + } catch (Exception e) { + return new ResponseEntity(DefaultRes.res(StatusCode.INTERNAL_SERVER_ERROR, ResponseMessage.INTERNAL_SERVER_ERROR, "Error Profile"), HttpStatus.INTERNAL_SERVER_ERROR); + } + } } diff --git a/src/main/java/com/zatch/zatchserver/dto/GetMypageResDto.java b/src/main/java/com/zatch/zatchserver/dto/GetMypageResDto.java new file mode 100644 index 0000000..db82805 --- /dev/null +++ b/src/main/java/com/zatch/zatchserver/dto/GetMypageResDto.java @@ -0,0 +1,10 @@ +package com.zatch.zatchserver.dto; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public class GetMypageResDto { + private String user_mypage; +} diff --git a/src/main/java/com/zatch/zatchserver/dto/GetProfileResDto.java b/src/main/java/com/zatch/zatchserver/dto/GetProfileResDto.java index a365605..d8f6191 100644 --- a/src/main/java/com/zatch/zatchserver/dto/GetProfileResDto.java +++ b/src/main/java/com/zatch/zatchserver/dto/GetProfileResDto.java @@ -6,7 +6,7 @@ @Getter @AllArgsConstructor public class GetProfileResDto { - private String nickname; + private String user_profile; // 별점 // 한 줄 후기 리스트 // 나의 재치 현황 리스트 diff --git a/src/main/java/com/zatch/zatchserver/repository/JdbcUserRepository.java b/src/main/java/com/zatch/zatchserver/repository/JdbcUserRepository.java index 8ea0748..9a33c1e 100644 --- a/src/main/java/com/zatch/zatchserver/repository/JdbcUserRepository.java +++ b/src/main/java/com/zatch/zatchserver/repository/JdbcUserRepository.java @@ -139,4 +139,17 @@ public String insertToken(Long userId, String token) { } } + @Override + public List> getMypage(Long userId) { + try { + String sql = "SELECT user.user_id, user.nickname, COUNT(*) AS zatch_count, (SELECT COUNT(zatch_like.zatch_id) AS zatch_like_count FROM zatch.zatch_like WHERE user_id = 6) AS zatch_like_count " + + "FROM zatch.zatch AS A LEFT JOIN zatch.user on user.user_id = A.user_id WHERE user.user_id = ?;"; + Object[] params = {userId}; + System.out.println("User's My Page SQL select"); + return jdbcTemplate.queryForList(sql, params); + } catch (Exception e){ + throw new ResponseStatusException(HttpStatus.INTERNAL_SERVER_ERROR, "User My Page Not Found"); + } + } + } diff --git a/src/main/java/com/zatch/zatchserver/repository/UserRepository.java b/src/main/java/com/zatch/zatchserver/repository/UserRepository.java index 789734d..7a32150 100644 --- a/src/main/java/com/zatch/zatchserver/repository/UserRepository.java +++ b/src/main/java/com/zatch/zatchserver/repository/UserRepository.java @@ -23,4 +23,6 @@ public interface UserRepository { String townInsert(Long userId, String town); String insertToken(Long userId, String token); + + List> getMypage(Long userId); } diff --git a/src/main/java/com/zatch/zatchserver/service/UserService.java b/src/main/java/com/zatch/zatchserver/service/UserService.java index ee71f4b..3bae0ae 100644 --- a/src/main/java/com/zatch/zatchserver/service/UserService.java +++ b/src/main/java/com/zatch/zatchserver/service/UserService.java @@ -22,4 +22,5 @@ public interface UserService { String town(Long userId, String town); String token(Long userId, String token); + String mypage(Long userId); } diff --git a/src/main/java/com/zatch/zatchserver/service/UserServiceImpl.java b/src/main/java/com/zatch/zatchserver/service/UserServiceImpl.java index a6df104..d5e29c2 100644 --- a/src/main/java/com/zatch/zatchserver/service/UserServiceImpl.java +++ b/src/main/java/com/zatch/zatchserver/service/UserServiceImpl.java @@ -57,4 +57,9 @@ public String town(Long userId, String town) { public String token(Long userId, String token) { return userRepository.insertToken(userId, token); } + + @Override + public String mypage(Long userId) { + return String.valueOf(userRepository.getMypage(userId)); + } }