From 4446108c5fe489c73d5c42166ab3b95dedfe5104 Mon Sep 17 00:00:00 2001 From: MinJi Kim Date: Tue, 7 Jan 2025 18:22:42 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=ED=9A=8C=EC=9B=90=EA=B0=80=EC=9E=85=20?= =?UTF-8?q?=EB=8B=A8=EA=B3=84=20=EC=9D=91=EB=8B=B5=20=EC=88=98=EC=A0=95=20?= =?UTF-8?q?(#206)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CoffeeChat/controller/UserController.java | 10 +++------- .../CoffeeChat/dto/PhoneNumUpdateDto.java | 16 ++++++++++++++++ .../dto/UserController/MenteeInfoDto.java | 2 ++ .../dto/UserController/MentorInfoDto.java | 2 ++ .../service/CustomOAuth2UserService.java | 2 +- .../soongsil/CoffeeChat/service/UserService.java | 15 ++++++++------- 6 files changed, 32 insertions(+), 15 deletions(-) create mode 100644 src/main/java/com/soongsil/CoffeeChat/dto/PhoneNumUpdateDto.java diff --git a/src/main/java/com/soongsil/CoffeeChat/controller/UserController.java b/src/main/java/com/soongsil/CoffeeChat/controller/UserController.java index 96949e5..b6a907d 100644 --- a/src/main/java/com/soongsil/CoffeeChat/controller/UserController.java +++ b/src/main/java/com/soongsil/CoffeeChat/controller/UserController.java @@ -5,20 +5,16 @@ import java.net.URI; import java.util.Map; +import com.soongsil.CoffeeChat.dto.*; import org.springframework.http.ResponseEntity; import org.springframework.security.core.Authentication; import org.springframework.web.bind.annotation.*; import com.soongsil.CoffeeChat.controller.handler.ApiResponseGenerator; -import com.soongsil.CoffeeChat.dto.MenteeJoinRequestDto; -import com.soongsil.CoffeeChat.dto.MentorJoinRequestDto; import com.soongsil.CoffeeChat.dto.Oauth.CustomOAuth2User; import com.soongsil.CoffeeChat.dto.UserController.MenteeInfoDto; import com.soongsil.CoffeeChat.dto.UserController.MentorInfoDto; import com.soongsil.CoffeeChat.dto.UserController.UserInfoDto; -import com.soongsil.CoffeeChat.dto.UserGetDto; -import com.soongsil.CoffeeChat.dto.UserJoinRequestDto; -import com.soongsil.CoffeeChat.dto.UserUpdateDto; import com.soongsil.CoffeeChat.repository.User.UserRepository; import com.soongsil.CoffeeChat.service.UserService; @@ -124,8 +120,8 @@ public ResponseEntity>> getSmsCode(Auth @PatchMapping("/phone") @Operation(summary = "번호 저장하기") @ApiResponse(responseCode = "200", description = "성공!") - public ResponseEntity> saveUserPhone(Authentication authentication, - @RequestParam("phoneNum") String phoneNum) throws Exception { + public ResponseEntity> saveUserPhone(Authentication authentication, + @RequestParam("phoneNum") String phoneNum) throws Exception { return ResponseEntity.created(URI.create(USER_URI + "/phone")).body( ApiResponseGenerator.onSuccessOK( userService.saveUserPhone(phoneNum, getUserNameByAuthentication(authentication)) diff --git a/src/main/java/com/soongsil/CoffeeChat/dto/PhoneNumUpdateDto.java b/src/main/java/com/soongsil/CoffeeChat/dto/PhoneNumUpdateDto.java new file mode 100644 index 0000000..e164bc2 --- /dev/null +++ b/src/main/java/com/soongsil/CoffeeChat/dto/PhoneNumUpdateDto.java @@ -0,0 +1,16 @@ +package com.soongsil.CoffeeChat.dto; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; + +@Builder +@NoArgsConstructor +@AllArgsConstructor +@Getter +public class PhoneNumUpdateDto { + private String name; + private String phoneNum; //전화번호 + private boolean isNewAccount; +} diff --git a/src/main/java/com/soongsil/CoffeeChat/dto/UserController/MenteeInfoDto.java b/src/main/java/com/soongsil/CoffeeChat/dto/UserController/MenteeInfoDto.java index db5c27b..16e9a3c 100644 --- a/src/main/java/com/soongsil/CoffeeChat/dto/UserController/MenteeInfoDto.java +++ b/src/main/java/com/soongsil/CoffeeChat/dto/UserController/MenteeInfoDto.java @@ -13,10 +13,12 @@ @Getter public class MenteeInfoDto { private PartEnum part; + private boolean isNewAccount; public static MenteeInfoDto toDto(Mentee mentee){ return MenteeInfoDto.builder() .part(mentee.getPart()) + .isNewAccount(false) .build(); } } diff --git a/src/main/java/com/soongsil/CoffeeChat/dto/UserController/MentorInfoDto.java b/src/main/java/com/soongsil/CoffeeChat/dto/UserController/MentorInfoDto.java index ddd102e..ddbed37 100644 --- a/src/main/java/com/soongsil/CoffeeChat/dto/UserController/MentorInfoDto.java +++ b/src/main/java/com/soongsil/CoffeeChat/dto/UserController/MentorInfoDto.java @@ -18,12 +18,14 @@ public class MentorInfoDto { private PartEnum part; private ClubEnum club; private Long introductionId; + private boolean isNewAccount; public static MentorInfoDto toDto(Mentor mentor){ return MentorInfoDto.builder() .part(mentor.getPart()) .club(mentor.getClub()) .introductionId(mentor.getIntroduction().getId()) + .isNewAccount(false) .build(); } } diff --git a/src/main/java/com/soongsil/CoffeeChat/service/CustomOAuth2UserService.java b/src/main/java/com/soongsil/CoffeeChat/service/CustomOAuth2UserService.java index a1b60f5..2530149 100644 --- a/src/main/java/com/soongsil/CoffeeChat/service/CustomOAuth2UserService.java +++ b/src/main/java/com/soongsil/CoffeeChat/service/CustomOAuth2UserService.java @@ -118,7 +118,7 @@ public MobileTokenResponseDTO verifyGoogleToken(String accessToken, String name) if (existingUser.isPresent()) { // 기존 사용자: Role 정보 가져오기 role = existingUser.get().getRole(); - isNewAccount = false; + isNewAccount = true; log.info("Existing user found: " + username); } else { // 새로운 사용자: Role 기본값 설정 diff --git a/src/main/java/com/soongsil/CoffeeChat/service/UserService.java b/src/main/java/com/soongsil/CoffeeChat/service/UserService.java index 9d5a12e..2744c14 100644 --- a/src/main/java/com/soongsil/CoffeeChat/service/UserService.java +++ b/src/main/java/com/soongsil/CoffeeChat/service/UserService.java @@ -5,18 +5,14 @@ import java.util.HashMap; import java.util.Map; +import com.soongsil.CoffeeChat.dto.*; import com.soongsil.CoffeeChat.dto.Oauth.MobileUserDTO; import org.springframework.stereotype.Service; import com.soongsil.CoffeeChat.controller.exception.CustomException; -import com.soongsil.CoffeeChat.dto.MenteeJoinRequestDto; -import com.soongsil.CoffeeChat.dto.MentorJoinRequestDto; import com.soongsil.CoffeeChat.dto.UserController.MenteeInfoDto; import com.soongsil.CoffeeChat.dto.UserController.MentorInfoDto; import com.soongsil.CoffeeChat.dto.UserController.UserInfoDto; -import com.soongsil.CoffeeChat.dto.UserGetDto; -import com.soongsil.CoffeeChat.dto.UserJoinRequestDto; -import com.soongsil.CoffeeChat.dto.UserUpdateDto; import com.soongsil.CoffeeChat.entity.Introduction; import com.soongsil.CoffeeChat.entity.Mentee; import com.soongsil.CoffeeChat.entity.Mentor; @@ -103,10 +99,15 @@ public Map getSmsCode(String to) { } } - public UserInfoDto saveUserPhone(String phone, String username) { + public PhoneNumUpdateDto saveUserPhone(String phone, String username) { User user = findUserByUsername(username); user.setPhoneNum(phone); - return UserInfoDto.toDto(userRepository.save(user)); + userRepository.save(user); + return PhoneNumUpdateDto.builder() + .name(user.getName()) + .phoneNum(user.getPhoneNum()) + .isNewAccount(true) + .build(); } public UserInfoDto saveUserEmail(String email, String username) {