Skip to content

Commit

Permalink
fix tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Alina Tarasova committed Aug 19, 2024
1 parent d63ba78 commit d619210
Show file tree
Hide file tree
Showing 5 changed files with 226 additions and 372 deletions.
4 changes: 1 addition & 3 deletions src/main/java/hexlet/code/config/SecurityConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,7 @@ public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Excepti
.authorizeHttpRequests(auth -> auth
.requestMatchers(HttpMethod.POST, "/api/users").permitAll()

.requestMatchers(HttpMethod.POST, "/api/create/user").permitAll()
.requestMatchers(HttpMethod.GET, "/api/create/user").permitAll()
.requestMatchers(HttpMethod.POST, "/api/create/task").permitAll()
.requestMatchers(HttpMethod.POST, "/api/create/**").permitAll()
.requestMatchers(HttpMethod.POST, "/api/user/**").permitAll()

.requestMatchers(PUBLIC_URLS).permitAll()
Expand Down
39 changes: 20 additions & 19 deletions src/main/java/hexlet/code/controller/UserTaskController.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,21 @@
import hexlet.code.dto.tasks.TaskDTO;
import hexlet.code.dto.users.UserCreateDTO;
import hexlet.code.dto.users.UserDTO;
import hexlet.code.dto.userstasks.UserTaskUpdateDTO;
import hexlet.code.service.UserTaskService;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.PostMapping;

import hexlet.code.dto.userstasks.UserWithTaskDTO;
//import hexlet.code.dto.userstasks.UserTaskUpdateDTO;



@RestController
Expand All @@ -25,33 +28,31 @@ public class UserTaskController {
private final UserTaskService userTaskService;


//@PostMapping(path = "/create/user")
@GetMapping(path = "/create/user")
//@ResponseStatus(HttpStatus.CREATED)
public UserDTO create(@Valid @RequestBody UserCreateDTO taskCreateDTO) {
return userTaskService.createUser(taskCreateDTO);
@PostMapping(path = "/create/user")
@ResponseStatus(HttpStatus.CREATED)
public UserDTO create(@Valid @RequestBody UserCreateDTO userCreateDTO) {
return userTaskService.createUser(userCreateDTO);
}

//@PostMapping(path = "/create/task")
@GetMapping(path = "/create/task")
//@ResponseStatus(HttpStatus.CREATED)
@PostMapping(path = "/create/task")
@ResponseStatus(HttpStatus.CREATED)
public TaskDTO create(@Valid @RequestBody TaskCreateDTO taskCreateDTO) {
return userTaskService.createTask(taskCreateDTO);
}

// @PutMapping("/user/{userId}/task/{taskId}")
// @ResponseStatus(HttpStatus.OK)
// public void updateUserAndTask(@PathVariable Long userId,
// @PathVariable Long taskId,
// @RequestBody UserWithTaskDTO userTaskDTO) {
// userTaskService.updateUserAndTask(userId, taskId, userTaskDTO);
// }

@PutMapping("/user/{userId}/task/{taskId}")
@ResponseStatus(HttpStatus.OK)
public void updateUserAndTask(@PathVariable Long userId,
@PathVariable Long taskId,
@RequestBody UserTaskUpdateDTO userTaskDTO) {
@RequestBody UserWithTaskDTO userTaskDTO) {
userTaskService.updateUserAndTask(userId, taskId, userTaskDTO);
}

// @PutMapping("/user/{userId}/task/{taskId}")
// @ResponseStatus(HttpStatus.OK)
// public void updateUserAndTask(@PathVariable Long userId,
// @PathVariable Long taskId,
// @RequestBody UserTaskUpdateDTO userTaskDTO) {
// userTaskService.updateUserAndTask(userId, taskId, userTaskDTO);
// }
}
60 changes: 0 additions & 60 deletions src/main/java/hexlet/code/mapper/UserTaskMapper.java

This file was deleted.

40 changes: 15 additions & 25 deletions src/main/java/hexlet/code/service/UserTaskService.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,24 @@

import hexlet.code.dto.tasks.TaskCreateDTO;
import hexlet.code.dto.tasks.TaskDTO;
import hexlet.code.dto.tasks.TaskUpdateDTO;
import hexlet.code.dto.users.UserCreateDTO;
import hexlet.code.dto.users.UserDTO;
import hexlet.code.dto.users.UserUpdateDTO;
import hexlet.code.dto.userstasks.UserTaskUpdateDTO;
import hexlet.code.exception.ResourceNotFoundException;
import hexlet.code.mapper.TaskMapper;
import hexlet.code.mapper.UserMapper;
import hexlet.code.mapper.UserTaskMapper;
import hexlet.code.model.Task;
import hexlet.code.model.User;
import hexlet.code.repository.TaskRepository;
import hexlet.code.repository.UserRepository;
import jakarta.transaction.Transactional;
import lombok.AllArgsConstructor;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;

import hexlet.code.dto.userstasks.UserWithTaskDTO;
//import hexlet.code.dto.users.UserUpdateDTO;
//import hexlet.code.dto.userstasks.UserTaskUpdateDTO;
//import hexlet.code.dto.tasks.TaskUpdateDTO;


@Service
@AllArgsConstructor
Expand All @@ -28,7 +28,6 @@ public class UserTaskService {
private final TaskRepository taskRepository;
private final UserMapper userMapper;
private final TaskMapper taskMapper;
private final UserTaskMapper mapper;


public UserDTO createUser(UserCreateDTO userCreateDTO) {
Expand All @@ -37,52 +36,43 @@ public UserDTO createUser(UserCreateDTO userCreateDTO) {
return userMapper.map(user);
}


public TaskDTO createTask(TaskCreateDTO taskCreateDTO) {
var task = taskMapper.map(taskCreateDTO);
taskRepository.save(task);
return taskMapper.map(task);
}

@Transactional
public void updateUserAndTask(Long userId, Long taskId, UserTaskUpdateDTO userTaskUpdateDTO) {

public void updateUserAndTask(Long userId, Long taskId, UserWithTaskDTO userTaskDTO) {
User user = userRepository.findByIdWithEagerUpload(userId).orElseThrow(
() -> new ResourceNotFoundException("User With Id: " + userId + " Not Found"));

Task task = taskRepository.findByIdWithEagerUpload(taskId).orElseThrow(
() -> new ResourceNotFoundException("Task With Id: " + taskId + " Not Found"));

UserUpdateDTO userUpdateDTO = new UserUpdateDTO();
userUpdateDTO.setLastName(userTaskUpdateDTO.getLastName());

TaskUpdateDTO taskUpdateDTO = userTaskUpdateDTO.getTaskUpdateDTO();

userMapper.update(userUpdateDTO, user);
taskMapper.update(taskUpdateDTO, task);
user.setLastName(userTaskDTO.getLastName());
task.setName(userTaskDTO.getTaskDTO().getTitle());

user.addTask(task); // MERGE
userRepository.save(user);

ResponseEntity.ok().build();
}


// public void updateUserAndTask(Long userId, Long taskId, UserWithTaskDTO userTaskDTO) {
// public void updateUserAndTask(Long userId, Long taskId, UserTaskUpdateDTO userTaskUpdateDTO) {
//
// User user = userRepository.findByIdWithEagerUpload(userId).orElseThrow(
// () -> new ResourceNotFoundException("User With Id: " + userId + " Not Found"));
//
// Task task = taskRepository.findByIdWithEagerUpload(taskId).orElseThrow(
// () -> new ResourceNotFoundException("Task With Id: " + taskId + " Not Found"));
//
// user.setLastName(userTaskDTO.getLastName());
// task.setName(userTaskDTO.getTaskDTO().getTitle());
// UserUpdateDTO userUpdateDTO = new UserUpdateDTO();
// userUpdateDTO.setLastName(userTaskUpdateDTO.getLastName());
//
// TaskUpdateDTO taskUpdateDTO = userTaskUpdateDTO.getTaskUpdateDTO();
//
//// User updatedUser = mapper.map(userTaskDTO);
//// Task updatedTask = mapper.map(userTaskDTO.getTaskDTO());
//// user.setLastName(updatedUser.getLastName());
//// task.setName(updatedTask.getName());
// userMapper.update(userUpdateDTO, user);
// taskMapper.update(taskUpdateDTO, task);
//
// user.addTask(task); // MERGE
// userRepository.save(user);
Expand Down
Loading

0 comments on commit d619210

Please sign in to comment.