Skip to content

Commit 90766fe

Browse files
committed
✨ 권한확인 API
1 parent e6423b7 commit 90766fe

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

src/main/java/com/boggle_boggle/bbegok/controller/UserController.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,12 @@ public DataResponseDto<Boolean> isNicknameAvailable(@AuthenticationPrincipal Use
4343
return DataResponseDto.of(userService.isNicknameAvailable(userDetails.getUsername(), nickName));
4444
}
4545

46+
//권한확인
47+
@GetMapping("/authorization")
48+
public DataResponseDto<String> getAuthorization(@AuthenticationPrincipal UserDetails userDetails) {
49+
return DataResponseDto.of(userService.getAuthorization(userDetails.getUsername()));
50+
}
51+
4652
//약관조회
4753
@GetMapping("/terms")
4854
public DataResponseDto<TermsResponse> getLatestTerms(@AuthenticationPrincipal UserDetails userDetails) {

src/main/java/com/boggle_boggle/bbegok/service/UserService.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,18 @@ public boolean isNicknameAvailable(String userId, String nickname) {
5757
else return userRepository.findByUserName(nickname).isEmpty();
5858
}
5959

60+
public String getAuthorization(String userId) {
61+
User user = getUser(userId);
62+
RoleType role = user.getRoleType();
63+
String recentUpdatedVersion = termsRepository.getLatestTermsVersion();
64+
65+
if(role.equals(RoleType.USER)) {
66+
if(user.getAgreedVersion()==null || !user.getAgreedVersion().equals(recentUpdatedVersion)) role = RoleType.LIMITED_USER;
67+
}
68+
69+
return role.toString();
70+
}
71+
6072
//약관동의 및 권한 업데이트
6173
public void agreeToTerms(List<TermsAgreement> termsAgreementList, String userId) {
6274
termsValid(termsAgreementList);

0 commit comments

Comments
 (0)