diff --git a/src/main/java/ru/ulstu/fc/project/controller/ProjectController.java b/src/main/java/ru/ulstu/fc/project/controller/ProjectController.java index ca23828..3d77353 100644 --- a/src/main/java/ru/ulstu/fc/project/controller/ProjectController.java +++ b/src/main/java/ru/ulstu/fc/project/controller/ProjectController.java @@ -9,7 +9,7 @@ import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import ru.ulstu.fc.project.model.Project; -import ru.ulstu.fc.project.model.ProjectForm; +import ru.ulstu.fc.project.model.ProjectDto; import ru.ulstu.fc.project.service.ProjectRulesService; import ru.ulstu.fc.project.service.ProjectService; import ru.ulstu.fc.project.service.ProjectVariableService; @@ -41,7 +41,7 @@ public class ProjectController { @GetMapping("/edit/{projectId}") public String edit(@PathVariable(value = "projectId") Integer id, Model model) { model.addAttribute("project", - new ProjectForm((id != null && id != 0) + new ProjectDto((id != null && id != 0) ? projectService.getById(id) : new Project())); @@ -51,15 +51,15 @@ public class ProjectController { } @PostMapping(value = "save", params = "save") - public String save(ProjectForm projectForm, Model model) { - model.addAttribute("project", projectService.save(projectForm)); + public String save(ProjectDto projectDto, Model model) { + model.addAttribute("project", projectService.save(projectDto)); return "redirect:/project/list"; } @PostMapping(value = "save", params = "delete") - public String delete(ProjectForm projectForm) { - if (projectForm != null && projectForm.getId() != null) { - projectService.delete(projectForm); + public String delete(ProjectDto projectDto) { + if (projectDto != null && projectDto.getId() != null) { + projectService.delete(projectDto); } return "redirect:/project/list"; } diff --git a/src/main/java/ru/ulstu/fc/project/controller/ProjectRestController.java b/src/main/java/ru/ulstu/fc/project/controller/ProjectRestController.java index 7fcce20..e5b10a7 100644 --- a/src/main/java/ru/ulstu/fc/project/controller/ProjectRestController.java +++ b/src/main/java/ru/ulstu/fc/project/controller/ProjectRestController.java @@ -6,8 +6,7 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import ru.ulstu.fc.project.model.Project; -import ru.ulstu.fc.project.model.ProjectForm; +import ru.ulstu.fc.project.model.ProjectDto; import ru.ulstu.fc.project.service.ProjectService; import ru.ulstu.fc.user.model.UserRoleConstants; @@ -24,18 +23,18 @@ public class ProjectRestController { } @GetMapping("list") - public List getProjects() { - return projectService.getCurrentUserProjects(); + public List getProjects() { + return projectService.getCurrentUserProjectsDto(); } @PostMapping("save") - public Project save(Project project) { - return projectService.save(project); + public ProjectDto save(ProjectDto projectDto) { + return projectService.save(projectDto); } @DeleteMapping("delete") - public String delete(ProjectForm projectForm) { - projectService.delete(projectForm); + public String delete(ProjectDto projectDto) { + projectService.delete(projectDto); return "redirect:/list"; } } diff --git a/src/main/java/ru/ulstu/fc/project/model/Project.java b/src/main/java/ru/ulstu/fc/project/model/Project.java index e5ff8c7..d0c5e40 100644 --- a/src/main/java/ru/ulstu/fc/project/model/Project.java +++ b/src/main/java/ru/ulstu/fc/project/model/Project.java @@ -20,11 +20,11 @@ public class Project extends BaseEntity { public Project() { } - public Project(ProjectForm projectForm) { - if (projectForm.getId() != null) { - setId(projectForm.getId()); + public Project(ProjectDto projectDto) { + if (projectDto.getId() != null) { + setId(projectDto.getId()); } - this.name = projectForm.getName(); + this.name = projectDto.getName(); } public String getName() { diff --git a/src/main/java/ru/ulstu/fc/project/model/ProjectForm.java b/src/main/java/ru/ulstu/fc/project/model/ProjectDto.java similarity index 88% rename from src/main/java/ru/ulstu/fc/project/model/ProjectForm.java rename to src/main/java/ru/ulstu/fc/project/model/ProjectDto.java index b2a10c9..1031b37 100644 --- a/src/main/java/ru/ulstu/fc/project/model/ProjectForm.java +++ b/src/main/java/ru/ulstu/fc/project/model/ProjectDto.java @@ -4,16 +4,16 @@ import jakarta.validation.constraints.NotEmpty; import java.util.Date; -public class ProjectForm { +public class ProjectDto { private Integer id; @NotEmpty(message = "Название проекта не может быть пустым") private String name; private Date createDate; - public ProjectForm() { + public ProjectDto() { } - public ProjectForm(Project project) { + public ProjectDto(Project project) { this.id = project.getId(); this.name = project.getName(); this.createDate = project.getCreateDate(); diff --git a/src/main/java/ru/ulstu/fc/project/service/ProjectService.java b/src/main/java/ru/ulstu/fc/project/service/ProjectService.java index e41034e..c01f12a 100644 --- a/src/main/java/ru/ulstu/fc/project/service/ProjectService.java +++ b/src/main/java/ru/ulstu/fc/project/service/ProjectService.java @@ -2,12 +2,13 @@ package ru.ulstu.fc.project.service; import org.springframework.stereotype.Service; import ru.ulstu.fc.project.model.Project; -import ru.ulstu.fc.project.model.ProjectForm; +import ru.ulstu.fc.project.model.ProjectDto; import ru.ulstu.fc.project.repository.ProjectRepository; import ru.ulstu.fc.user.model.User; import ru.ulstu.fc.user.service.UserService; import java.util.List; +import java.util.stream.Collectors; @Service public class ProjectService { @@ -24,6 +25,10 @@ public class ProjectService { return projectRepository.findAllByUserId(userService.getCurrentUser().getId()); } + public List getCurrentUserProjectsDto() { + return getCurrentUserProjects().stream().map(ProjectDto::new).collect(Collectors.toList()); + } + public Project getById(Integer id) { Project project = projectRepository .findById(id) @@ -32,8 +37,8 @@ public class ProjectService { return project; } - public Project save(ProjectForm projectForm) { - return save(new Project(projectForm)); + public ProjectDto save(ProjectDto projectDto) { + return new ProjectDto(save(new Project(projectDto))); } public Project save(Project projectToSave) { @@ -47,9 +52,9 @@ public class ProjectService { return projectRepository.save(dbProject); } - public void delete(ProjectForm projectForm) { - getById(projectForm.getId()); - projectRepository.deleteById(projectForm.getId()); + public void delete(ProjectDto projectDto) { + getById(projectDto.getId()); + projectRepository.deleteById(projectDto.getId()); } public void checkIsCurrentUserProjectWithThrow(Project project) {