NCP-3 Add logic update user fields,change password
This commit is contained in:
@@ -5,6 +5,7 @@ import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import ru.soune.no_copy.dto.ChangePasswordRequest;
|
||||
import ru.soune.no_copy.dto.UserDTO;
|
||||
import ru.soune.no_copy.dto.UserRequest;
|
||||
import ru.soune.no_copy.entity.AuthToken;
|
||||
import ru.soune.no_copy.entity.User;
|
||||
import ru.soune.no_copy.exception.InvalidUserEmail;
|
||||
@@ -35,7 +36,7 @@ public class UserController {
|
||||
List<UserDTO> allUsers = userRepository.findAll().stream()
|
||||
.map(u -> new UserDTO(u.getFullName(), u.getCompany(), u.getEmail(), u.getIsActive(),
|
||||
u.getPhone(), u.getGenderType(),
|
||||
u.getBirthday(), u.getCreatedAt()))
|
||||
u.getBirthday(), u.getCreatedAt(), u.getSubscriptionType()))
|
||||
.toList();
|
||||
|
||||
return ResponseEntity.ok(allUsers);
|
||||
@@ -61,4 +62,18 @@ public class UserController {
|
||||
|
||||
return ResponseEntity.ok(userMapper.toDTO(updateUser));
|
||||
}
|
||||
|
||||
@PatchMapping("/user-update")
|
||||
public ResponseEntity<UserDTO> updateUser(@RequestBody UserRequest userRequest,
|
||||
@RequestHeader("Authorization") String tokenHeader) {
|
||||
String token = tokenHeader.replace("Bearer ", "");
|
||||
|
||||
Optional<AuthToken> tokenOptional = authTokenRepository.findByToken(token);
|
||||
|
||||
AuthToken authToken = tokenOptional.orElseThrow(() -> new NotFoundAuthToken("Token: " + token + "not found"));
|
||||
|
||||
User user = authToken.getUser();
|
||||
|
||||
return ResponseEntity.ok(userService.updateUser(userRequest, user));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user