From d54bff1a91f93878d579d8f64d3e8982771a77c1 Mon Sep 17 00:00:00 2001 From: vladp Date: Tue, 2 Dec 2025 13:57:07 +0700 Subject: [PATCH] add user by mail endpoint --- .../no_copy/controller/UserController.java | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/src/main/java/ru/soune/no_copy/controller/UserController.java b/src/main/java/ru/soune/no_copy/controller/UserController.java index f4db208..6e6c3bb 100644 --- a/src/main/java/ru/soune/no_copy/controller/UserController.java +++ b/src/main/java/ru/soune/no_copy/controller/UserController.java @@ -42,6 +42,38 @@ public class UserController { return ResponseEntity.ok(allUsers); } + @GetMapping + public ResponseEntity getUser(@RequestParam("email") String email, + @RequestHeader("Authorization") String tokenHeader) { + String token = tokenHeader.replace("Bearer ", ""); + + Optional tokenOptional = authTokenRepository.findByToken(token); + + AuthToken authToken = tokenOptional.orElseThrow(() -> new NotFoundAuthToken("Token: " + token + "not found")); + + if (authToken != null) { + Optional user = userRepository.findByEmail(email); + //TODO add mapper + if (user.isPresent()) { + UserDTO userDTO = userMapper.toDTO(user.get()); + userDTO.setEmail(email); + userDTO.setFullName(user.get().getFullName()); + userDTO.setCompany(user.get().getCompany()); + userDTO.setPhone(user.get().getPhone()); + userDTO.setGenderType(user.get().getGenderType()); + userDTO.setBirthday(user.get().getBirthday()); + userDTO.setCreatedAt(user.get().getCreatedAt()); + userDTO.setSubscriptionType(user.get().getSubscriptionType()); + userDTO.setActive(user.get().getIsActive()); + + return ResponseEntity.ok(userDTO); + } + + } + + return ResponseEntity.notFound().build(); + } + //TODO fix mapper,doesnot exist all fields @PostMapping("/change-password") public ResponseEntity updateUser(@RequestBody ChangePasswordRequest changePasswordRequest,