Skip to content

Commit

Permalink
Merge pull request #48 from KB4-3-sinsaimdang/FEAT]#41-Banking-Update…
Browse files Browse the repository at this point in the history
…-Func

[FIX] User Insert Response
  • Loading branch information
Hamburg-Whale authored Sep 12, 2023
2 parents 4d6be73 + 8988aff commit b7b86eb
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 38 deletions.
50 changes: 38 additions & 12 deletions src/main/java/kb/wgwg/controller/UserController.java
Original file line number Diff line number Diff line change
Expand Up @@ -44,24 +44,50 @@ public ResponseEntity<BaseResponseDTO> 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<BaseResponseDTO> 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<BaseResponseDTO> 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<BaseResponseDTO> insert(@RequestBody UserInsertRequestDTO dto){
BaseResponseDTO<UserReadResponseDTO> 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}")
Expand Down
35 changes: 9 additions & 26 deletions src/main/java/kb/wgwg/service/UserService.java
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
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;
import org.modelmapper.ModelMapper;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import javax.persistence.EntityManager;
import javax.persistence.EntityNotFoundException;
import java.util.Optional;

Expand All @@ -18,6 +20,7 @@ public class UserService {

private final ModelMapper modelMapper;
private final UserRepository userRepository;
private final EntityManager entityManager;

public UserLoginResponseDTO login(UserLoginRequestDTO dto) {

Expand All @@ -28,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<User> theUser = userRepository.findById(dto.getUserSeq());
Expand All @@ -40,45 +42,26 @@ 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이 사용중일 경우
return true;
return false;
}

/**
* 닉네임 중복검사 : 중복일 경우 true
* @param nickName
* @return boolean
*/
public boolean checkNickNameDup(String nickName){
User user = userRepository.findByNickName(nickName);
if(user != null) // nickName 이 사용중일 경우
return true;
return false;
}

/**
* User테이블에 등록 : 성공시 true
* @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) {
Expand Down

0 comments on commit b7b86eb

Please sign in to comment.