diff --git a/src/main/java/com/capstone/favicon/config/CorsConfig.java b/src/main/java/com/capstone/favicon/config/CorsConfig.java index 18c44ab..f025d5c 100644 --- a/src/main/java/com/capstone/favicon/config/CorsConfig.java +++ b/src/main/java/com/capstone/favicon/config/CorsConfig.java @@ -18,6 +18,7 @@ public CorsConfigurationSource corsConfigurationSource() { configuration.addAllowedOrigin("http://127.0.0.1:3000"); configuration.addAllowedOrigin("http://localhost:3001"); configuration.addAllowedOrigin("http://127.0.0.1:3001"); + configuration.addAllowedOrigin("http://3.35.26.19"); configuration.addAllowedHeader("*"); configuration.addAllowedMethod("*"); diff --git a/src/main/java/com/capstone/favicon/user/application/UserServiceImpl.java b/src/main/java/com/capstone/favicon/user/application/UserServiceImpl.java index 2d1958f..316224c 100644 --- a/src/main/java/com/capstone/favicon/user/application/UserServiceImpl.java +++ b/src/main/java/com/capstone/favicon/user/application/UserServiceImpl.java @@ -96,6 +96,16 @@ public void delete(HttpServletRequest request) { userRepository.delete(user); } + @Override + public void deleteById(Long id) { + User user = userRepository.findByUserId(id); + if (user == null) { + throw new IllegalArgumentException("존재하지 않는 사용자입니다."); + } + userRepository.delete(user); + } + + @Override public boolean checkAdmin(HttpServletRequest request) { HttpSession session = request.getSession(); diff --git a/src/main/java/com/capstone/favicon/user/application/service/UserService.java b/src/main/java/com/capstone/favicon/user/application/service/UserService.java index 17a2938..3a85be9 100644 --- a/src/main/java/com/capstone/favicon/user/application/service/UserService.java +++ b/src/main/java/com/capstone/favicon/user/application/service/UserService.java @@ -15,4 +15,5 @@ public interface UserService { void logout(HttpServletRequest request); void delete(HttpServletRequest request); boolean checkAdmin(HttpServletRequest request); + void deleteById(Long id); } diff --git a/src/main/java/com/capstone/favicon/user/controller/UserController.java b/src/main/java/com/capstone/favicon/user/controller/UserController.java index 1ff6fcb..8ca5034 100644 --- a/src/main/java/com/capstone/favicon/user/controller/UserController.java +++ b/src/main/java/com/capstone/favicon/user/controller/UserController.java @@ -84,6 +84,18 @@ public ResponseEntity> deleteUser(HttpServletRequest request) { } } + @DeleteMapping("/delete-account/{id}") + public ResponseEntity> deleteUser(@PathVariable Long id) { + try { + userService.deleteById(id); + return ResponseEntity.ok().body(APIResponse.successAPI("탈퇴하였습니다.", null)); + } catch (Exception e) { + String message = e.getMessage(); + return ResponseEntity.badRequest().body(APIResponse.errorAPI(message)); + } + } + + @GetMapping("/session-check") public ResponseEntity> checkSession(HttpServletRequest request) { try {