backend-api #6
@ -1,29 +1,32 @@
|
|||||||
package enseirb.myinpulse.service.database.old_controllers_to_convert_to_services;
|
package enseirb.myinpulse.service.database;
|
||||||
|
|
||||||
import enseirb.myinpulse.model.Project;
|
import enseirb.myinpulse.model.Project;
|
||||||
import enseirb.myinpulse.repository.ProjectRepository;
|
import enseirb.myinpulse.repository.ProjectRepository;
|
||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.web.server.ResponseStatusException;
|
import org.springframework.web.server.ResponseStatusException;
|
||||||
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
@RestController
|
@Service
|
||||||
public class ProjectController {
|
public class ProjectService {
|
||||||
|
|
||||||
@Autowired ProjectRepository projectRepository;
|
private final ProjectRepository projectRepository;
|
||||||
|
|
||||||
@GetMapping("/Project")
|
@Autowired
|
||||||
@ResponseBody
|
ProjectService(ProjectRepository projectRepository) {
|
||||||
public Iterable<Project> allProjects() {
|
this.projectRepository = projectRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Iterable<Project> getAllProjects() {
|
||||||
return this.projectRepository.findAll();
|
return this.projectRepository.findAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/Project/{id}")
|
// TODO: change error
|
||||||
public Project getProjectById(@PathVariable Long id) {
|
public Project getProjectById(Long id) {
|
||||||
Optional<Project> project = this.projectRepository.findById(id);
|
Optional<Project> project = this.projectRepository.findById(id);
|
||||||
if (project.isEmpty()) {
|
if (project.isEmpty()) {
|
||||||
throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce projet n'existe pas");
|
throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce projet n'existe pas");
|
||||||
@ -31,14 +34,13 @@ public class ProjectController {
|
|||||||
return project.get();
|
return project.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/Project")
|
// TODO: validation
|
||||||
public Project addProject(@RequestBody Project project) {
|
public Project addNewProject(Project project) {
|
||||||
return this.projectRepository.save(project);
|
return this.projectRepository.save(project);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/Project/{id}")
|
|
||||||
public Project updateProject(
|
public Project updateProject(
|
||||||
@PathVariable Long id,
|
Long id,
|
||||||
String projectName,
|
String projectName,
|
||||||
byte[] logo,
|
byte[] logo,
|
||||||
LocalDate creationDate,
|
LocalDate creationDate,
|
Loading…
x
Reference in New Issue
Block a user