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,
 | 
				
			||||||
		Reference in New Issue
	
	Block a user