Skip to content

Commit

Permalink
fix: user mypage info api
Browse files Browse the repository at this point in the history
  • Loading branch information
Jeongh00 committed Aug 1, 2024
1 parent 302e271 commit ddd8546
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

import com.likelion.apimodule.security.util.JwtUtil;
import com.likelion.apimodule.user.dto.KakaoLoginRequest;
import com.likelion.apimodule.user.dto.LoginInfo;
import com.likelion.coremodule.user.application.KakaoIdTokenDecodeService;
import com.likelion.coremodule.user.application.UserQueryService;
import com.likelion.coremodule.user.domain.User;
import com.likelion.coremodule.user.dto.LoginAddResponse;
import com.likelion.coremodule.user.dto.LoginResponse;
Expand All @@ -20,6 +22,7 @@
public class LoginUseCase {

private final KakaoIdTokenDecodeService kakaoIdTokenDecodeService;
private final UserQueryService userQueryService;
private final UserRepository userRepository;
private final JwtUtil jwtUtil;

Expand Down Expand Up @@ -51,6 +54,18 @@ private User createNewKakaoUser(final OidcDecodePayload oidcDecodePayload) {
return userRepository.save(newUser);
}

public LoginInfo getLoginInfo(String accessToken) {

String email = jwtUtil.getEmail(accessToken);
User user = userQueryService.findByEmail(email);

return new LoginInfo(
user.getName(),
user.getPicture(),
user.getEmail()
);
}

@Transactional
public LoginResponse reissueToken(String refreshToken) {

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.likelion.apimodule.user.dto;

public record LoginInfo(
String name,
String picture,
String email
) {
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

import com.likelion.apimodule.user.application.LoginUseCase;
import com.likelion.apimodule.user.dto.KakaoLoginRequest;
import com.likelion.apimodule.user.dto.LoginInfo;
import com.likelion.commonmodule.exception.common.ApplicationResponse;
import com.likelion.commonmodule.exception.jwt.JwtAccessDeniedHandler;
import com.likelion.commonmodule.security.util.AuthConsts;
import com.likelion.coremodule.user.dto.LoginAddResponse;
import com.likelion.coremodule.user.dto.LoginResponse;
Expand All @@ -23,6 +25,7 @@
public class UserController {

private final LoginUseCase loginUseCase;
private final JwtAccessDeniedHandler jwtAccessDeniedHandler;

@PostMapping("/login/kakao")
@ApiResponses(
Expand All @@ -40,6 +43,22 @@ public ApplicationResponse<LoginAddResponse> kakaoLogin(@Valid @RequestBody Kaka
return ApplicationResponse.ok(response);
}

@GetMapping("/mypage")
@ApiResponses(
value = {
@ApiResponse(
responseCode = "200",
description = "마이페이지 정보 전달",
useReturnTypeSchema = true
)
}
)
@Operation(summary = "마이페이지 정보 전달 API", description = "마이페이지 정보 전달 API입니다.")
public ApplicationResponse<LoginInfo> getLoginInfo(@RequestHeader(AuthConsts.ACCESS_TOKEN_HEADER) String accessToken) {
LoginInfo info = loginUseCase.getLoginInfo(accessToken);
return ApplicationResponse.ok(info);
}

@GetMapping("/reissue")
@ApiResponses(
value = {
Expand Down

0 comments on commit ddd8546

Please sign in to comment.