-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[feat] #190 - Admin 기능 구현 #208
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- service에서 application으
- 리프레시 토큰이 만료된 경우, generateAccessTokenFromRefreshToken 메서드에서 만료 에러 반환을 추가. - 사용자의 Role (Admin 또는 Member)에 따라 각각의 권한으로 새로운 Access Token을 발급하도록 수정. - generateLoginSuccessResponse 메서드에서 로그인 성공 시 사용자 역할에 따라 인증 객체를 생성하고, Access 및 Refresh 토큰을 발급.
- Spring Security의 UsernamePasswordAuthenticationToken을 상속하여, 관리자 권한을 포함한 인증 객체 생성 가능.
- JWT 토큰 발급 시 사용자 정보(memberId)와 역할(role)을 포함한 클레임 생성. - getMemberIdFromJwt 및 getRoleFromJwt 메서드를 통해 토큰에서 사용자 정보와 역할을 추출하는 기능 구현. - "ROLE_" 접두사를 제거한 후, 역할을 추출하여 Role Enum에 맞게 변환하는 로직 추가.
…가 DB에 존재하는지 확인하는 로직 추가
…한 presignedUrl을 발급하는 응답 DTO 역할에 맞게 레코드 rename
…ce로 rename 및 ifPresentOrElse로 가독성 개선
…경으로 인한 반환 레코드명 수정
hyerinhwang-sailin
approved these changes
Sep 10, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
큰 작업이었을텐데 정말 고생많으셨습니다!
memberService도 세분화해서 분리하고 이름을 수정하니 가독성이 더 좋네요~
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related issue 🛠
Work Description ✏️
리드 회의 결과 admin 기능의 경우 디자이너와 프론트와 협업해 관리자 페이지를 작업하기로 결정을 하여서 기능 구현 위주로 작업을 진행하였습니다!
어드민 기능 제작 작업을 하면서, 기존에 의존하는 클래스들이 많아 대규모 리팩토링을 하게 되었습니다.
따라서 수정사항이 많아졌는데, 감안하고 봐주시면 감사하겠습니다.... (죄송합니다 ㅠㅠ)
1. 기존 공연 메이커를 위한 presigned-url 응답 방식 변경
2. 전반적인 서비스 로직 리팩토링
3. 어드민 기능 도입
Trouble Shooting ⚽️
Related ScreenShot 📷
공연 메이커 presignedUrl json 응답 리팩토링 (bucket 주소가 있어서 url 부분은 안보이게 캡쳐했습니다!)
캐러셀 presignedUrl 구현(bucket 주소가 있어서 url 부분은 안보이게 캡쳐했습니다!)
배너 presignedUrl 구현(bucket 주소가 있어서 url 부분은 안보이게 캡쳐했습니다!)
관리자 페이지에서 유저 정보 조회
비회원 예매 시 유저(비회원)의 권한을 USER로 저장하도록 구현
소셜 회원가입/로그인 시 토큰에 ROLE을 부여하고 반환하도록 구현
어드민 권한 부여
Uncompleted Tasks 😅
현재 PR 볼륨이 커서 해당 작업은 새롭게 issue 파고, pr 올리겠습니다!
To Reviewers 📢