09.21 save
This commit is contained in:
@@ -3,6 +3,7 @@ package com.io.realworld.domain.aggregate.user.controller;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserAuth;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserResponse;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserSignupRequest;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserUpdate;
|
||||
import com.io.realworld.domain.aggregate.user.entity.User;
|
||||
import com.io.realworld.domain.aggregate.user.service.UserService;
|
||||
import com.io.realworld.domain.aggregate.user.service.UserServiceImpl;
|
||||
@@ -10,11 +11,10 @@ import lombok.AllArgsConstructor;
|
||||
import lombok.Value;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.security.core.annotation.AuthenticationPrincipal;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.validation.Valid;
|
||||
|
||||
@RestController
|
||||
@Slf4j
|
||||
@@ -31,4 +31,9 @@ public class UserController {
|
||||
public UserResponse currentUser(@AuthenticationPrincipal UserAuth userAuth) {
|
||||
return userService.getCurrentUser(userAuth);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
public UserResponse updateUser(@Valid @RequestBody UserUpdate userUpdate){
|
||||
return userService.updateUser(userUpdate);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.io.realworld.domain.aggregate.user.dto;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonTypeInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonTypeName;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.ToString;
|
||||
|
||||
import javax.validation.constraints.Email;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
@Builder
|
||||
@Getter
|
||||
@ToString
|
||||
@JsonTypeName("user")
|
||||
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.WRAPPER_OBJECT)
|
||||
public class UserUpdate {
|
||||
|
||||
@Email
|
||||
private String email;
|
||||
private String username;
|
||||
private String password;
|
||||
private String bio;
|
||||
private String image;
|
||||
}
|
||||
@@ -1,9 +1,6 @@
|
||||
package com.io.realworld.domain.aggregate.user.service;
|
||||
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserAuth;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserResponse;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserSigninRequest;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserSignupRequest;
|
||||
import com.io.realworld.domain.aggregate.user.dto.*;
|
||||
import com.io.realworld.domain.aggregate.user.entity.User;
|
||||
|
||||
public interface UserService {
|
||||
@@ -12,4 +9,6 @@ public interface UserService {
|
||||
UserResponse signin(UserSigninRequest userSigninRequest);
|
||||
|
||||
UserResponse getCurrentUser(UserAuth userAuth);
|
||||
|
||||
UserResponse updateUser(UserUpdate userUpdate);
|
||||
}
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
package com.io.realworld.domain.aggregate.user.service;
|
||||
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserAuth;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserResponse;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserSigninRequest;
|
||||
import com.io.realworld.domain.aggregate.user.dto.UserSignupRequest;
|
||||
import com.io.realworld.domain.aggregate.user.dto.*;
|
||||
import com.io.realworld.domain.service.JwtService;
|
||||
import com.io.realworld.exception.CustomException;
|
||||
import com.io.realworld.exception.Error;
|
||||
@@ -62,6 +59,18 @@ public class UserServiceImpl implements UserService {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public UserResponse updateUser(UserUpdate userUpdate){
|
||||
System.out.println(userUpdate.toString());
|
||||
userRepository.save(User.builder()
|
||||
.username(userUpdate.getUsername())
|
||||
.image(userUpdate.getImage())
|
||||
.bio(userUpdate.getBio())
|
||||
.password(userUpdate.getPassword())
|
||||
.email(userUpdate.getEmail()).build());
|
||||
return convertUser();
|
||||
}
|
||||
|
||||
|
||||
private UserResponse convertUser(User user){
|
||||
return UserResponse.builder().username(user.getUsername())
|
||||
|
||||
Reference in New Issue
Block a user