diff --git a/users/src/main/java/ba/steleks/controller/UserController.java b/users/src/main/java/ba/steleks/controller/UserController.java index 85135e7..fcd55bd 100644 --- a/users/src/main/java/ba/steleks/controller/UserController.java +++ b/users/src/main/java/ba/steleks/controller/UserController.java @@ -6,6 +6,7 @@ import ba.steleks.util.ProxyHeaders; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; +import org.springframework.util.MultiValueMap; import org.springframework.web.bind.annotation.*; import java.util.HashMap; @@ -37,4 +38,38 @@ public class UserController { .build(); } } + + @RequestMapping(path = "/users/current", method = RequestMethod.PATCH) + public ResponseEntity updateCurrentUser(@RequestHeader(ProxyHeaders.USER_ID) String userIdString, @RequestBody Map newUser) { + long userId = Long.parseLong(userIdString); + System.out.println("hepek"); + User user = usersJpaRepository.findOne(userId); + if (user != null) { + System.out.println("Found user with id: " + userId); + if (newUser.get("firstName") != null) { + user.setFirstName(newUser.get("firstName").toString()); + } + if (newUser.get("lastName") != null) { + user.setLastName(newUser.get("lastName").toString()); + } + if (newUser.get("username") != null) { + user.setUsername(newUser.get("username").toString()); + } + if (newUser.get("contactNumber") != null) { + user.setContactNumber(newUser.get("contactNumber").toString()); + } + if (newUser.get("email") != null) { + user.setEmail(newUser.get("email").toString()); + } + usersJpaRepository.save(user); + return ResponseEntity + .ok() + .body(user); + } else { + System.out.println("Found no user with id: " + userId); + return ResponseEntity + .status(HttpStatus.NOT_FOUND) + .build(); + } + } } diff --git a/users/src/main/java/ba/steleks/security/AuthenticationFilter.java b/users/src/main/java/ba/steleks/security/AuthenticationFilter.java index bcac02c..5c1dc2d 100644 --- a/users/src/main/java/ba/steleks/security/AuthenticationFilter.java +++ b/users/src/main/java/ba/steleks/security/AuthenticationFilter.java @@ -35,7 +35,6 @@ public class AuthenticationFilter extends GenericFilterBean { tokenStore, usersJpaRepository ); - SecurityContextHolder.getContext().setAuthentication(authentication); filterChain.doFilter(request, response); }