From 8d8ee36ff1dfe25fcc180964e2b8ee64e67258f1 Mon Sep 17 00:00:00 2001 From: JongHan Jeon Date: Tue, 12 Sep 2023 11:19:11 +0900 Subject: [PATCH 1/2] [FIX] User Response update -> updateBankingHistory --- .../kb/wgwg/controller/UserController.java | 50 ++++++++++++++----- .../java/kb/wgwg/service/UserService.java | 17 +++---- 2 files changed, 46 insertions(+), 21 deletions(-) diff --git a/src/main/java/kb/wgwg/controller/UserController.java b/src/main/java/kb/wgwg/controller/UserController.java index 3b1be04..72e8531 100644 --- a/src/main/java/kb/wgwg/controller/UserController.java +++ b/src/main/java/kb/wgwg/controller/UserController.java @@ -44,24 +44,50 @@ public ResponseEntity readById(@RequestBody UserReadRequestDTO @GetMapping("/{email}/check/email") - public ResponseEntity checkEmailDup(@PathVariable String email){ - if(userService.checkEmailDup(email)) - return ResponseEntity.status(400).body("{\"status\": 400, \"success\": false, \"message\": \"이메일 중복\"}"); - return ResponseEntity.ok().body("{\"status\": 200, \"success\": true, \"message\": \"이메일 사용 가능\"}"); + public ResponseEntity checkEmailDup(@PathVariable String email){ + BaseResponseDTO result = new BaseResponseDTO<>(); + if(userService.checkEmailDup(email)){ + result.setStatus(404); + result.setSuccess(false); + result.setMessage("이메일 중복."); + }else{ + result.setStatus(200); + result.setSuccess(true); + result.setMessage("이메일 사용 가능."); + } + return ResponseEntity.ok(result); } @GetMapping("/{nickName}/check/nickname") - public ResponseEntity checkNickNameDup(@PathVariable String nickName){ - if(userService.checkNickNameDup(nickName)) - return ResponseEntity.status(400).body("{\"status\": 400, \"success\": false, \"message\": \"닉네임 중복\"}"); - return ResponseEntity.ok().body("{\"status\": 200, \"success\": true, \"message\": \"닉네임 사용 가능\"}"); + public ResponseEntity checkNickNameDup(@PathVariable String nickName){ + BaseResponseDTO result = new BaseResponseDTO<>(); + if(userService.checkNickNameDup(nickName)){ + result.setStatus(404); + result.setSuccess(false); + result.setMessage("닉네임 중복."); + }else{ + result.setStatus(200); + result.setSuccess(true); + result.setMessage("닉네임 사용 가능."); + } + return ResponseEntity.ok(result); } @PostMapping("/insert") - public ResponseEntity insert(@RequestBody UserInsertRequestDTO dto){ - if(userService.insertUser(dto)) - return ResponseEntity.ok().body("{\"status\": 200, \"success\": true, \"message\": \"회원가입 성공\"}"); - return ResponseEntity.status(400).body("{\"status\": 400, \"success\": false, \"message\": \"회원가입 실패\"}"); + public ResponseEntity insert(@RequestBody UserInsertRequestDTO dto){ + BaseResponseDTO result = new BaseResponseDTO<>(); + try{ + UserReadResponseDTO insertResult = userService.insertUser(dto); + result.setMessage("유저 등록 완료."); + result.setStatus(200); + result.setSuccess(true); + result.setData(insertResult); + } catch (Exception e){ + result.setMessage(e.getMessage()); + result.setSuccess(false); + result.setStatus(500); + } + return ResponseEntity.ok(result); } @DeleteMapping(value = "/delete/{id}") diff --git a/src/main/java/kb/wgwg/service/UserService.java b/src/main/java/kb/wgwg/service/UserService.java index 81c4915..4cafcb4 100644 --- a/src/main/java/kb/wgwg/service/UserService.java +++ b/src/main/java/kb/wgwg/service/UserService.java @@ -1,6 +1,7 @@ package kb.wgwg.service; import kb.wgwg.domain.User; +import kb.wgwg.dto.ArticleDTO; import kb.wgwg.dto.UserDTO.*; import kb.wgwg.repository.UserRepository; import lombok.RequiredArgsConstructor; @@ -8,6 +9,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.persistence.EntityManager; import javax.persistence.EntityNotFoundException; import java.util.Optional; @@ -18,6 +20,7 @@ public class UserService { private final ModelMapper modelMapper; private final UserRepository userRepository; + private final EntityManager entityManager; public UserLoginResponseDTO login(UserLoginRequestDTO dto) { @@ -69,16 +72,12 @@ public boolean checkNickNameDup(String nickName){ * @param dto * @return boolean */ - public boolean insertUser(UserInsertRequestDTO dto) { + public UserReadResponseDTO insertUser(UserInsertRequestDTO dto) { User user = modelMapper.map(dto, User.class); - try { - userRepository.save(user); - return true; - } catch (Exception e) { - e.printStackTrace(); - System.out.println("userService " + e.getMessage()); - } - return false; + User savedUser = userRepository.save(user); + entityManager.flush(); //insertDate + UserReadResponseDTO result = modelMapper.map(savedUser, UserReadResponseDTO.class); + return modelMapper.map(result, UserReadResponseDTO.class); } public void deleteUser(Long id) { From 8988aff98816387a29550190da943f8455e1f2c3 Mon Sep 17 00:00:00 2001 From: JongHan Jeon Date: Tue, 12 Sep 2023 11:20:33 +0900 Subject: [PATCH 2/2] [FIX] UserService --- src/main/java/kb/wgwg/service/UserService.java | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/src/main/java/kb/wgwg/service/UserService.java b/src/main/java/kb/wgwg/service/UserService.java index 4cafcb4..04b4b0d 100644 --- a/src/main/java/kb/wgwg/service/UserService.java +++ b/src/main/java/kb/wgwg/service/UserService.java @@ -31,8 +31,7 @@ public UserLoginResponseDTO login(UserLoginRequestDTO dto) { UserLoginResponseDTO result = modelMapper.map(theUser, UserLoginResponseDTO.class); return result; } - - + @Transactional(readOnly = true) public UserReadResponseDTO readById(UserReadRequestDTO dto) { Optional theUser = userRepository.findById(dto.getUserSeq()); @@ -43,11 +42,6 @@ public UserReadResponseDTO readById(UserReadRequestDTO dto) { return result; } - /** - * 이메일 중복검사 : 중복일 경우 true - * @param email - * @return boolean - */ public boolean checkEmailDup(String email){ User user = userRepository.findByEmail(email); if(user != null) // email이 사용중일 경우 @@ -55,11 +49,6 @@ public boolean checkEmailDup(String email){ return false; } - /** - * 닉네임 중복검사 : 중복일 경우 true - * @param nickName - * @return boolean - */ public boolean checkNickNameDup(String nickName){ User user = userRepository.findByNickName(nickName); if(user != null) // nickName 이 사용중일 경우 @@ -67,11 +56,6 @@ public boolean checkNickNameDup(String nickName){ return false; } - /** - * User테이블에 등록 : 성공시 true - * @param dto - * @return boolean - */ public UserReadResponseDTO insertUser(UserInsertRequestDTO dto) { User user = modelMapper.map(dto, User.class); User savedUser = userRepository.save(user);