File tree Expand file tree Collapse file tree 3 files changed +13
-0
lines changed
src/main/java/org/tuna/zoopzoop/backend/domain Expand file tree Collapse file tree 3 files changed +13
-0
lines changed Original file line number Diff line number Diff line change 55import org .tuna .zoopzoop .backend .domain .auth .entity .RefreshToken ;
66import org .tuna .zoopzoop .backend .domain .member .entity .Member ;
77
8+ import java .util .List ;
89import java .util .Optional ;
910
1011@ Repository
1112public interface RefreshTokenRepository extends JpaRepository <RefreshToken , Integer > {
1213 Optional <RefreshToken > findBySessionId (String sessionId );
1314 Optional <RefreshToken > findByMember (Member member );
15+ List <RefreshToken > findAllByMember (Member member );
1416}
Original file line number Diff line number Diff line change 1111import java .time .LocalDateTime ;
1212import java .time .ZoneId ;
1313import java .util .Date ;
14+ import java .util .List ;
1415import java .util .UUID ;
1516
1617@ Service
@@ -51,4 +52,11 @@ public void deleteBySessionId(String sessionId) {
5152 refreshTokenRepository .findBySessionId (sessionId )
5253 .orElseThrow (() -> new BadCredentialsException ("잘못된 요청입니다." ));
5354 }
55+
56+ public void deleteByMember (Member member ) {
57+ List <RefreshToken > tokens = refreshTokenRepository .findAllByMember (member );
58+ if (!tokens .isEmpty ()) {
59+ refreshTokenRepository .deleteAll (tokens );
60+ }
61+ }
5462}
Original file line number Diff line number Diff line change 88import org .springframework .http .ResponseEntity ;
99import org .springframework .security .core .annotation .AuthenticationPrincipal ;
1010import org .springframework .web .bind .annotation .*;
11+ import org .tuna .zoopzoop .backend .domain .auth .service .RefreshTokenService ;
1112import org .tuna .zoopzoop .backend .domain .member .dto .req .ReqBodyForEditMember ;
1213import org .tuna .zoopzoop .backend .domain .member .dto .req .ReqBodyForEditMemberName ;
1314import org .tuna .zoopzoop .backend .domain .member .dto .req .ReqBodyForEditMemberProfileImage ;
2526@ Tag (name = "ApiV1MemberController" , description = "사용자 REST API 컨트롤러" )
2627public class ApiV1MemberController {
2728 private final MemberService memberService ;
29+ private final RefreshTokenService refreshTokenService ;
2830 /// api/v1/member/me : 사용자 정보 조회 (GET)
2931 /// api/v1/member/edit : 사용자 닉네임 수정 (PUT)
3032 /// api/v1/member : 사용자 탈퇴 (DELETE)
@@ -145,6 +147,7 @@ public ResponseEntity<RsData<Void>> deleteMember(
145147 @ AuthenticationPrincipal CustomUserDetails userDetails
146148 ) {
147149 Member member = userDetails .getMember ();
150+ refreshTokenService .deleteByMember (member );
148151 memberService .hardDeleteMember (member );
149152 return ResponseEntity
150153 .status (HttpStatus .OK )
You can’t perform that action at this time.
0 commit comments