From 2cc2880b9770927ef65dfb80fc5370fc4bbc0470 Mon Sep 17 00:00:00 2001 From: GimHaLim Date: Sun, 2 Jun 2024 23:02:36 +0900 Subject: [PATCH] =?UTF-8?q?Revert=20"feat:=20=EC=B9=B4=EC=B9=B4=EC=98=A4?= =?UTF-8?q?=20=EC=86=8C=EC=85=9C=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20=EA=B5=AC?= =?UTF-8?q?=ED=98=84"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit d7ab75dbefcddbf0338f60036513b40280c0df2e. --- .../user/application/MemberService.java | 118 ------------------ .../user/application/SecurityService.java | 4 +- .../user/application/response/MypageDto.java | 9 -- .../user/application/response/UserDto.java | 8 +- .../soongsil/poppin/user/domain/Member.java | 10 +- .../poppin/user/domain/UserRepository.java | 2 - .../user/presentation/JWTCheckFilter.java | 13 +- .../user/presentation/SocialController.java | 45 ------- 8 files changed, 12 insertions(+), 197 deletions(-) delete mode 100644 src/main/java/com/soongsil/poppin/user/application/MemberService.java delete mode 100644 src/main/java/com/soongsil/poppin/user/application/response/MypageDto.java delete mode 100644 src/main/java/com/soongsil/poppin/user/presentation/SocialController.java diff --git a/src/main/java/com/soongsil/poppin/user/application/MemberService.java b/src/main/java/com/soongsil/poppin/user/application/MemberService.java deleted file mode 100644 index c8b7dd7..0000000 --- a/src/main/java/com/soongsil/poppin/user/application/MemberService.java +++ /dev/null @@ -1,118 +0,0 @@ -package com.soongsil.poppin.user.application; - -import com.soongsil.poppin.user.application.response.MypageDto; -import com.soongsil.poppin.user.application.response.UserDto; -import com.soongsil.poppin.user.domain.Member; -import com.soongsil.poppin.user.domain.UserRepository; -import lombok.RequiredArgsConstructor; -import lombok.extern.log4j.Log4j2; -import org.springframework.http.HttpEntity; -import org.springframework.http.HttpHeaders; -import org.springframework.http.HttpMethod; -import org.springframework.http.ResponseEntity; -import org.springframework.security.crypto.password.PasswordEncoder; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.client.RestTemplate; -import org.springframework.web.util.UriComponents; -import org.springframework.web.util.UriComponentsBuilder; -import java.util.LinkedHashMap; -import java.util.Optional; - - -@Service -@RequiredArgsConstructor -@Transactional -@Log4j2 -public class MemberService { - private final UserRepository userRepository; - private final PasswordEncoder passwordEncoder; - UserDto entityToDTO(Member member) { - - UserDto dto = new UserDto( - member.getUserId(), - member.getName(), - member.getEmail(), - member.getPassword(), - member.getNickName(), - member.isSocial()); - - return dto; - } - - public void modifyNickname(MypageDto mypageDto) { - Optional result = userRepository.findById(mypageDto.getId()); - - Member member = result.orElseThrow(); - member.setNickName(mypageDto.getNickname()); - - userRepository.save(member); - } - - - public UserDto getKakaoMember(String accessToken) { - // accessToken을 이용해서 사용자 정보(닉네임) 가져오기 - String nickname = getNicknameFromKakaoAccessToken(accessToken); - - // 기존에 DB에 회원 정보가 있는 경우 - Member result = userRepository.findBynickName(nickname); - if(result != null) { - UserDto userDto = entityToDTO(result); - - log.info("exits,,,,,,,,,,," + userDto); - return userDto; - } - - Member socialMember = makeSocialMember(nickname); - userRepository.save(socialMember); - - UserDto userDto = entityToDTO(socialMember); - return userDto; - } - - private Member makeSocialMember(String nickname) { - String tempPassword = makeTempPassword(); - log.info("tempPassword: " + tempPassword); - - Member member = Member.builder() - .name("kakao 회원입니다.") - .email("kakao 회원입니다.") - .password(passwordEncoder.encode(tempPassword)) - .nickName(nickname) - .social(true) - .build(); - - return member; - } - - private String getNicknameFromKakaoAccessToken(String accessToken) { - String kakaoGetUserURL = "https://kapi.kakao.com/v2/user/me"; - - RestTemplate restTemplate = new RestTemplate(); - - HttpHeaders headers = new org.springframework.http.HttpHeaders(); - headers.add("Authorization", "Bearer " + accessToken); - headers.add("Content-type", "Content-type: application/x-www-form-urlencoded;charset=utf-8"); - - HttpEntity entity = new HttpEntity<>(headers); - UriComponents uriComponents = UriComponentsBuilder.fromHttpUrl(kakaoGetUserURL).build(); - - ResponseEntity response = - restTemplate.exchange(uriComponents.toUri(), HttpMethod.GET, entity, LinkedHashMap.class); - - LinkedHashMap bodyMap = response.getBody(); - LinkedHashMap kakaoAccount = bodyMap.get("properties"); - String nickname = kakaoAccount.get("nickname"); - - return nickname; - } - - private String makeTempPassword() { - StringBuffer buffer = new StringBuffer(); - - for(int i = 0; i < 8; i++) { - buffer.append((char) ((int)(Math.random()*55) + 66)); - } - return buffer.toString(); - } -} diff --git a/src/main/java/com/soongsil/poppin/user/application/SecurityService.java b/src/main/java/com/soongsil/poppin/user/application/SecurityService.java index adb0378..1ef1753 100644 --- a/src/main/java/com/soongsil/poppin/user/application/SecurityService.java +++ b/src/main/java/com/soongsil/poppin/user/application/SecurityService.java @@ -90,12 +90,10 @@ public UserDetails loadUserByUsername(String username) throws UsernameNotFoundEx } UserDto userDto = new UserDto( - member.getUserId(), member.getName(), member.getEmail(), member.getPassword(), - member.getNickName(), - member.isSocial() + member.getNickName() ); log.info(userDto); diff --git a/src/main/java/com/soongsil/poppin/user/application/response/MypageDto.java b/src/main/java/com/soongsil/poppin/user/application/response/MypageDto.java deleted file mode 100644 index 955277f..0000000 --- a/src/main/java/com/soongsil/poppin/user/application/response/MypageDto.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.soongsil.poppin.user.application.response; - -import lombok.Data; - -@Data -public class MypageDto { - private Long id; - private String nickname; -} diff --git a/src/main/java/com/soongsil/poppin/user/application/response/UserDto.java b/src/main/java/com/soongsil/poppin/user/application/response/UserDto.java index 9432226..647dde3 100644 --- a/src/main/java/com/soongsil/poppin/user/application/response/UserDto.java +++ b/src/main/java/com/soongsil/poppin/user/application/response/UserDto.java @@ -7,35 +7,29 @@ import java.util.Map; public class UserDto extends User { - Long id; private String name, email, password, nickname, role; - private boolean social; - public UserDto(Long id, String name, String email, String password, String nickname, boolean social) { + public UserDto(String name, String email, String password, String nickname) { super( email, password, Collections.singleton(new SimpleGrantedAuthority("ROLE_USER")) ); - this.id = id; this.name = name; this.email = email; this.password = password; this.nickname = nickname; this.role = "ROLE_USER"; - this.social = social; } public Map getClaims() { Map dataMap = new HashMap<>(); - dataMap.put("id", id); dataMap.put("name", name); dataMap.put("email", email); dataMap.put("password", password); dataMap.put("nickname", nickname); dataMap.put("role", role); - dataMap.put("social", social); return dataMap; } diff --git a/src/main/java/com/soongsil/poppin/user/domain/Member.java b/src/main/java/com/soongsil/poppin/user/domain/Member.java index 464ec50..988fbae 100644 --- a/src/main/java/com/soongsil/poppin/user/domain/Member.java +++ b/src/main/java/com/soongsil/poppin/user/domain/Member.java @@ -3,13 +3,15 @@ import com.soongsil.poppin.heart.domain.Heart; import com.soongsil.poppin.userchat.domain.UserChat; import jakarta.persistence.*; -import lombok.*; +import lombok.AccessLevel; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; import java.time.LocalDateTime; import java.util.List; @Getter -@Setter @Entity @Table(name="user") @NoArgsConstructor(access = AccessLevel.PROTECTED) @@ -49,13 +51,11 @@ public class Member { private List userChat; @Builder - public Member(String name, String email, String password, String nickName, boolean social) - { + public Member(String name, String email, String password, String nickName){ this.name = name; this.email =email; this.password = password; this.nickName = nickName; - this.social = social; } @PrePersist diff --git a/src/main/java/com/soongsil/poppin/user/domain/UserRepository.java b/src/main/java/com/soongsil/poppin/user/domain/UserRepository.java index 734c331..f371666 100644 --- a/src/main/java/com/soongsil/poppin/user/domain/UserRepository.java +++ b/src/main/java/com/soongsil/poppin/user/domain/UserRepository.java @@ -9,6 +9,4 @@ public interface UserRepository extends JpaRepository { @Query("select m from Member m where m.email = :email") Member getWithEmail(@Param("email") String email); - - Member findBynickName(String nickName); } diff --git a/src/main/java/com/soongsil/poppin/user/presentation/JWTCheckFilter.java b/src/main/java/com/soongsil/poppin/user/presentation/JWTCheckFilter.java index c895b60..a106e48 100644 --- a/src/main/java/com/soongsil/poppin/user/presentation/JWTCheckFilter.java +++ b/src/main/java/com/soongsil/poppin/user/presentation/JWTCheckFilter.java @@ -36,11 +36,10 @@ protected boolean shouldNotFilter(HttpServletRequest request) throws ServletExce return true; } - //이미지 조회 경로는 체크하지 않는다면 - if(path.startsWith("/v1/popup/random-images")) { - log.info("건너뛰기"); - return true; - } +// //이미지 조회 경로는 체크하지 않는다면 +// if(path.startsWith("/api/products/view/")) { +// return true; +// } return false; } @@ -58,14 +57,12 @@ protected void doFilterInternal(HttpServletRequest request, HttpServletResponse Map claims = JWTUtil.validateToken(token); System.out.println("JWT claims: " + claims); - Long id = (Long) claims.get("id"); String name = (String) claims.get("name"); String email = (String) claims.get("email"); String password = (String) claims.get("password"); String nickname = (String) claims.get("nickname"); - boolean social = (boolean) claims.get("social"); - UserDto userDto = new UserDto(id, name, email, password, nickname, social); + UserDto userDto = new UserDto(name, email, password, nickname); log.info("-----------------------------------"); log.info(userDto); diff --git a/src/main/java/com/soongsil/poppin/user/presentation/SocialController.java b/src/main/java/com/soongsil/poppin/user/presentation/SocialController.java deleted file mode 100644 index 70db5a0..0000000 --- a/src/main/java/com/soongsil/poppin/user/presentation/SocialController.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.soongsil.poppin.user.presentation; - -import com.soongsil.poppin.user.application.MemberService; -import com.soongsil.poppin.user.application.response.JWTUtil; -import com.soongsil.poppin.user.application.response.MypageDto; -import com.soongsil.poppin.user.application.response.UserDto; -import com.soongsil.poppin.user.domain.Member; -import lombok.RequiredArgsConstructor; -import lombok.extern.log4j.Log4j2; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.util.Map; - -@RestController -@RequiredArgsConstructor -@Log4j2 -public class SocialController { - private final MemberService memberService; - - @GetMapping("/v1/user/kakao") - public Map getMemberFromKakao(String accessToken) { - log.info("accessToken: " + accessToken); - UserDto userDto = memberService.getKakaoMember(accessToken); - - Map claims = userDto.getClaims(); - - String jwtAccessToken = JWTUtil.generateToken(claims, 10); - String jwtRefreshToken = JWTUtil.generateToken(claims, 60*10); - - claims.put("accessToken", jwtAccessToken); - claims.put("refreshToken", jwtRefreshToken); - - return claims; - } - - @PutMapping("/v1/nickname/modify") - public Map modify (@RequestBody MypageDto mypageDto) { - log.info("member modify-------------" + mypageDto); - memberService.modifyNickname(mypageDto); - - return Map.of("result", "modified"); - } -}