feat: added a new database service
This commit is contained in:
		| @@ -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, | ||||||
		Reference in New Issue
	
	Block a user