backend-api #6
@@ -1,40 +0,0 @@
 | 
			
		||||
package enseirb.myinpulse.api;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.controller.ComptesRendusController;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.ComptesRendus;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.ComptesRendusRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.bind.annotation.GetMapping;
 | 
			
		||||
import org.springframework.web.bind.annotation.RestController;
 | 
			
		||||
 | 
			
		||||
import javax.management.relation.RoleNotFoundException;
 | 
			
		||||
 | 
			
		||||
@SpringBootApplication
 | 
			
		||||
@RestController
 | 
			
		||||
public class GetUserInfo {
 | 
			
		||||
    @GetMapping("/unauth/random")
 | 
			
		||||
    public boolean rand(@RequestHeader("Authorization") String token) throws RoleNotFoundException {
 | 
			
		||||
        System.err.println(token);
 | 
			
		||||
        return Math.random() > 0.5;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/admin/random")
 | 
			
		||||
    public boolean rand2() {
 | 
			
		||||
        return Math.random() > 0.5;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/entrepreneur/random")
 | 
			
		||||
    public boolean rand3() {
 | 
			
		||||
        return Math.random() > 0.5;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    @GetMapping("/unauth/dev")
 | 
			
		||||
    public ComptesRendus testApi(ComptesRendusRepository repository) {
 | 
			
		||||
        ComptesRendusController comptesRendusController = new ComptesRendusController(repository);
 | 
			
		||||
        return comptesRendusController.getComptesRendusById((long) 1);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * Source: https://github.com/ChristianHuff-DEV/secure-spring-rest-api-using-keycloak/blob/main/src/main/java/io/betweendata/RestApi/security/oauth2/KeycloakJwtRolesConverter.java
 | 
			
		||||
 * edited by Pierre Tellier
 | 
			
		||||
 */
 | 
			
		||||
package enseirb.myinpulse.security;
 | 
			
		||||
package enseirb.myinpulse.config;
 | 
			
		||||
 | 
			
		||||
import static java.util.stream.Collectors.toSet;
 | 
			
		||||
 | 
			
		||||
@@ -2,8 +2,6 @@ package enseirb.myinpulse.config;
 | 
			
		||||
 | 
			
		||||
import static org.springframework.security.authorization.AuthorityAuthorizationManager.hasRole;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.security.KeycloakJwtRolesConverter;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Value;
 | 
			
		||||
import org.springframework.context.annotation.Bean;
 | 
			
		||||
import org.springframework.context.annotation.Configuration;
 | 
			
		||||
@@ -58,9 +56,9 @@ public class WebSecurityCustomConfiguration {
 | 
			
		||||
        http.authorizeHttpRequests(
 | 
			
		||||
                        authorize ->
 | 
			
		||||
                                authorize
 | 
			
		||||
                                        .requestMatchers("/entrepreneur/**")
 | 
			
		||||
                                        .requestMatchers("/entrepreneur/**", "/shared/**")
 | 
			
		||||
                                        .access(hasRole("REALM_MyINPulse-entrepreneur"))
 | 
			
		||||
                                        .requestMatchers("/admin/**")
 | 
			
		||||
                                        .requestMatchers("/admin/**", "/shared/**")
 | 
			
		||||
                                        .access(hasRole("REALM_MyINPulse-admin"))
 | 
			
		||||
                                        .requestMatchers("/unauth/**")
 | 
			
		||||
                                        .permitAll()
 | 
			
		||||
 
 | 
			
		||||
@@ -1,9 +1,9 @@
 | 
			
		||||
package enseirb.myinpulse.api;
 | 
			
		||||
package enseirb.myinpulse.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.api.datatypes.Project;
 | 
			
		||||
import enseirb.myinpulse.api.datatypes.ProjectDecision;
 | 
			
		||||
import enseirb.myinpulse.model.*;
 | 
			
		||||
import enseirb.myinpulse.service.AdminApiService;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.api.datatypes.Report;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
 | 
			
		||||
@@ -11,52 +11,65 @@ import org.springframework.web.bind.annotation.*;
 | 
			
		||||
@RestController
 | 
			
		||||
public class AdminApi {
 | 
			
		||||
 | 
			
		||||
    private final AdminApiService adminApiService;
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    AdminApi(AdminApiService adminApiService) {
 | 
			
		||||
        this.adminApiService = adminApiService;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     * TODO: description
 | 
			
		||||
     *
 | 
			
		||||
     * @return a list of all project managed by the current admin user
 | 
			
		||||
     */
 | 
			
		||||
    @GetMapping("/admin/projects")
 | 
			
		||||
    public void getProjects() {}
 | 
			
		||||
    public Iterable<Administrateurs> getProjects() {
 | 
			
		||||
        return adminApiService.getProjects();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO: Why in admin instead of shared ?
 | 
			
		||||
     * TODO: Why in admin instead of shared ? + desc
 | 
			
		||||
     *
 | 
			
		||||
     * @return a list of upcoming appointments for the current user
 | 
			
		||||
     */
 | 
			
		||||
    @GetMapping("/admin/appointments/upcoming")
 | 
			
		||||
    public void getUpcomingAppointments() {}
 | 
			
		||||
    public Iterable<Appointment> getUpcomingAppointments() {
 | 
			
		||||
        return adminApiService.getUpcomingAppointments();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     * TODO: description
 | 
			
		||||
     *
 | 
			
		||||
     * @return a list of current unvalidated projects, waiting to be accepted
 | 
			
		||||
     */
 | 
			
		||||
    @GetMapping("/admin/projects/pending")
 | 
			
		||||
    public void getPendingProjects() {}
 | 
			
		||||
    public Iterable<Project> getPendingProjects() {
 | 
			
		||||
        return adminApiService.getPendingProjects();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     *
 | 
			
		||||
     * <p>Endpoint used to make a decision about a project.
 | 
			
		||||
     * Endpoint used to make a decision about a project.
 | 
			
		||||
     *
 | 
			
		||||
     * @return the status code of the request
 | 
			
		||||
     */
 | 
			
		||||
    @PostMapping("/admin/projects/decision")
 | 
			
		||||
    public void validateProject(@RequestBody ProjectDecision decision) {}
 | 
			
		||||
    public void validateProject(@RequestBody ProjectDecision decision) {
 | 
			
		||||
        adminApiService.validateProject(decision);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     *
 | 
			
		||||
     * <p>Endpoint used to manually add a project by an admin
 | 
			
		||||
     * Endpoint used to manually add a project by an admin
 | 
			
		||||
     *
 | 
			
		||||
     * @return the status code of the request
 | 
			
		||||
     */
 | 
			
		||||
    @PostMapping("/admin/project/add")
 | 
			
		||||
    public void addNewProject(@RequestBody Project project) {}
 | 
			
		||||
    public void addNewProject(@RequestBody Project project) {
 | 
			
		||||
        adminApiService.addNewProject(project);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO: shouldn't it be an UPDATE request ?
 | 
			
		||||
     * TODO: shouldn't it be an PUT request ? / What is the rerun type
 | 
			
		||||
     *
 | 
			
		||||
     * <p>Endpoint used to add a new report to an appointment
 | 
			
		||||
     *
 | 
			
		||||
@@ -64,7 +77,9 @@ public class AdminApi {
 | 
			
		||||
     */
 | 
			
		||||
    @PostMapping("/admin/appoitements/report/{appointmentId}")
 | 
			
		||||
    public void createAppointmentReport(
 | 
			
		||||
            @PathVariable String appointmentId, @RequestBody Report report) {}
 | 
			
		||||
            @PathVariable String appointmentId, @RequestBody Report report) {
 | 
			
		||||
        adminApiService.createAppointmentReport(appointmentId, report);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO: Shouldn't a project be kept in history ? 2 different endpoints ?
 | 
			
		||||
@@ -74,5 +89,7 @@ public class AdminApi {
 | 
			
		||||
     * @return the status code of the request
 | 
			
		||||
     */
 | 
			
		||||
    @DeleteMapping("/admin/projects/remove/{projectId}")
 | 
			
		||||
    public void deleteProject(@PathVariable String projectId) {}
 | 
			
		||||
    public void deleteProject(@PathVariable String projectId) {
 | 
			
		||||
        adminApiService.deleteProject(projectId);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,51 +1,69 @@
 | 
			
		||||
package enseirb.myinpulse.api;
 | 
			
		||||
package enseirb.myinpulse.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.api.datatypes.LCSection;
 | 
			
		||||
import enseirb.myinpulse.api.datatypes.Project;
 | 
			
		||||
import enseirb.myinpulse.model.LCSection;
 | 
			
		||||
import enseirb.myinpulse.model.Project;
 | 
			
		||||
import enseirb.myinpulse.service.EntrepreneurApiService;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
 | 
			
		||||
@SpringBootApplication
 | 
			
		||||
@RestController
 | 
			
		||||
public class EntrepreneurApi {
 | 
			
		||||
 | 
			
		||||
    private final EntrepreneurApiService entrepreneurApiService;
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    EntrepreneurApi(EntrepreneurApiService entrepreneurApiService) {
 | 
			
		||||
        this.entrepreneurApiService = entrepreneurApiService;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     * TODO: check return type
 | 
			
		||||
     *
 | 
			
		||||
     * <p>Endpoint used to update a LC section.
 | 
			
		||||
     *
 | 
			
		||||
     * @return status code
 | 
			
		||||
     */
 | 
			
		||||
    @PutMapping("/entrepreneur/lcsection/modify/{sectionId}")
 | 
			
		||||
    public void editLCSection(@PathVariable String sectionId, @RequestBody LCSection section) {}
 | 
			
		||||
    public void editLCSection(@PathVariable String sectionId, @RequestBody LCSection section) {
 | 
			
		||||
        entrepreneurApiService.editLCSection(sectionId, section);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     * TODO: checkReturn Type
 | 
			
		||||
     *
 | 
			
		||||
     * <p>Endpoint used to delete a LC section
 | 
			
		||||
     *
 | 
			
		||||
     * @return status code
 | 
			
		||||
     */
 | 
			
		||||
    @DeleteMapping("/entrepreneur/lcsection/remove/{sectionId}")
 | 
			
		||||
    public void removeLCSection(@PathVariable String sectionId) {}
 | 
			
		||||
    public void removeLCSection(@PathVariable String sectionId) {
 | 
			
		||||
        entrepreneurApiService.removeLCSection(sectionId);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     * TODO: check return type
 | 
			
		||||
     *
 | 
			
		||||
     * <p>Endpoint used to create a new LC section
 | 
			
		||||
     *
 | 
			
		||||
     * @return status code
 | 
			
		||||
     */
 | 
			
		||||
    @PostMapping("/entrepreneur/lcsection/add/{sectionId}")
 | 
			
		||||
    public void addLCSection(@PathVariable String sectionId, @RequestBody LCSection section) {}
 | 
			
		||||
    public void addLCSection(@PathVariable String sectionId, @RequestBody LCSection section) {
 | 
			
		||||
        entrepreneurApiService.addLCSection(sectionId, section);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     * TODO: check return type
 | 
			
		||||
     *
 | 
			
		||||
     * <p>Endpoint used to request the creation of a new project
 | 
			
		||||
     *
 | 
			
		||||
     * @return status code
 | 
			
		||||
     */
 | 
			
		||||
    @PostMapping("/entrepreneur/project/request")
 | 
			
		||||
    public void requestNewProject(@RequestBody Project project) {}
 | 
			
		||||
    public void requestNewProject(@RequestBody Project project) {
 | 
			
		||||
        entrepreneurApiService.requestNewProject(project);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,7 +1,12 @@
 | 
			
		||||
package enseirb.myinpulse.api;
 | 
			
		||||
package enseirb.myinpulse.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.api.datatypes.Appointment;
 | 
			
		||||
import enseirb.myinpulse.model.Administrateurs;
 | 
			
		||||
import enseirb.myinpulse.model.Appointment;
 | 
			
		||||
import enseirb.myinpulse.model.Entrepreneurs;
 | 
			
		||||
import enseirb.myinpulse.model.Sections;
 | 
			
		||||
import enseirb.myinpulse.service.SharedApiService;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
 | 
			
		||||
@@ -9,6 +14,13 @@ import org.springframework.web.bind.annotation.*;
 | 
			
		||||
@RestController
 | 
			
		||||
public class SharedApi {
 | 
			
		||||
 | 
			
		||||
    private final SharedApiService sharedApiService;
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    SharedApi(SharedApiService sharedApiService) {
 | 
			
		||||
        this.sharedApiService = sharedApiService;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO: It does not looks like a good id to have the title and the date in the url. What even
 | 
			
		||||
     * TODO: is the title btw ? if this is the LC section, wouldn't it be better to use an ID ?
 | 
			
		||||
@@ -19,20 +31,22 @@ public class SharedApi {
 | 
			
		||||
     * @return a list of lean canvas sections
 | 
			
		||||
     */
 | 
			
		||||
    @GetMapping("/shared/project/lcsection/{projectId}/{title}/{date}")
 | 
			
		||||
    public void getLCSection(
 | 
			
		||||
    public Iterable<Sections> getLCSection(
 | 
			
		||||
            @PathVariable("projectId") String projectId,
 | 
			
		||||
            @PathVariable("title") String title,
 | 
			
		||||
            @PathVariable("date") String date) {}
 | 
			
		||||
            @PathVariable("date") String date) {
 | 
			
		||||
        return sharedApiService.getLCSection(projectId, title, date);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     *
 | 
			
		||||
     * <p>Endpoint used to get entrepreneurs details
 | 
			
		||||
     * Endpoint used to get entrepreneurs details
 | 
			
		||||
     *
 | 
			
		||||
     * @return a list of all entrepreneurs in a project
 | 
			
		||||
     */
 | 
			
		||||
    @GetMapping("/shared/entrepreneurs/{projectId}")
 | 
			
		||||
    public void getEntrepreneursByProjectId(@PathVariable int projectId) {}
 | 
			
		||||
    public Iterable<Entrepreneurs> getEntrepreneursByProjectId(@PathVariable int projectId) {
 | 
			
		||||
        return sharedApiService.getEntrepreneursByProjectId(projectId);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO: is it really useful for the admin ? We can already get all the project of the current
 | 
			
		||||
@@ -43,7 +57,9 @@ public class SharedApi {
 | 
			
		||||
     * @return a list of all project managed by the current admin user
 | 
			
		||||
     */
 | 
			
		||||
    @GetMapping("/shared/projects/admin/{projectId}")
 | 
			
		||||
    public void getAdminByProjectId(@PathVariable int projectId) {}
 | 
			
		||||
    public Iterable<Administrateurs> getAdminByProjectId(@PathVariable int projectId) {
 | 
			
		||||
        return sharedApiService.getAdminByProjectId(projectId);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO: Should it really be all appointments? all future appointments ? a flag to choose \\
 | 
			
		||||
@@ -54,25 +70,27 @@ public class SharedApi {
 | 
			
		||||
     * @return a list of all appointments.
 | 
			
		||||
     */
 | 
			
		||||
    @GetMapping("/shared/projects/appointments/{projectId}")
 | 
			
		||||
    public void getAppointmentsByProjectId(@PathVariable int projectId) {}
 | 
			
		||||
    public Iterable<Appointment> getAppointmentsByProjectId(@PathVariable int projectId) {
 | 
			
		||||
        return sharedApiService.getAppointmentsByProjectId(projectId);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO: Shouldn't the last two parameters be swapped ?
 | 
			
		||||
     *
 | 
			
		||||
     * <p>Endpoint used to generate a PDF report
 | 
			
		||||
     * Endpoint used to generate a PDF report
 | 
			
		||||
     *
 | 
			
		||||
     * @return a PDF file? TODO: how does that works ?
 | 
			
		||||
     */
 | 
			
		||||
    @GetMapping("/shared/projects/appointments/report/{appointmentId}")
 | 
			
		||||
    public void getPDFReport(@PathVariable int appointmentId) {}
 | 
			
		||||
    public void getPDFReport(@PathVariable int appointmentId) {
 | 
			
		||||
        sharedApiService.getPDFReport(appointmentId);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * TODO
 | 
			
		||||
     *
 | 
			
		||||
     * <p>
 | 
			
		||||
     *
 | 
			
		||||
     * @return a list of all project managed by the current admin user
 | 
			
		||||
     * @return TODO
 | 
			
		||||
     */
 | 
			
		||||
    @PostMapping("/shared/appointment/request")
 | 
			
		||||
    public void createAppointmentRequest(@RequestBody Appointment appointment) {}
 | 
			
		||||
    public void createAppointmentRequest(@RequestBody Appointment appointment) {
 | 
			
		||||
        sharedApiService.createAppointmentRequest(appointment);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package enseirb.myinpulse.exceptions;
 | 
			
		||||
package enseirb.myinpulse.exception;
 | 
			
		||||
 | 
			
		||||
public class RoleNotFoudException extends RuntimeException {
 | 
			
		||||
    public RoleNotFoudException(String message) {
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package enseirb.myinpulse.exceptions;
 | 
			
		||||
package enseirb.myinpulse.exception;
 | 
			
		||||
 | 
			
		||||
public class UserNotFoundException extends RuntimeException {
 | 
			
		||||
    public UserNotFoundException(String message) {
 | 
			
		||||
@@ -1,43 +1,43 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.persistence.PrimaryKeyJoinColumn;
 | 
			
		||||
import jakarta.persistence.Table;
 | 
			
		||||
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "administrateurs")
 | 
			
		||||
@PrimaryKeyJoinColumn(name = "id_administrateur", referencedColumnName = "id_utilisateur")
 | 
			
		||||
public class Administrateurs extends Utilisateurs {
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_projet")
 | 
			
		||||
    private Projets projetsAdministrateurs;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "administrateursSections", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private List<Sections> ListSections = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_rdv")
 | 
			
		||||
    private RendezVous rendezVousAdministrateurs;
 | 
			
		||||
 | 
			
		||||
    public Administrateurs() {}
 | 
			
		||||
 | 
			
		||||
    public Administrateurs(
 | 
			
		||||
            String nom_utilisateur,
 | 
			
		||||
            Long id_utilisateur,
 | 
			
		||||
            String prenom_utilisateur,
 | 
			
		||||
            String mail_principal,
 | 
			
		||||
            String mail_secondaire,
 | 
			
		||||
            String numero_telephone) {
 | 
			
		||||
        super(
 | 
			
		||||
                nom_utilisateur,
 | 
			
		||||
                id_utilisateur,
 | 
			
		||||
                prenom_utilisateur,
 | 
			
		||||
                mail_principal,
 | 
			
		||||
                mail_secondaire,
 | 
			
		||||
                numero_telephone);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.persistence.PrimaryKeyJoinColumn;
 | 
			
		||||
import jakarta.persistence.Table;
 | 
			
		||||
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "administrateurs")
 | 
			
		||||
@PrimaryKeyJoinColumn(name = "id_administrateur", referencedColumnName = "id_utilisateur")
 | 
			
		||||
public class Administrateurs extends Utilisateurs {
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_projet")
 | 
			
		||||
    private Projets projetsAdministrateurs;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "administrateursSections", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private List<Sections> ListSections = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_rdv")
 | 
			
		||||
    private RendezVous rendezVousAdministrateurs;
 | 
			
		||||
 | 
			
		||||
    public Administrateurs() {}
 | 
			
		||||
 | 
			
		||||
    public Administrateurs(
 | 
			
		||||
            String nom_utilisateur,
 | 
			
		||||
            Long id_utilisateur,
 | 
			
		||||
            String prenom_utilisateur,
 | 
			
		||||
            String mail_principal,
 | 
			
		||||
            String mail_secondaire,
 | 
			
		||||
            String numero_telephone) {
 | 
			
		||||
        super(
 | 
			
		||||
                nom_utilisateur,
 | 
			
		||||
                id_utilisateur,
 | 
			
		||||
                prenom_utilisateur,
 | 
			
		||||
                mail_principal,
 | 
			
		||||
                mail_secondaire,
 | 
			
		||||
                numero_telephone);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package enseirb.myinpulse.api.datatypes;
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
public class Appointment {
 | 
			
		||||
    int validated;
 | 
			
		||||
@@ -1,46 +1,46 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.persistence.Entity;
 | 
			
		||||
import jakarta.persistence.Id;
 | 
			
		||||
import jakarta.persistence.Table;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "comptes_rendus")
 | 
			
		||||
public class ComptesRendus {
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_compte_rendu;
 | 
			
		||||
 | 
			
		||||
    private String contenu_compte_rendu;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_rdv")
 | 
			
		||||
    private RendezVous rendezVousComptesRendus;
 | 
			
		||||
 | 
			
		||||
    public ComptesRendus() {}
 | 
			
		||||
 | 
			
		||||
    public ComptesRendus(Long id_compte_rendu, String contenu_compte_rendu) {
 | 
			
		||||
        this.id_compte_rendu = id_compte_rendu;
 | 
			
		||||
        this.contenu_compte_rendu = contenu_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_compte_rendu() {
 | 
			
		||||
        return id_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_compte_rendu(Long id_compte_rendu) {
 | 
			
		||||
        this.id_compte_rendu = id_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getContenu_compte_rendu() {
 | 
			
		||||
        return contenu_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setContenu_compte_rendu(String contenu_compte_rendu) {
 | 
			
		||||
        this.contenu_compte_rendu = contenu_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.persistence.Entity;
 | 
			
		||||
import jakarta.persistence.Id;
 | 
			
		||||
import jakarta.persistence.Table;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "comptes_rendus")
 | 
			
		||||
public class ComptesRendus {
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_compte_rendu;
 | 
			
		||||
 | 
			
		||||
    private String contenu_compte_rendu;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_rdv")
 | 
			
		||||
    private RendezVous rendezVousComptesRendus;
 | 
			
		||||
 | 
			
		||||
    public ComptesRendus() {}
 | 
			
		||||
 | 
			
		||||
    public ComptesRendus(Long id_compte_rendu, String contenu_compte_rendu) {
 | 
			
		||||
        this.id_compte_rendu = id_compte_rendu;
 | 
			
		||||
        this.contenu_compte_rendu = contenu_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_compte_rendu() {
 | 
			
		||||
        return id_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_compte_rendu(Long id_compte_rendu) {
 | 
			
		||||
        this.id_compte_rendu = id_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getContenu_compte_rendu() {
 | 
			
		||||
        return contenu_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setContenu_compte_rendu(String contenu_compte_rendu) {
 | 
			
		||||
        this.contenu_compte_rendu = contenu_compte_rendu;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,80 +1,80 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.persistence.Entity;
 | 
			
		||||
import jakarta.persistence.Table;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "entrepreneurs")
 | 
			
		||||
@PrimaryKeyJoinColumn(name = "id_entrepreneur", referencedColumnName = "id_utilisateur")
 | 
			
		||||
public class Entrepreneurs extends Utilisateurs {
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String ecole;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String filiere;
 | 
			
		||||
 | 
			
		||||
    private boolean status_snee;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_projet_participation", referencedColumnName = "id_projet")
 | 
			
		||||
    private Projets projetsParticipation;
 | 
			
		||||
 | 
			
		||||
    // @Column(insertable=false, updatable=false)
 | 
			
		||||
    @OneToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_projet_propose", referencedColumnName = "id_projet")
 | 
			
		||||
    private Projets projetsPropose;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_rdv")
 | 
			
		||||
    private RendezVous rendezVousEntrepreneurs;
 | 
			
		||||
 | 
			
		||||
    public Entrepreneurs() {}
 | 
			
		||||
 | 
			
		||||
    public Entrepreneurs(
 | 
			
		||||
            String nom_utilisateur,
 | 
			
		||||
            Long id_utilisateur,
 | 
			
		||||
            String prenom_utilisateur,
 | 
			
		||||
            String mail_principal,
 | 
			
		||||
            String mail_secondaire,
 | 
			
		||||
            String numero_telephone,
 | 
			
		||||
            String ecole,
 | 
			
		||||
            boolean status_snee,
 | 
			
		||||
            String filiere) {
 | 
			
		||||
        super(
 | 
			
		||||
                nom_utilisateur,
 | 
			
		||||
                id_utilisateur,
 | 
			
		||||
                prenom_utilisateur,
 | 
			
		||||
                mail_principal,
 | 
			
		||||
                mail_secondaire,
 | 
			
		||||
                numero_telephone);
 | 
			
		||||
        this.ecole = ecole;
 | 
			
		||||
        this.status_snee = status_snee;
 | 
			
		||||
        this.filiere = filiere;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getEcole() {
 | 
			
		||||
        return ecole;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setEcole(String ecole) {
 | 
			
		||||
        this.ecole = ecole;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getFiliere() {
 | 
			
		||||
        return filiere;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setFiliere(String filiere) {
 | 
			
		||||
        this.filiere = filiere;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean isStatus_snee() {
 | 
			
		||||
        return status_snee;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setStatus_snee(boolean status_snee) {
 | 
			
		||||
        this.status_snee = status_snee;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.persistence.Entity;
 | 
			
		||||
import jakarta.persistence.Table;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "entrepreneurs")
 | 
			
		||||
@PrimaryKeyJoinColumn(name = "id_entrepreneur", referencedColumnName = "id_utilisateur")
 | 
			
		||||
public class Entrepreneurs extends Utilisateurs {
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String ecole;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String filiere;
 | 
			
		||||
 | 
			
		||||
    private boolean status_snee;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_projet_participation", referencedColumnName = "id_projet")
 | 
			
		||||
    private Projets projetsParticipation;
 | 
			
		||||
 | 
			
		||||
    // @Column(insertable=false, updatable=false)
 | 
			
		||||
    @OneToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_projet_propose", referencedColumnName = "id_projet")
 | 
			
		||||
    private Projets projetsPropose;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_rdv")
 | 
			
		||||
    private RendezVous rendezVousEntrepreneurs;
 | 
			
		||||
 | 
			
		||||
    public Entrepreneurs() {}
 | 
			
		||||
 | 
			
		||||
    public Entrepreneurs(
 | 
			
		||||
            String nom_utilisateur,
 | 
			
		||||
            Long id_utilisateur,
 | 
			
		||||
            String prenom_utilisateur,
 | 
			
		||||
            String mail_principal,
 | 
			
		||||
            String mail_secondaire,
 | 
			
		||||
            String numero_telephone,
 | 
			
		||||
            String ecole,
 | 
			
		||||
            boolean status_snee,
 | 
			
		||||
            String filiere) {
 | 
			
		||||
        super(
 | 
			
		||||
                nom_utilisateur,
 | 
			
		||||
                id_utilisateur,
 | 
			
		||||
                prenom_utilisateur,
 | 
			
		||||
                mail_principal,
 | 
			
		||||
                mail_secondaire,
 | 
			
		||||
                numero_telephone);
 | 
			
		||||
        this.ecole = ecole;
 | 
			
		||||
        this.status_snee = status_snee;
 | 
			
		||||
        this.filiere = filiere;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getEcole() {
 | 
			
		||||
        return ecole;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setEcole(String ecole) {
 | 
			
		||||
        this.ecole = ecole;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getFiliere() {
 | 
			
		||||
        return filiere;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setFiliere(String filiere) {
 | 
			
		||||
        this.filiere = filiere;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean isStatus_snee() {
 | 
			
		||||
        return status_snee;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setStatus_snee(boolean status_snee) {
 | 
			
		||||
        this.status_snee = status_snee;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package enseirb.myinpulse.api.datatypes;
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
// TODO: is this redundant with the Section class from the database ?
 | 
			
		||||
// TODO: In the one hand it represent the same data, and on the other it should be much lighter.
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package enseirb.myinpulse.api.datatypes;
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
public class Project {
 | 
			
		||||
    int projectId;
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package enseirb.myinpulse.api.datatypes;
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
public class ProjectDecision {
 | 
			
		||||
    int projectId;
 | 
			
		||||
@@ -1,98 +1,98 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "projets")
 | 
			
		||||
public class Projets {
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_projet;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String nom_projet;
 | 
			
		||||
 | 
			
		||||
    private byte[] logo;
 | 
			
		||||
 | 
			
		||||
    private LocalDate date_creation;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String status_projet;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "projetsAdministrateurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private List<Administrateurs> listAdministrateurs = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "projetsParticipation", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private List<Entrepreneurs> ListEntrepreneursParticipation = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToOne(mappedBy = "projetsPropose", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private Entrepreneurs entrepreneursPropose;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "projetsSections", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private List<Sections> ListSections = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    // Hibernate expects entities to have a no-arg constructor,
 | 
			
		||||
    // though it does not necessarily have to be public.
 | 
			
		||||
 | 
			
		||||
    public Projets() {}
 | 
			
		||||
 | 
			
		||||
    public Projets(
 | 
			
		||||
            Long id_projet,
 | 
			
		||||
            String nom_projet,
 | 
			
		||||
            byte[] logo,
 | 
			
		||||
            LocalDate date_creation,
 | 
			
		||||
            String status_projet) {
 | 
			
		||||
        this.id_projet = id_projet;
 | 
			
		||||
        this.nom_projet = nom_projet;
 | 
			
		||||
        this.logo = logo;
 | 
			
		||||
        this.date_creation = date_creation;
 | 
			
		||||
        this.status_projet = status_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_projet() {
 | 
			
		||||
        return id_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_projet(Long id_projet) {
 | 
			
		||||
        this.id_projet = id_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getNom_projet() {
 | 
			
		||||
        return nom_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setNom_projet(String nom_projet) {
 | 
			
		||||
        this.nom_projet = nom_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public byte[] getLogo() {
 | 
			
		||||
        return logo;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setLogo(byte[] logo) {
 | 
			
		||||
        this.logo = logo;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalDate getDate_creation() {
 | 
			
		||||
        return date_creation;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setDate_creation(LocalDate date_creation) {
 | 
			
		||||
        this.date_creation = date_creation;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getStatus_projet() {
 | 
			
		||||
        return status_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setStatus_projet(String status_projet) {
 | 
			
		||||
        this.status_projet = status_projet;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "projets")
 | 
			
		||||
public class Projets {
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_projet;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String nom_projet;
 | 
			
		||||
 | 
			
		||||
    private byte[] logo;
 | 
			
		||||
 | 
			
		||||
    private LocalDate date_creation;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String status_projet;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "projetsAdministrateurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private List<Administrateurs> listAdministrateurs = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "projetsParticipation", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private List<Entrepreneurs> ListEntrepreneursParticipation = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToOne(mappedBy = "projetsPropose", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private Entrepreneurs entrepreneursPropose;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "projetsSections", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private List<Sections> ListSections = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    // Hibernate expects entities to have a no-arg constructor,
 | 
			
		||||
    // though it does not necessarily have to be public.
 | 
			
		||||
 | 
			
		||||
    public Projets() {}
 | 
			
		||||
 | 
			
		||||
    public Projets(
 | 
			
		||||
            Long id_projet,
 | 
			
		||||
            String nom_projet,
 | 
			
		||||
            byte[] logo,
 | 
			
		||||
            LocalDate date_creation,
 | 
			
		||||
            String status_projet) {
 | 
			
		||||
        this.id_projet = id_projet;
 | 
			
		||||
        this.nom_projet = nom_projet;
 | 
			
		||||
        this.logo = logo;
 | 
			
		||||
        this.date_creation = date_creation;
 | 
			
		||||
        this.status_projet = status_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_projet() {
 | 
			
		||||
        return id_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_projet(Long id_projet) {
 | 
			
		||||
        this.id_projet = id_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getNom_projet() {
 | 
			
		||||
        return nom_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setNom_projet(String nom_projet) {
 | 
			
		||||
        this.nom_projet = nom_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public byte[] getLogo() {
 | 
			
		||||
        return logo;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setLogo(byte[] logo) {
 | 
			
		||||
        this.logo = logo;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalDate getDate_creation() {
 | 
			
		||||
        return date_creation;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setDate_creation(LocalDate date_creation) {
 | 
			
		||||
        this.date_creation = date_creation;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getStatus_projet() {
 | 
			
		||||
        return status_projet;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setStatus_projet(String status_projet) {
 | 
			
		||||
        this.status_projet = status_projet;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,111 +1,111 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.time.LocalTime;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "rendez_vous")
 | 
			
		||||
public class RendezVous {
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "rendezVousEntrepreneurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private final List<Entrepreneurs> ListEntrepreneurs = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "rendezVousAdministrateurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private final List<Administrateurs> ListAdministrateurs = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "rendezVousComptesRendus", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private final List<ComptesRendus> ListComptesRendus = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @ManyToMany(
 | 
			
		||||
            fetch = FetchType.LAZY,
 | 
			
		||||
            cascade = {CascadeType.ALL})
 | 
			
		||||
    @JoinTable(
 | 
			
		||||
            name = "concerner",
 | 
			
		||||
            joinColumns = @JoinColumn(name = "id_rdv"),
 | 
			
		||||
            inverseJoinColumns = @JoinColumn(name = "id_section"))
 | 
			
		||||
    List<Sections> ListSections = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_rdv;
 | 
			
		||||
 | 
			
		||||
    private LocalDate date_rdv;
 | 
			
		||||
    private LocalTime heure_rdv;
 | 
			
		||||
    private LocalTime duree_rdv;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String lieu_rdv;
 | 
			
		||||
 | 
			
		||||
    private String sujet_rdv;
 | 
			
		||||
 | 
			
		||||
    public RendezVous() {}
 | 
			
		||||
 | 
			
		||||
    public RendezVous(
 | 
			
		||||
            Long id_rdv,
 | 
			
		||||
            LocalDate date_rdv,
 | 
			
		||||
            LocalTime heure_rdv,
 | 
			
		||||
            LocalTime duree_rdv,
 | 
			
		||||
            String lieu_rdv,
 | 
			
		||||
            String sujet_rdv) {
 | 
			
		||||
        this.id_rdv = id_rdv;
 | 
			
		||||
        this.date_rdv = date_rdv;
 | 
			
		||||
        this.heure_rdv = heure_rdv;
 | 
			
		||||
        this.duree_rdv = duree_rdv;
 | 
			
		||||
        this.lieu_rdv = lieu_rdv;
 | 
			
		||||
        this.sujet_rdv = sujet_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_rdv() {
 | 
			
		||||
        return id_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_rdv(Long id_rdv) {
 | 
			
		||||
        this.id_rdv = id_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalDate getDate_rdv() {
 | 
			
		||||
        return date_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setDate_rdv(LocalDate date_rdv) {
 | 
			
		||||
        this.date_rdv = date_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalTime getHeure_rdv() {
 | 
			
		||||
        return heure_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setHeure_rdv(LocalTime heure_rdv) {
 | 
			
		||||
        this.heure_rdv = heure_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalTime getDuree_rdv() {
 | 
			
		||||
        return duree_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setDuree_rdv(LocalTime duree_rdv) {
 | 
			
		||||
        this.duree_rdv = duree_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getLieu_rdv() {
 | 
			
		||||
        return lieu_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setLieu_rdv(String lieu_rdv) {
 | 
			
		||||
        this.lieu_rdv = lieu_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getSujet_rdv() {
 | 
			
		||||
        return sujet_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setSujet_rdv(String sujet_rdv) {
 | 
			
		||||
        this.sujet_rdv = sujet_rdv;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.time.LocalTime;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "rendez_vous")
 | 
			
		||||
public class RendezVous {
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "rendezVousEntrepreneurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private final List<Entrepreneurs> ListEntrepreneurs = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "rendezVousAdministrateurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private final List<Administrateurs> ListAdministrateurs = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "rendezVousComptesRendus", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private final List<ComptesRendus> ListComptesRendus = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @ManyToMany(
 | 
			
		||||
            fetch = FetchType.LAZY,
 | 
			
		||||
            cascade = {CascadeType.ALL})
 | 
			
		||||
    @JoinTable(
 | 
			
		||||
            name = "concerner",
 | 
			
		||||
            joinColumns = @JoinColumn(name = "id_rdv"),
 | 
			
		||||
            inverseJoinColumns = @JoinColumn(name = "id_section"))
 | 
			
		||||
    List<Sections> ListSections = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_rdv;
 | 
			
		||||
 | 
			
		||||
    private LocalDate date_rdv;
 | 
			
		||||
    private LocalTime heure_rdv;
 | 
			
		||||
    private LocalTime duree_rdv;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String lieu_rdv;
 | 
			
		||||
 | 
			
		||||
    private String sujet_rdv;
 | 
			
		||||
 | 
			
		||||
    public RendezVous() {}
 | 
			
		||||
 | 
			
		||||
    public RendezVous(
 | 
			
		||||
            Long id_rdv,
 | 
			
		||||
            LocalDate date_rdv,
 | 
			
		||||
            LocalTime heure_rdv,
 | 
			
		||||
            LocalTime duree_rdv,
 | 
			
		||||
            String lieu_rdv,
 | 
			
		||||
            String sujet_rdv) {
 | 
			
		||||
        this.id_rdv = id_rdv;
 | 
			
		||||
        this.date_rdv = date_rdv;
 | 
			
		||||
        this.heure_rdv = heure_rdv;
 | 
			
		||||
        this.duree_rdv = duree_rdv;
 | 
			
		||||
        this.lieu_rdv = lieu_rdv;
 | 
			
		||||
        this.sujet_rdv = sujet_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_rdv() {
 | 
			
		||||
        return id_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_rdv(Long id_rdv) {
 | 
			
		||||
        this.id_rdv = id_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalDate getDate_rdv() {
 | 
			
		||||
        return date_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setDate_rdv(LocalDate date_rdv) {
 | 
			
		||||
        this.date_rdv = date_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalTime getHeure_rdv() {
 | 
			
		||||
        return heure_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setHeure_rdv(LocalTime heure_rdv) {
 | 
			
		||||
        this.heure_rdv = heure_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalTime getDuree_rdv() {
 | 
			
		||||
        return duree_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setDuree_rdv(LocalTime duree_rdv) {
 | 
			
		||||
        this.duree_rdv = duree_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getLieu_rdv() {
 | 
			
		||||
        return lieu_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setLieu_rdv(String lieu_rdv) {
 | 
			
		||||
        this.lieu_rdv = lieu_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getSujet_rdv() {
 | 
			
		||||
        return sujet_rdv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setSujet_rdv(String sujet_rdv) {
 | 
			
		||||
        this.sujet_rdv = sujet_rdv;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package enseirb.myinpulse.api.datatypes;
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
public class Report {
 | 
			
		||||
    int projectId;
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package enseirb.myinpulse.utils.keycloak.datatypes;
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
public class RoleRepresentation {
 | 
			
		||||
    public String id;
 | 
			
		||||
@@ -1,81 +1,81 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDateTime;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "sections")
 | 
			
		||||
public class Sections {
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_section;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String titre;
 | 
			
		||||
 | 
			
		||||
    private String contenu_section;
 | 
			
		||||
 | 
			
		||||
    private LocalDateTime date_modification;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_projet")
 | 
			
		||||
    private Projets projetsSections;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_admnistrateur")
 | 
			
		||||
    private Administrateurs administrateursSections;
 | 
			
		||||
 | 
			
		||||
    @ManyToMany(mappedBy = "ListSections")
 | 
			
		||||
    private List<RendezVous> rendezVous = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    public Sections() {}
 | 
			
		||||
 | 
			
		||||
    public Sections(
 | 
			
		||||
            Long id_section,
 | 
			
		||||
            String titre,
 | 
			
		||||
            String contenu_section,
 | 
			
		||||
            LocalDateTime date_modification) {
 | 
			
		||||
        this.id_section = id_section;
 | 
			
		||||
        this.titre = titre;
 | 
			
		||||
        this.contenu_section = contenu_section;
 | 
			
		||||
        this.date_modification = date_modification;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getTitre() {
 | 
			
		||||
        return titre;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setTitre(String titre) {
 | 
			
		||||
        this.titre = titre;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_section() {
 | 
			
		||||
        return id_section;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_section(Long id_section) {
 | 
			
		||||
        this.id_section = id_section;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getContenu_section() {
 | 
			
		||||
        return contenu_section;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setContenu_section(String contenu_section) {
 | 
			
		||||
        this.contenu_section = contenu_section;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalDateTime getDate_modification() {
 | 
			
		||||
        return date_modification;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setDate_modification(LocalDateTime date_modification) {
 | 
			
		||||
        this.date_modification = date_modification;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDateTime;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "sections")
 | 
			
		||||
public class Sections {
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_section;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String titre;
 | 
			
		||||
 | 
			
		||||
    private String contenu_section;
 | 
			
		||||
 | 
			
		||||
    private LocalDateTime date_modification;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_projet")
 | 
			
		||||
    private Projets projetsSections;
 | 
			
		||||
 | 
			
		||||
    @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "id_admnistrateur")
 | 
			
		||||
    private Administrateurs administrateursSections;
 | 
			
		||||
 | 
			
		||||
    @ManyToMany(mappedBy = "ListSections")
 | 
			
		||||
    private List<RendezVous> rendezVous = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    public Sections() {}
 | 
			
		||||
 | 
			
		||||
    public Sections(
 | 
			
		||||
            Long id_section,
 | 
			
		||||
            String titre,
 | 
			
		||||
            String contenu_section,
 | 
			
		||||
            LocalDateTime date_modification) {
 | 
			
		||||
        this.id_section = id_section;
 | 
			
		||||
        this.titre = titre;
 | 
			
		||||
        this.contenu_section = contenu_section;
 | 
			
		||||
        this.date_modification = date_modification;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getTitre() {
 | 
			
		||||
        return titre;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setTitre(String titre) {
 | 
			
		||||
        this.titre = titre;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_section() {
 | 
			
		||||
        return id_section;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_section(Long id_section) {
 | 
			
		||||
        this.id_section = id_section;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getContenu_section() {
 | 
			
		||||
        return contenu_section;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setContenu_section(String contenu_section) {
 | 
			
		||||
        this.contenu_section = contenu_section;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public LocalDateTime getDate_modification() {
 | 
			
		||||
        return date_modification;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setDate_modification(LocalDateTime date_modification) {
 | 
			
		||||
        this.date_modification = date_modification;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package enseirb.myinpulse.utils.keycloak.datatypes;
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
public class UserRepresentation {
 | 
			
		||||
    public String id;
 | 
			
		||||
@@ -1,95 +1,95 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "utilisateurs")
 | 
			
		||||
@Inheritance(strategy = InheritanceType.JOINED)
 | 
			
		||||
public class Utilisateurs {
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_utilisateur;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String nom_utilisateur;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String prenom_utilisateur;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String mail_principal;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String mail_secondaire;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 20)
 | 
			
		||||
    private String numero_telephone;
 | 
			
		||||
 | 
			
		||||
    public Utilisateurs() {}
 | 
			
		||||
 | 
			
		||||
    public Utilisateurs(
 | 
			
		||||
            String nom_utilisateur,
 | 
			
		||||
            Long id_utilisateur,
 | 
			
		||||
            String prenom_utilisateur,
 | 
			
		||||
            String mail_principal,
 | 
			
		||||
            String mail_secondaire,
 | 
			
		||||
            String numero_telephone) {
 | 
			
		||||
        this.nom_utilisateur = nom_utilisateur;
 | 
			
		||||
        this.id_utilisateur = id_utilisateur;
 | 
			
		||||
        this.prenom_utilisateur = prenom_utilisateur;
 | 
			
		||||
        this.mail_principal = mail_principal;
 | 
			
		||||
        this.mail_secondaire = mail_secondaire;
 | 
			
		||||
        this.numero_telephone = numero_telephone;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_utilisateur() {
 | 
			
		||||
        return id_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_utilisateur(Long id_utilisateur) {
 | 
			
		||||
        this.id_utilisateur = id_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getNom_utilisateur() {
 | 
			
		||||
        return nom_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setNom_utilisateur(String nom_utilisateur) {
 | 
			
		||||
        this.nom_utilisateur = nom_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getPrenom_utilisateur() {
 | 
			
		||||
        return prenom_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setPrenom_utilisateur(String prenom_utilisateur) {
 | 
			
		||||
        this.prenom_utilisateur = prenom_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getMail_principal() {
 | 
			
		||||
        return mail_principal;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setMail_principal(String mail_principal) {
 | 
			
		||||
        this.mail_principal = mail_principal;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getMail_secondaire() {
 | 
			
		||||
        return mail_secondaire;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setMail_secondaire(String mail_secondaire) {
 | 
			
		||||
        this.mail_secondaire = mail_secondaire;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getNumero_telephone() {
 | 
			
		||||
        return numero_telephone;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setNumero_telephone(String numero_telephone) {
 | 
			
		||||
        this.numero_telephone = numero_telephone;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@Table(name = "utilisateurs")
 | 
			
		||||
@Inheritance(strategy = InheritanceType.JOINED)
 | 
			
		||||
public class Utilisateurs {
 | 
			
		||||
 | 
			
		||||
    @Id
 | 
			
		||||
    @NotNull
 | 
			
		||||
    @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
    private Long id_utilisateur;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String nom_utilisateur;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String prenom_utilisateur;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String mail_principal;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 255)
 | 
			
		||||
    private String mail_secondaire;
 | 
			
		||||
 | 
			
		||||
    @Column(length = 20)
 | 
			
		||||
    private String numero_telephone;
 | 
			
		||||
 | 
			
		||||
    public Utilisateurs() {}
 | 
			
		||||
 | 
			
		||||
    public Utilisateurs(
 | 
			
		||||
            String nom_utilisateur,
 | 
			
		||||
            Long id_utilisateur,
 | 
			
		||||
            String prenom_utilisateur,
 | 
			
		||||
            String mail_principal,
 | 
			
		||||
            String mail_secondaire,
 | 
			
		||||
            String numero_telephone) {
 | 
			
		||||
        this.nom_utilisateur = nom_utilisateur;
 | 
			
		||||
        this.id_utilisateur = id_utilisateur;
 | 
			
		||||
        this.prenom_utilisateur = prenom_utilisateur;
 | 
			
		||||
        this.mail_principal = mail_principal;
 | 
			
		||||
        this.mail_secondaire = mail_secondaire;
 | 
			
		||||
        this.numero_telephone = numero_telephone;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Long getId_utilisateur() {
 | 
			
		||||
        return id_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setId_utilisateur(Long id_utilisateur) {
 | 
			
		||||
        this.id_utilisateur = id_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getNom_utilisateur() {
 | 
			
		||||
        return nom_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setNom_utilisateur(String nom_utilisateur) {
 | 
			
		||||
        this.nom_utilisateur = nom_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getPrenom_utilisateur() {
 | 
			
		||||
        return prenom_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setPrenom_utilisateur(String prenom_utilisateur) {
 | 
			
		||||
        this.prenom_utilisateur = prenom_utilisateur;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getMail_principal() {
 | 
			
		||||
        return mail_principal;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setMail_principal(String mail_principal) {
 | 
			
		||||
        this.mail_principal = mail_principal;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getMail_secondaire() {
 | 
			
		||||
        return mail_secondaire;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setMail_secondaire(String mail_secondaire) {
 | 
			
		||||
        this.mail_secondaire = mail_secondaire;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getNumero_telephone() {
 | 
			
		||||
        return numero_telephone;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setNumero_telephone(String numero_telephone) {
 | 
			
		||||
        this.numero_telephone = numero_telephone;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,52 +0,0 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.ComptesRendus;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.ComptesRendusRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class ComptesRendusController {
 | 
			
		||||
 | 
			
		||||
    private final ComptesRendusRepository comptesRendusRepository;
 | 
			
		||||
 | 
			
		||||
    public ComptesRendusController(ComptesRendusRepository comptesRendusRepository) {
 | 
			
		||||
        this.comptesRendusRepository = comptesRendusRepository;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/ComptesRendus")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<ComptesRendus> allComptesRendus() {
 | 
			
		||||
        return this.comptesRendusRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/ComptesRendus/{id}")
 | 
			
		||||
    public ComptesRendus getComptesRendusById(@PathVariable Long id) {
 | 
			
		||||
        Optional<ComptesRendus> compteRendu = this.comptesRendusRepository.findById(id);
 | 
			
		||||
        if (compteRendu.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce compte rendu n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return compteRendu.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/ComptesRendus")
 | 
			
		||||
    public ComptesRendus addComptesRendus(@RequestBody ComptesRendus comptesRendus) {
 | 
			
		||||
        return this.comptesRendusRepository.save(comptesRendus);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/ComptesRendus/{id}")
 | 
			
		||||
    public ComptesRendus updateProjets(@PathVariable Long id, String contenu_compte_rendu) {
 | 
			
		||||
        Optional<ComptesRendus> compteRendu = this.comptesRendusRepository.findById(id);
 | 
			
		||||
        if (compteRendu.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce compte rendu n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (contenu_compte_rendu != null) {
 | 
			
		||||
            compteRendu.get().setContenu_compte_rendu(contenu_compte_rendu);
 | 
			
		||||
        }
 | 
			
		||||
        return this.comptesRendusRepository.save(compteRendu.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,14 +1,14 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Administrateurs;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface AdministrateursRepository extends JpaRepository<Administrateurs, Long> {
 | 
			
		||||
 | 
			
		||||
    /* @Query("SELECT a from Administrateurs a")
 | 
			
		||||
    Administrateurs findAllAdministrateurs(); */
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Administrateurs;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface AdministrateursRepository extends JpaRepository<Administrateurs, Long> {
 | 
			
		||||
 | 
			
		||||
    /* @Query("SELECT a from Administrateurs a")
 | 
			
		||||
    Administrateurs findAllAdministrateurs(); */
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -1,9 +1,9 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.ComptesRendus;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface ComptesRendusRepository extends JpaRepository<ComptesRendus, Long> {}
 | 
			
		||||
package enseirb.myinpulse.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.ComptesRendus;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface ComptesRendusRepository extends JpaRepository<ComptesRendus, Integer> {}
 | 
			
		||||
@@ -1,14 +1,14 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Entrepreneurs;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface EntrepreneursRepository extends JpaRepository<Entrepreneurs, Long> {
 | 
			
		||||
 | 
			
		||||
    /* @Query("SELECT e from Entrepreneurs e")
 | 
			
		||||
    Entrepreneurs findAllEntrepreneurs(); */
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Entrepreneurs;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface EntrepreneursRepository extends JpaRepository<Entrepreneurs, Long> {
 | 
			
		||||
 | 
			
		||||
    /* @Query("SELECT e from Entrepreneurs e")
 | 
			
		||||
    Entrepreneurs findAllEntrepreneurs(); */
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -1,9 +1,9 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Projets;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface ProjetsRepository extends JpaRepository<Projets, Long> {}
 | 
			
		||||
package enseirb.myinpulse.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Projets;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface ProjetsRepository extends JpaRepository<Projets, Long> {}
 | 
			
		||||
@@ -1,9 +1,9 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.RendezVous;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface RendezVousRepository extends JpaRepository<RendezVous, Long> {}
 | 
			
		||||
package enseirb.myinpulse.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.RendezVous;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface RendezVousRepository extends JpaRepository<RendezVous, Long> {}
 | 
			
		||||
@@ -1,9 +1,9 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Sections;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface SectionsRepository extends JpaRepository<Sections, Long> {}
 | 
			
		||||
package enseirb.myinpulse.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Sections;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface SectionsRepository extends JpaRepository<Sections, Long> {}
 | 
			
		||||
@@ -1,14 +1,14 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Utilisateurs;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface UtilisateursRepository extends JpaRepository<Utilisateurs, Long> {
 | 
			
		||||
 | 
			
		||||
    /* @Query("SELECT u from Utilisateurs u")
 | 
			
		||||
    Utilisateurs findAllUtilisateurs(); */
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.repository;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Utilisateurs;
 | 
			
		||||
 | 
			
		||||
import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface UtilisateursRepository extends JpaRepository<Utilisateurs, Long> {
 | 
			
		||||
 | 
			
		||||
    /* @Query("SELECT u from Utilisateurs u")
 | 
			
		||||
    Utilisateurs findAllUtilisateurs(); */
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,46 @@
 | 
			
		||||
package enseirb.myinpulse.service;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.*;
 | 
			
		||||
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
@Service
 | 
			
		||||
public class AdminApiService {
 | 
			
		||||
    // TODO
 | 
			
		||||
    public Iterable<Administrateurs> getProjects() {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // TODO
 | 
			
		||||
    public Iterable<Appointment> getUpcomingAppointments() {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // TODO
 | 
			
		||||
    public Iterable<Project> getPendingProjects() {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // TODO
 | 
			
		||||
    public void validateProject(ProjectDecision decision) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // TODO
 | 
			
		||||
    public void addNewProject(Project project) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // TODO
 | 
			
		||||
    public void createAppointmentReport(String appointmentId, Report report) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // TODO
 | 
			
		||||
    public void deleteProject(String projectId) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,29 @@
 | 
			
		||||
package enseirb.myinpulse.service;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.LCSection;
 | 
			
		||||
import enseirb.myinpulse.model.Project;
 | 
			
		||||
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
@Service
 | 
			
		||||
public class EntrepreneurApiService {
 | 
			
		||||
 | 
			
		||||
    public void editLCSection(String sectionId, LCSection section) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void removeLCSection(String sectionId) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void addLCSection(String sectionId, LCSection section) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void requestNewProject(Project project) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,10 +1,10 @@
 | 
			
		||||
package enseirb.myinpulse.utils.keycloak;
 | 
			
		||||
package enseirb.myinpulse.service;
 | 
			
		||||
 | 
			
		||||
import static org.springframework.http.MediaType.APPLICATION_JSON;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.exceptions.UserNotFoundException;
 | 
			
		||||
import enseirb.myinpulse.utils.keycloak.datatypes.RoleRepresentation;
 | 
			
		||||
import enseirb.myinpulse.utils.keycloak.datatypes.UserRepresentation;
 | 
			
		||||
import enseirb.myinpulse.exception.UserNotFoundException;
 | 
			
		||||
import enseirb.myinpulse.model.RoleRepresentation;
 | 
			
		||||
import enseirb.myinpulse.model.UserRepresentation;
 | 
			
		||||
 | 
			
		||||
import org.springframework.web.client.RestClient;
 | 
			
		||||
 | 
			
		||||
@@ -0,0 +1,36 @@
 | 
			
		||||
package enseirb.myinpulse.service;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.*;
 | 
			
		||||
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
@Service
 | 
			
		||||
public class SharedApiService {
 | 
			
		||||
 | 
			
		||||
    public Iterable<Sections> getLCSection(String projectId, String title, String date) {
 | 
			
		||||
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Iterable<Entrepreneurs> getEntrepreneursByProjectId(int projectId) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Iterable<Administrateurs> getAdminByProjectId(int projectId) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Iterable<Appointment> getAppointmentsByProjectId(int projectId) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void getPDFReport(int appointmentId) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void createAppointmentRequest(Appointment appointment) {
 | 
			
		||||
        throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet");
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,34 @@
 | 
			
		||||
package enseirb.myinpulse.service.database;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.ComptesRendus;
 | 
			
		||||
import enseirb.myinpulse.repository.ComptesRendusRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@Service
 | 
			
		||||
public class CompteRenduService {
 | 
			
		||||
    private final ComptesRendusRepository comptesRendusRepository;
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    CompteRenduService(ComptesRendusRepository comptesRendusRepository) {
 | 
			
		||||
        this.comptesRendusRepository = comptesRendusRepository;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    ComptesRendus getComptesRendusById(int id) {
 | 
			
		||||
        Optional<ComptesRendus> compteRendu = comptesRendusRepository.findById(id);
 | 
			
		||||
        if (compteRendu.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce compte rendu n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return compteRendu.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // TODO: do some validation
 | 
			
		||||
    void saveCompteRendu(ComptesRendus compteRendu) {
 | 
			
		||||
        comptesRendusRepository.save(compteRendu);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,38 +1,38 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Administrateurs;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.AdministrateursRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class AdministrateursController {
 | 
			
		||||
 | 
			
		||||
    @Autowired AdministrateursRepository administrateursRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Administrateurs")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Administrateurs> allAdministrateurs() {
 | 
			
		||||
        return this.administrateursRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Administrateurs/{id}")
 | 
			
		||||
    public Administrateurs getAdministrateursById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Administrateurs> administrateur = this.administrateursRepository.findById(id);
 | 
			
		||||
        if (administrateur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(
 | 
			
		||||
                    HttpStatus.NOT_FOUND, "Cet administrateur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return administrateur.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Administrateurs")
 | 
			
		||||
    public Administrateurs addAdministrateurs(@RequestBody Administrateurs administrateurs) {
 | 
			
		||||
        return this.administrateursRepository.save(administrateurs);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.service.database.old_controllers_to_convert_to_services;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Administrateurs;
 | 
			
		||||
import enseirb.myinpulse.repository.AdministrateursRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class AdministrateursController {
 | 
			
		||||
 | 
			
		||||
    @Autowired AdministrateursRepository administrateursRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Administrateurs")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Administrateurs> allAdministrateurs() {
 | 
			
		||||
        return this.administrateursRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Administrateurs/{id}")
 | 
			
		||||
    public Administrateurs getAdministrateursById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Administrateurs> administrateur = this.administrateursRepository.findById(id);
 | 
			
		||||
        if (administrateur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(
 | 
			
		||||
                    HttpStatus.NOT_FOUND, "Cet administrateur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return administrateur.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Administrateurs")
 | 
			
		||||
    public Administrateurs addAdministrateurs(@RequestBody Administrateurs administrateurs) {
 | 
			
		||||
        return this.administrateursRepository.save(administrateurs);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,43 @@
 | 
			
		||||
package enseirb.myinpulse.service.database.old_controllers_to_convert_to_services;
 | 
			
		||||
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class ComptesRendusController {
 | 
			
		||||
    /*
 | 
			
		||||
       private final ComptesRendusRepository comptesRendusRepository;
 | 
			
		||||
 | 
			
		||||
       @Autowired
 | 
			
		||||
       public ComptesRendusController(ComptesRendusRepository comptesRendusRepository) {
 | 
			
		||||
           this.comptesRendusRepository = comptesRendusRepository;
 | 
			
		||||
       }
 | 
			
		||||
 | 
			
		||||
       @GetMapping("/ComptesRendus")
 | 
			
		||||
       @ResponseBody
 | 
			
		||||
       public Iterable<ComptesRendus> allComptesRendus() {
 | 
			
		||||
           System.out.println("\n\n");
 | 
			
		||||
           System.out.println(comptesRendusRepository);
 | 
			
		||||
           System.out.println("\n\n");
 | 
			
		||||
           return this.comptesRendusRepository.findAll();
 | 
			
		||||
       }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
       @PostMapping("/ComptesRendus")
 | 
			
		||||
       public ComptesRendus addComptesRendus(@RequestBody ComptesRendus comptesRendus) {
 | 
			
		||||
           return this.comptesRendusRepository.save(comptesRendus);
 | 
			
		||||
       }
 | 
			
		||||
 | 
			
		||||
       @PostMapping("/ComptesRendus/{id}")
 | 
			
		||||
       public ComptesRendus updateProjets(@PathVariable Long id, String contenu_compte_rendu) {
 | 
			
		||||
           Optional<ComptesRendus> compteRendu = this.comptesRendusRepository.findById(id);
 | 
			
		||||
           if (compteRendu.isEmpty()) {
 | 
			
		||||
               throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce compte rendu n'existe pas");
 | 
			
		||||
           }
 | 
			
		||||
           if (contenu_compte_rendu != null) {
 | 
			
		||||
               compteRendu.get().setContenu_compte_rendu(contenu_compte_rendu);
 | 
			
		||||
           }
 | 
			
		||||
           return this.comptesRendusRepository.save(compteRendu.get());
 | 
			
		||||
       }
 | 
			
		||||
 | 
			
		||||
    */
 | 
			
		||||
}
 | 
			
		||||
@@ -1,58 +1,58 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Entrepreneurs;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.EntrepreneursRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class EntrepreneursController {
 | 
			
		||||
 | 
			
		||||
    @Autowired EntrepreneursRepository entrepreneursRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Entrepreneurs")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Entrepreneurs> allEntrepreneurs() {
 | 
			
		||||
        return this.entrepreneursRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Entrepreneurs/{id}")
 | 
			
		||||
    public Entrepreneurs getEntrepreneursById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Entrepreneurs> entrepreneur = entrepreneursRepository.findById(id);
 | 
			
		||||
        if (entrepreneur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(
 | 
			
		||||
                    HttpStatus.NOT_FOUND, "Cet entrepreneur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return entrepreneur.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Entrepreneurs")
 | 
			
		||||
    public Entrepreneurs addEntrepreneurs(@RequestBody Entrepreneurs entrepreneurs) {
 | 
			
		||||
        return this.entrepreneursRepository.save(entrepreneurs);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Entrepreneurs/{id}")
 | 
			
		||||
    public Entrepreneurs updateEntrepreneurs(
 | 
			
		||||
            @PathVariable Long id, String ecole, String filiere, Boolean status_snee) {
 | 
			
		||||
        Optional<Entrepreneurs> entrepreneur = entrepreneursRepository.findById(id);
 | 
			
		||||
        if (entrepreneur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(
 | 
			
		||||
                    HttpStatus.NOT_FOUND, "Cet entrepreneur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (ecole != null) {
 | 
			
		||||
            entrepreneur.get().setEcole(ecole);
 | 
			
		||||
        }
 | 
			
		||||
        if (filiere != null) {
 | 
			
		||||
            entrepreneur.get().setFiliere(filiere);
 | 
			
		||||
        }
 | 
			
		||||
        if (status_snee != null) {
 | 
			
		||||
            entrepreneur.get().setStatus_snee(status_snee);
 | 
			
		||||
        }
 | 
			
		||||
        return this.entrepreneursRepository.save(entrepreneur.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.service.database.old_controllers_to_convert_to_services;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Entrepreneurs;
 | 
			
		||||
import enseirb.myinpulse.repository.EntrepreneursRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class EntrepreneursController {
 | 
			
		||||
 | 
			
		||||
    @Autowired EntrepreneursRepository entrepreneursRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Entrepreneurs")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Entrepreneurs> allEntrepreneurs() {
 | 
			
		||||
        return this.entrepreneursRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Entrepreneurs/{id}")
 | 
			
		||||
    public Entrepreneurs getEntrepreneursById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Entrepreneurs> entrepreneur = entrepreneursRepository.findById(id);
 | 
			
		||||
        if (entrepreneur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(
 | 
			
		||||
                    HttpStatus.NOT_FOUND, "Cet entrepreneur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return entrepreneur.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Entrepreneurs")
 | 
			
		||||
    public Entrepreneurs addEntrepreneurs(@RequestBody Entrepreneurs entrepreneurs) {
 | 
			
		||||
        return this.entrepreneursRepository.save(entrepreneurs);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Entrepreneurs/{id}")
 | 
			
		||||
    public Entrepreneurs updateEntrepreneurs(
 | 
			
		||||
            @PathVariable Long id, String ecole, String filiere, Boolean status_snee) {
 | 
			
		||||
        Optional<Entrepreneurs> entrepreneur = entrepreneursRepository.findById(id);
 | 
			
		||||
        if (entrepreneur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(
 | 
			
		||||
                    HttpStatus.NOT_FOUND, "Cet entrepreneur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (ecole != null) {
 | 
			
		||||
            entrepreneur.get().setEcole(ecole);
 | 
			
		||||
        }
 | 
			
		||||
        if (filiere != null) {
 | 
			
		||||
            entrepreneur.get().setFiliere(filiere);
 | 
			
		||||
        }
 | 
			
		||||
        if (status_snee != null) {
 | 
			
		||||
            entrepreneur.get().setStatus_snee(status_snee);
 | 
			
		||||
        }
 | 
			
		||||
        return this.entrepreneursRepository.save(entrepreneur.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,64 +1,64 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Projets;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.ProjetsRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class ProjetsController {
 | 
			
		||||
 | 
			
		||||
    @Autowired ProjetsRepository projetsRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Projets")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Projets> allProjets() {
 | 
			
		||||
        return this.projetsRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Projets/{id}")
 | 
			
		||||
    public Projets getProjetsById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Projets> projet = this.projetsRepository.findById(id);
 | 
			
		||||
        if (projet.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce projet n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return projet.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Projets")
 | 
			
		||||
    public Projets addProjets(@RequestBody Projets projet) {
 | 
			
		||||
        return this.projetsRepository.save(projet);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Projets/{id}")
 | 
			
		||||
    public Projets updateProjets(
 | 
			
		||||
            @PathVariable Long id,
 | 
			
		||||
            String nom_projet,
 | 
			
		||||
            byte[] logo,
 | 
			
		||||
            LocalDate date_creation,
 | 
			
		||||
            String status_projet) {
 | 
			
		||||
        Optional<Projets> projet = this.projetsRepository.findById(id);
 | 
			
		||||
        if (projet.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce projet n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (nom_projet != null) {
 | 
			
		||||
            projet.get().setNom_projet(nom_projet);
 | 
			
		||||
        }
 | 
			
		||||
        if (logo != null) {
 | 
			
		||||
            projet.get().setLogo(logo);
 | 
			
		||||
        }
 | 
			
		||||
        if (date_creation != null) {
 | 
			
		||||
            projet.get().setDate_creation(date_creation);
 | 
			
		||||
        }
 | 
			
		||||
        if (status_projet != null) {
 | 
			
		||||
            projet.get().setStatus_projet(status_projet);
 | 
			
		||||
        }
 | 
			
		||||
        return this.projetsRepository.save(projet.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.service.database.old_controllers_to_convert_to_services;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Projets;
 | 
			
		||||
import enseirb.myinpulse.repository.ProjetsRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class ProjetsController {
 | 
			
		||||
 | 
			
		||||
    @Autowired ProjetsRepository projetsRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Projets")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Projets> allProjets() {
 | 
			
		||||
        return this.projetsRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Projets/{id}")
 | 
			
		||||
    public Projets getProjetsById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Projets> projet = this.projetsRepository.findById(id);
 | 
			
		||||
        if (projet.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce projet n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return projet.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Projets")
 | 
			
		||||
    public Projets addProjets(@RequestBody Projets projet) {
 | 
			
		||||
        return this.projetsRepository.save(projet);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Projets/{id}")
 | 
			
		||||
    public Projets updateProjets(
 | 
			
		||||
            @PathVariable Long id,
 | 
			
		||||
            String nom_projet,
 | 
			
		||||
            byte[] logo,
 | 
			
		||||
            LocalDate date_creation,
 | 
			
		||||
            String status_projet) {
 | 
			
		||||
        Optional<Projets> projet = this.projetsRepository.findById(id);
 | 
			
		||||
        if (projet.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce projet n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (nom_projet != null) {
 | 
			
		||||
            projet.get().setNom_projet(nom_projet);
 | 
			
		||||
        }
 | 
			
		||||
        if (logo != null) {
 | 
			
		||||
            projet.get().setLogo(logo);
 | 
			
		||||
        }
 | 
			
		||||
        if (date_creation != null) {
 | 
			
		||||
            projet.get().setDate_creation(date_creation);
 | 
			
		||||
        }
 | 
			
		||||
        if (status_projet != null) {
 | 
			
		||||
            projet.get().setStatus_projet(status_projet);
 | 
			
		||||
        }
 | 
			
		||||
        return this.projetsRepository.save(projet.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,67 +1,69 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.RendezVous;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.RendezVousRepository;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.time.LocalTime;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class RendezVousController {
 | 
			
		||||
 | 
			
		||||
    @Autowired RendezVousRepository rendezVousRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/RendezVous")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<RendezVous> allRendezVous() {
 | 
			
		||||
        return this.rendezVousRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/RendezVous/{id}")
 | 
			
		||||
    public RendezVous getRendezVousById(@PathVariable Long id) {
 | 
			
		||||
        Optional<RendezVous> rendezVous = this.rendezVousRepository.findById(id);
 | 
			
		||||
        if (rendezVous.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce rendez vous n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return rendezVous.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/RendezVous")
 | 
			
		||||
    public RendezVous addRendezVous(@RequestBody RendezVous rendezVous) {
 | 
			
		||||
        return this.rendezVousRepository.save(rendezVous);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/RendezVous/{id}")
 | 
			
		||||
    public RendezVous updateRendezVous(
 | 
			
		||||
            @PathVariable Long id,
 | 
			
		||||
            LocalDate date_rdv,
 | 
			
		||||
            LocalTime heure_rdv,
 | 
			
		||||
            LocalTime duree_rdv,
 | 
			
		||||
            String lieu_rdv,
 | 
			
		||||
            String sujet_rdv) {
 | 
			
		||||
        Optional<RendezVous> rendezVous = this.rendezVousRepository.findById(id);
 | 
			
		||||
        if (rendezVous.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce rendez vous n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (date_rdv != null) {
 | 
			
		||||
            rendezVous.get().setDate_rdv(date_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        if (heure_rdv != null) {
 | 
			
		||||
            rendezVous.get().setHeure_rdv(heure_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        if (duree_rdv != null) {
 | 
			
		||||
            rendezVous.get().setDuree_rdv(duree_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        if (lieu_rdv != null) {
 | 
			
		||||
            rendezVous.get().setLieu_rdv(lieu_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        if (sujet_rdv != null) {
 | 
			
		||||
            rendezVous.get().setSujet_rdv(sujet_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        return this.rendezVousRepository.save(rendezVous.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.service.database.old_controllers_to_convert_to_services;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.RendezVous;
 | 
			
		||||
import enseirb.myinpulse.repository.RendezVousRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.time.LocalTime;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class RendezVousController {
 | 
			
		||||
 | 
			
		||||
    @Autowired RendezVousRepository rendezVousRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/RendezVous")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<RendezVous> allRendezVous() {
 | 
			
		||||
        return this.rendezVousRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/RendezVous/{id}")
 | 
			
		||||
    public RendezVous getRendezVousById(@PathVariable Long id) {
 | 
			
		||||
        Optional<RendezVous> rendezVous = this.rendezVousRepository.findById(id);
 | 
			
		||||
        if (rendezVous.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce rendez vous n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return rendezVous.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/RendezVous")
 | 
			
		||||
    public RendezVous addRendezVous(@RequestBody RendezVous rendezVous) {
 | 
			
		||||
        return this.rendezVousRepository.save(rendezVous);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/RendezVous/{id}")
 | 
			
		||||
    public RendezVous updateRendezVous(
 | 
			
		||||
            @PathVariable Long id,
 | 
			
		||||
            LocalDate date_rdv,
 | 
			
		||||
            LocalTime heure_rdv,
 | 
			
		||||
            LocalTime duree_rdv,
 | 
			
		||||
            String lieu_rdv,
 | 
			
		||||
            String sujet_rdv) {
 | 
			
		||||
        Optional<RendezVous> rendezVous = this.rendezVousRepository.findById(id);
 | 
			
		||||
        if (rendezVous.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce rendez vous n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (date_rdv != null) {
 | 
			
		||||
            rendezVous.get().setDate_rdv(date_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        if (heure_rdv != null) {
 | 
			
		||||
            rendezVous.get().setHeure_rdv(heure_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        if (duree_rdv != null) {
 | 
			
		||||
            rendezVous.get().setDuree_rdv(duree_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        if (lieu_rdv != null) {
 | 
			
		||||
            rendezVous.get().setLieu_rdv(lieu_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        if (sujet_rdv != null) {
 | 
			
		||||
            rendezVous.get().setSujet_rdv(sujet_rdv);
 | 
			
		||||
        }
 | 
			
		||||
        return this.rendezVousRepository.save(rendezVous.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,60 +1,60 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Sections;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.SectionsRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDateTime;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class SectionsController {
 | 
			
		||||
 | 
			
		||||
    @Autowired SectionsRepository sectionsRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Sections")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Sections> allSections() {
 | 
			
		||||
        return this.sectionsRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Sections/{id}")
 | 
			
		||||
    public Sections getSectionsById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Sections> section = this.sectionsRepository.findById(id);
 | 
			
		||||
        if (section.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cette section n'extise pas");
 | 
			
		||||
        }
 | 
			
		||||
        return section.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Sections")
 | 
			
		||||
    public Sections addSections(@RequestBody Sections sections) {
 | 
			
		||||
        return this.sectionsRepository.save(sections);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Sections/{id}")
 | 
			
		||||
    public Sections updateSections(
 | 
			
		||||
            @PathVariable Long id,
 | 
			
		||||
            String titre,
 | 
			
		||||
            String contenu_section,
 | 
			
		||||
            LocalDateTime date_modification) {
 | 
			
		||||
        Optional<Sections> section = this.sectionsRepository.findById(id);
 | 
			
		||||
        if (section.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cette section n'extise pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (titre != null) {
 | 
			
		||||
            section.get().setTitre(titre);
 | 
			
		||||
        }
 | 
			
		||||
        if (contenu_section != null) {
 | 
			
		||||
            section.get().setContenu_section(contenu_section);
 | 
			
		||||
        }
 | 
			
		||||
        if (date_modification != null) {
 | 
			
		||||
            section.get().setDate_modification(date_modification);
 | 
			
		||||
        }
 | 
			
		||||
        return this.sectionsRepository.save(section.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.service.database.old_controllers_to_convert_to_services;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Sections;
 | 
			
		||||
import enseirb.myinpulse.repository.SectionsRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDateTime;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class SectionsController {
 | 
			
		||||
 | 
			
		||||
    @Autowired SectionsRepository sectionsRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Sections")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Sections> allSections() {
 | 
			
		||||
        return this.sectionsRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Sections/{id}")
 | 
			
		||||
    public Sections getSectionsById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Sections> section = this.sectionsRepository.findById(id);
 | 
			
		||||
        if (section.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cette section n'extise pas");
 | 
			
		||||
        }
 | 
			
		||||
        return section.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Sections")
 | 
			
		||||
    public Sections addSections(@RequestBody Sections sections) {
 | 
			
		||||
        return this.sectionsRepository.save(sections);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Sections/{id}")
 | 
			
		||||
    public Sections updateSections(
 | 
			
		||||
            @PathVariable Long id,
 | 
			
		||||
            String titre,
 | 
			
		||||
            String contenu_section,
 | 
			
		||||
            LocalDateTime date_modification) {
 | 
			
		||||
        Optional<Sections> section = this.sectionsRepository.findById(id);
 | 
			
		||||
        if (section.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cette section n'extise pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (titre != null) {
 | 
			
		||||
            section.get().setTitre(titre);
 | 
			
		||||
        }
 | 
			
		||||
        if (contenu_section != null) {
 | 
			
		||||
            section.get().setContenu_section(contenu_section);
 | 
			
		||||
        }
 | 
			
		||||
        if (date_modification != null) {
 | 
			
		||||
            section.get().setDate_modification(date_modification);
 | 
			
		||||
        }
 | 
			
		||||
        return this.sectionsRepository.save(section.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,67 +1,67 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Utilisateurs;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.UtilisateursRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class UtilisateursController {
 | 
			
		||||
 | 
			
		||||
    @Autowired UtilisateursRepository utilisateursRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Utilisateurs")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Utilisateurs> allUtilisateurs() {
 | 
			
		||||
        return this.utilisateursRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Utilisateurs/{id}")
 | 
			
		||||
    public Utilisateurs getUtilisateursById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Utilisateurs> utilisateur = utilisateursRepository.findById(id);
 | 
			
		||||
        if (utilisateur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cet utilisateur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return utilisateur.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Utilisateurs")
 | 
			
		||||
    public Utilisateurs addUtilisateurs(@RequestBody Utilisateurs utilisateurs) {
 | 
			
		||||
        return this.utilisateursRepository.save(utilisateurs);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Utilisateurs/{id}")
 | 
			
		||||
    public Utilisateurs updateUtilisateurs(
 | 
			
		||||
            @PathVariable Long id,
 | 
			
		||||
            String nom_utilisateur,
 | 
			
		||||
            String prenom_utilisateur,
 | 
			
		||||
            String mail_principal,
 | 
			
		||||
            String mail_secondaire,
 | 
			
		||||
            String numero_telephone) {
 | 
			
		||||
        Optional<Utilisateurs> utilisateur = utilisateursRepository.findById(id);
 | 
			
		||||
        if (utilisateur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cet utilisateur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (nom_utilisateur != null) {
 | 
			
		||||
            utilisateur.get().setNom_utilisateur(nom_utilisateur);
 | 
			
		||||
        }
 | 
			
		||||
        if (prenom_utilisateur != null) {
 | 
			
		||||
            utilisateur.get().setPrenom_utilisateur(prenom_utilisateur);
 | 
			
		||||
        }
 | 
			
		||||
        if (mail_principal != null) {
 | 
			
		||||
            utilisateur.get().setMail_principal(mail_principal);
 | 
			
		||||
        }
 | 
			
		||||
        if (mail_secondaire != null) {
 | 
			
		||||
            utilisateur.get().setMail_secondaire(mail_secondaire);
 | 
			
		||||
        }
 | 
			
		||||
        if (numero_telephone != null) {
 | 
			
		||||
            utilisateur.get().setNumero_telephone(numero_telephone);
 | 
			
		||||
        }
 | 
			
		||||
        return this.utilisateursRepository.save(utilisateur.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
package enseirb.myinpulse.service.database.old_controllers_to_convert_to_services;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.model.Utilisateurs;
 | 
			
		||||
import enseirb.myinpulse.repository.UtilisateursRepository;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class UtilisateursController {
 | 
			
		||||
 | 
			
		||||
    @Autowired UtilisateursRepository utilisateursRepository;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Utilisateurs")
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public Iterable<Utilisateurs> allUtilisateurs() {
 | 
			
		||||
        return this.utilisateursRepository.findAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/Utilisateurs/{id}")
 | 
			
		||||
    public Utilisateurs getUtilisateursById(@PathVariable Long id) {
 | 
			
		||||
        Optional<Utilisateurs> utilisateur = utilisateursRepository.findById(id);
 | 
			
		||||
        if (utilisateur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cet utilisateur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        return utilisateur.get();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Utilisateurs")
 | 
			
		||||
    public Utilisateurs addUtilisateurs(@RequestBody Utilisateurs utilisateurs) {
 | 
			
		||||
        return this.utilisateursRepository.save(utilisateurs);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/Utilisateurs/{id}")
 | 
			
		||||
    public Utilisateurs updateUtilisateurs(
 | 
			
		||||
            @PathVariable Long id,
 | 
			
		||||
            String nom_utilisateur,
 | 
			
		||||
            String prenom_utilisateur,
 | 
			
		||||
            String mail_principal,
 | 
			
		||||
            String mail_secondaire,
 | 
			
		||||
            String numero_telephone) {
 | 
			
		||||
        Optional<Utilisateurs> utilisateur = utilisateursRepository.findById(id);
 | 
			
		||||
        if (utilisateur.isEmpty()) {
 | 
			
		||||
            throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cet utilisateur n'existe pas");
 | 
			
		||||
        }
 | 
			
		||||
        if (nom_utilisateur != null) {
 | 
			
		||||
            utilisateur.get().setNom_utilisateur(nom_utilisateur);
 | 
			
		||||
        }
 | 
			
		||||
        if (prenom_utilisateur != null) {
 | 
			
		||||
            utilisateur.get().setPrenom_utilisateur(prenom_utilisateur);
 | 
			
		||||
        }
 | 
			
		||||
        if (mail_principal != null) {
 | 
			
		||||
            utilisateur.get().setMail_principal(mail_principal);
 | 
			
		||||
        }
 | 
			
		||||
        if (mail_secondaire != null) {
 | 
			
		||||
            utilisateur.get().setMail_secondaire(mail_secondaire);
 | 
			
		||||
        }
 | 
			
		||||
        if (numero_telephone != null) {
 | 
			
		||||
            utilisateur.get().setNumero_telephone(numero_telephone);
 | 
			
		||||
        }
 | 
			
		||||
        return this.utilisateursRepository.save(utilisateur.get());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user