From 7434e3581420b48a9f9a4b2912233aa2f719a579 Mon Sep 17 00:00:00 2001 From: 2020147542 Date: Mon, 17 Feb 2025 18:16:51 +0900 Subject: [PATCH] =?UTF-8?q?=EB=A1=9C=EA=B7=B8=EC=9D=B8=EC=8B=9C=20?= =?UTF-8?q?=ED=94=84=EB=A1=9C=ED=95=84=20=EC=9D=B4=EB=AF=B8=EC=A7=80=20ret?= =?UTF-8?q?urn=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/umc/codeplay/controller/AuthController.java | 11 +++++++++-- .../java/umc/codeplay/converter/MemberConverter.java | 3 ++- src/main/java/umc/codeplay/dto/MemberResponseDTO.java | 1 + src/main/java/umc/codeplay/service/MemberService.java | 7 +++++++ 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/main/java/umc/codeplay/controller/AuthController.java b/src/main/java/umc/codeplay/controller/AuthController.java index c9eade1..2b52c8a 100644 --- a/src/main/java/umc/codeplay/controller/AuthController.java +++ b/src/main/java/umc/codeplay/controller/AuthController.java @@ -68,9 +68,14 @@ public ApiResponse login( String token = jwtUtil.generateToken(authentication.getName(), authorities); String refreshToken = jwtUtil.generateRefreshToken(authentication.getName(), authorities); + String profileImage = memberService.getMemberProfileImage(request.getEmail()); + return ApiResponse.onSuccess( MemberConverter.toLoginResultDTO( - request.getEmail(), token, refreshToken)); // 예시로 토큰만 문자열로 반환 + request.getEmail(), + profileImage, + token, + refreshToken)); // 예시로 토큰만 문자열로 반환 } catch (Exception e) { throw new GeneralHandler(ErrorStatus.ID_OR_PASSWORD_WRONG); } @@ -113,9 +118,11 @@ public ApiResponse refresh( // 새로운 액세스 토큰 생성 String newAccessToken = jwtUtil.generateToken(usernameFromToken, authorities); + String profileImage = memberService.getMemberProfileImage(email); return ApiResponse.onSuccess( - MemberConverter.toLoginResultDTO(usernameFromToken, newAccessToken, null)); + MemberConverter.toLoginResultDTO( + usernameFromToken, profileImage, newAccessToken, null)); } else { throw new GeneralHandler(ErrorStatus.INVALID_REFRESH_TOKEN); } diff --git a/src/main/java/umc/codeplay/converter/MemberConverter.java b/src/main/java/umc/codeplay/converter/MemberConverter.java index 9c27b5d..928c031 100644 --- a/src/main/java/umc/codeplay/converter/MemberConverter.java +++ b/src/main/java/umc/codeplay/converter/MemberConverter.java @@ -33,10 +33,11 @@ public static MemberResponseDTO.JoinResultDTO toJoinResultDTO(Member member) { } public static MemberResponseDTO.LoginResultDTO toLoginResultDTO( - String email, String token, String refreshToken) { + String email, String profileUrl, String token, String refreshToken) { return MemberResponseDTO.LoginResultDTO.builder() .email(email) + .profileUrl(profileUrl) .token(token) .refreshToken(refreshToken) .build(); diff --git a/src/main/java/umc/codeplay/dto/MemberResponseDTO.java b/src/main/java/umc/codeplay/dto/MemberResponseDTO.java index 4388b35..c45fb7c 100644 --- a/src/main/java/umc/codeplay/dto/MemberResponseDTO.java +++ b/src/main/java/umc/codeplay/dto/MemberResponseDTO.java @@ -24,6 +24,7 @@ public static class JoinResultDTO { @AllArgsConstructor public static class LoginResultDTO { String email; + String profileUrl; String token; String refreshToken; } diff --git a/src/main/java/umc/codeplay/service/MemberService.java b/src/main/java/umc/codeplay/service/MemberService.java index 86a8a0f..3362bf2 100644 --- a/src/main/java/umc/codeplay/service/MemberService.java +++ b/src/main/java/umc/codeplay/service/MemberService.java @@ -41,6 +41,13 @@ public class MemberService { "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; private static final SecureRandom RANDOM = new SecureRandom(); + public String getMemberProfileImage(String email) { + return memberRepository + .findByEmail(email) + .orElseThrow(() -> new GeneralHandler(ErrorStatus.MEMBER_NOT_FOUND)) + .getProfileUrl(); + } + public Member joinMember(MemberRequestDTO.JoinDto request) { if (memberRepository.findByEmail(request.getEmail()).isPresent()) {