diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/GetUserInfo.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/api/GetUserInfo.java deleted file mode 100644 index bbf9f85..0000000 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/GetUserInfo.java +++ /dev/null @@ -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); - } -} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/security/KeycloakJwtRolesConverter.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/config/KeycloakJwtRolesConverter.java similarity index 99% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/security/KeycloakJwtRolesConverter.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/config/KeycloakJwtRolesConverter.java index 743b765..5a95ef6 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/security/KeycloakJwtRolesConverter.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/config/KeycloakJwtRolesConverter.java @@ -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; diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/config/WebSecurityCustomConfiguration.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/config/WebSecurityCustomConfiguration.java index b8f0e4f..81f1dd8 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/config/WebSecurityCustomConfiguration.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/config/WebSecurityCustomConfiguration.java @@ -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() diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/AdminApi.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/controller/AdminApi.java similarity index 51% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/api/AdminApi.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/controller/AdminApi.java index da33b73..1a2a12a 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/AdminApi.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/controller/AdminApi.java @@ -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 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 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 getPendingProjects() { + return adminApiService.getPendingProjects(); + } /** - * TODO - * - *

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 - * - *

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 * *

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); + } } diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/EntrepreneurApi.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/controller/EntrepreneurApi.java similarity index 55% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/api/EntrepreneurApi.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/controller/EntrepreneurApi.java index 4f1eef2..0071c61 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/EntrepreneurApi.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/controller/EntrepreneurApi.java @@ -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 * *

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 * *

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 * *

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 * *

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); + } } diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/SharedApi.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/controller/SharedApi.java similarity index 55% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/api/SharedApi.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/controller/SharedApi.java index c71b5b5..038a083 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/SharedApi.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/controller/SharedApi.java @@ -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 getLCSection( @PathVariable("projectId") String projectId, @PathVariable("title") String title, - @PathVariable("date") String date) {} + @PathVariable("date") String date) { + return sharedApiService.getLCSection(projectId, title, date); + } /** - * TODO - * - *

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 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 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 getAppointmentsByProjectId(@PathVariable int projectId) { + return sharedApiService.getAppointmentsByProjectId(projectId); + } /** - * TODO: Shouldn't the last two parameters be swapped ? - * - *

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 * - *

- * - * @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); + } } diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/exceptions/RoleNotFoudException.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/exception/RoleNotFoudException.java similarity index 79% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/exceptions/RoleNotFoudException.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/exception/RoleNotFoudException.java index 22e4c23..6bc4f62 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/exceptions/RoleNotFoudException.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/exception/RoleNotFoudException.java @@ -1,4 +1,4 @@ -package enseirb.myinpulse.exceptions; +package enseirb.myinpulse.exception; public class RoleNotFoudException extends RuntimeException { public RoleNotFoudException(String message) { diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/exceptions/UserNotFoundException.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/exception/UserNotFoundException.java similarity index 79% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/exceptions/UserNotFoundException.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/exception/UserNotFoundException.java index 983e766..531be69 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/exceptions/UserNotFoundException.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/exception/UserNotFoundException.java @@ -1,4 +1,4 @@ -package enseirb.myinpulse.exceptions; +package enseirb.myinpulse.exception; public class UserNotFoundException extends RuntimeException { public UserNotFoundException(String message) { diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Administrateurs.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Administrateurs.java similarity index 93% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Administrateurs.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/Administrateurs.java index dbf2ea9..0ff00e1 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Administrateurs.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Administrateurs.java @@ -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 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 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); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/Appointment.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Appointment.java similarity index 75% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/Appointment.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/Appointment.java index ba2187e..53727c1 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/Appointment.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Appointment.java @@ -1,4 +1,4 @@ -package enseirb.myinpulse.api.datatypes; +package enseirb.myinpulse.model; public class Appointment { int validated; diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/ComptesRendus.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/ComptesRendus.java similarity index 92% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/ComptesRendus.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/ComptesRendus.java index 74c97ec..617b31a 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/ComptesRendus.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/ComptesRendus.java @@ -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; + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Entrepreneurs.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Entrepreneurs.java similarity index 94% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Entrepreneurs.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/Entrepreneurs.java index dbe9a81..ef605ea 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Entrepreneurs.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Entrepreneurs.java @@ -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; + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/LCSection.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/LCSection.java similarity index 86% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/LCSection.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/LCSection.java index 0af17e3..4fd6ec4 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/LCSection.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/LCSection.java @@ -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. diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/Project.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Project.java similarity index 70% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/Project.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/Project.java index a6ab98f..99c562a 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/Project.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Project.java @@ -1,4 +1,4 @@ -package enseirb.myinpulse.api.datatypes; +package enseirb.myinpulse.model; public class Project { int projectId; diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/ProjectDecision.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/ProjectDecision.java similarity index 68% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/ProjectDecision.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/ProjectDecision.java index ab3387b..8eb9976 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/ProjectDecision.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/ProjectDecision.java @@ -1,4 +1,4 @@ -package enseirb.myinpulse.api.datatypes; +package enseirb.myinpulse.model; public class ProjectDecision { int projectId; diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Projets.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Projets.java similarity index 94% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Projets.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/Projets.java index e543549..2cc6a81 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Projets.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Projets.java @@ -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 listAdministrateurs = new ArrayList<>(); - - @OneToMany(mappedBy = "projetsParticipation", fetch = FetchType.LAZY, orphanRemoval = true) - private List ListEntrepreneursParticipation = new ArrayList<>(); - - @OneToOne(mappedBy = "projetsPropose", fetch = FetchType.LAZY, orphanRemoval = true) - private Entrepreneurs entrepreneursPropose; - - @OneToMany(mappedBy = "projetsSections", fetch = FetchType.LAZY, orphanRemoval = true) - private List 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 listAdministrateurs = new ArrayList<>(); + + @OneToMany(mappedBy = "projetsParticipation", fetch = FetchType.LAZY, orphanRemoval = true) + private List ListEntrepreneursParticipation = new ArrayList<>(); + + @OneToOne(mappedBy = "projetsPropose", fetch = FetchType.LAZY, orphanRemoval = true) + private Entrepreneurs entrepreneursPropose; + + @OneToMany(mappedBy = "projetsSections", fetch = FetchType.LAZY, orphanRemoval = true) + private List 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; + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/RendezVous.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/RendezVous.java similarity index 94% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/RendezVous.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/RendezVous.java index 2763bbb..ac25b96 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/RendezVous.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/RendezVous.java @@ -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 ListEntrepreneurs = new ArrayList<>(); - - @OneToMany(mappedBy = "rendezVousAdministrateurs", fetch = FetchType.LAZY, orphanRemoval = true) - private final List ListAdministrateurs = new ArrayList<>(); - - @OneToMany(mappedBy = "rendezVousComptesRendus", fetch = FetchType.LAZY, orphanRemoval = true) - private final List ListComptesRendus = new ArrayList<>(); - - @ManyToMany( - fetch = FetchType.LAZY, - cascade = {CascadeType.ALL}) - @JoinTable( - name = "concerner", - joinColumns = @JoinColumn(name = "id_rdv"), - inverseJoinColumns = @JoinColumn(name = "id_section")) - List 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 ListEntrepreneurs = new ArrayList<>(); + + @OneToMany(mappedBy = "rendezVousAdministrateurs", fetch = FetchType.LAZY, orphanRemoval = true) + private final List ListAdministrateurs = new ArrayList<>(); + + @OneToMany(mappedBy = "rendezVousComptesRendus", fetch = FetchType.LAZY, orphanRemoval = true) + private final List ListComptesRendus = new ArrayList<>(); + + @ManyToMany( + fetch = FetchType.LAZY, + cascade = {CascadeType.ALL}) + @JoinTable( + name = "concerner", + joinColumns = @JoinColumn(name = "id_rdv"), + inverseJoinColumns = @JoinColumn(name = "id_section")) + List 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; + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/Report.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Report.java similarity index 63% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/Report.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/Report.java index 3656014..7270115 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/api/datatypes/Report.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Report.java @@ -1,4 +1,4 @@ -package enseirb.myinpulse.api.datatypes; +package enseirb.myinpulse.model; public class Report { int projectId; diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/utils/keycloak/datatypes/RoleRepresentation.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/RoleRepresentation.java similarity index 68% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/utils/keycloak/datatypes/RoleRepresentation.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/RoleRepresentation.java index a6252a9..472c25b 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/utils/keycloak/datatypes/RoleRepresentation.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/RoleRepresentation.java @@ -1,4 +1,4 @@ -package enseirb.myinpulse.utils.keycloak.datatypes; +package enseirb.myinpulse.model; public class RoleRepresentation { public String id; diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Sections.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Sections.java similarity index 93% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Sections.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/Sections.java index 6e56fce..6aef759 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Sections.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Sections.java @@ -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 = 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 = 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; + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/utils/keycloak/datatypes/UserRepresentation.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/UserRepresentation.java similarity index 61% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/utils/keycloak/datatypes/UserRepresentation.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/UserRepresentation.java index f2c3522..995b417 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/utils/keycloak/datatypes/UserRepresentation.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/UserRepresentation.java @@ -1,4 +1,4 @@ -package enseirb.myinpulse.utils.keycloak.datatypes; +package enseirb.myinpulse.model; public class UserRepresentation { public String id; diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Utilisateurs.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Utilisateurs.java similarity index 94% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Utilisateurs.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/model/Utilisateurs.java index 478b9ef..11dd163 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/model/Utilisateurs.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/model/Utilisateurs.java @@ -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; + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/ComptesRendusController.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/ComptesRendusController.java deleted file mode 100644 index 21358f3..0000000 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/ComptesRendusController.java +++ /dev/null @@ -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 allComptesRendus() { - return this.comptesRendusRepository.findAll(); - } - - @GetMapping("/ComptesRendus/{id}") - public ComptesRendus getComptesRendusById(@PathVariable Long id) { - Optional 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 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()); - } -} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/AdministrateursRepository.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/AdministrateursRepository.java similarity index 74% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/AdministrateursRepository.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/repository/AdministrateursRepository.java index 0454e64..543778e 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/AdministrateursRepository.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/AdministrateursRepository.java @@ -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 { - - /* @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 { + + /* @Query("SELECT a from Administrateurs a") + Administrateurs findAllAdministrateurs(); */ + +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/ComptesRendusRepository.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/ComptesRendusRepository.java similarity index 62% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/ComptesRendusRepository.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/repository/ComptesRendusRepository.java index 168fd87..60e0017 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/ComptesRendusRepository.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/ComptesRendusRepository.java @@ -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 {} +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 {} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/EntrepreneursRepository.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/EntrepreneursRepository.java similarity index 74% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/EntrepreneursRepository.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/repository/EntrepreneursRepository.java index fc288f5..6a957f6 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/EntrepreneursRepository.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/EntrepreneursRepository.java @@ -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 { - - /* @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 { + + /* @Query("SELECT e from Entrepreneurs e") + Entrepreneurs findAllEntrepreneurs(); */ + +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/ProjetsRepository.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/ProjetsRepository.java similarity index 68% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/ProjetsRepository.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/repository/ProjetsRepository.java index d9d2e59..9d045d6 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/ProjetsRepository.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/ProjetsRepository.java @@ -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 {} +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 {} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/RendezVousRepository.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/RendezVousRepository.java similarity index 68% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/RendezVousRepository.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/repository/RendezVousRepository.java index 2856de3..127c2cb 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/RendezVousRepository.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/RendezVousRepository.java @@ -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 {} +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 {} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/SectionsRepository.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/SectionsRepository.java similarity index 68% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/SectionsRepository.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/repository/SectionsRepository.java index 4d68027..2ccff00 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/SectionsRepository.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/SectionsRepository.java @@ -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 {} +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 {} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/UtilisateursRepository.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/UtilisateursRepository.java similarity index 73% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/UtilisateursRepository.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/repository/UtilisateursRepository.java index de8371c..16f04c7 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/repository/UtilisateursRepository.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/repository/UtilisateursRepository.java @@ -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 { - - /* @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 { + + /* @Query("SELECT u from Utilisateurs u") + Utilisateurs findAllUtilisateurs(); */ + +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/service/AdminApiService.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/AdminApiService.java new file mode 100644 index 0000000..273e9cb --- /dev/null +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/AdminApiService.java @@ -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 getProjects() { + throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet"); + } + + // TODO + public Iterable getUpcomingAppointments() { + throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet"); + } + + // TODO + public Iterable 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"); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/service/EntrepreneurApiService.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/EntrepreneurApiService.java new file mode 100644 index 0000000..adb17e6 --- /dev/null +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/EntrepreneurApiService.java @@ -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"); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/utils/keycloak/KeycloakApi.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/KeycloakApi.java similarity index 94% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/utils/keycloak/KeycloakApi.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/service/KeycloakApi.java index ff6dde2..fb97c70 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/utils/keycloak/KeycloakApi.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/KeycloakApi.java @@ -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; diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/service/SharedApiService.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/SharedApiService.java new file mode 100644 index 0000000..f750a59 --- /dev/null +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/SharedApiService.java @@ -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 getLCSection(String projectId, String title, String date) { + + throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet"); + } + + public Iterable getEntrepreneursByProjectId(int projectId) { + throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet"); + } + + public Iterable getAdminByProjectId(int projectId) { + throw new ResponseStatusException(HttpStatus.NOT_IMPLEMENTED, "Not implemented yet"); + } + + public Iterable 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"); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/CompteRenduService.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/CompteRenduService.java new file mode 100644 index 0000000..7355099 --- /dev/null +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/CompteRenduService.java @@ -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 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); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/AdministrateursController.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/AdministrateursController.java similarity index 84% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/AdministrateursController.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/AdministrateursController.java index b9a8259..8a96924 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/AdministrateursController.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/AdministrateursController.java @@ -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 allAdministrateurs() { - return this.administrateursRepository.findAll(); - } - - @GetMapping("/Administrateurs/{id}") - public Administrateurs getAdministrateursById(@PathVariable Long id) { - Optional 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 allAdministrateurs() { + return this.administrateursRepository.findAll(); + } + + @GetMapping("/Administrateurs/{id}") + public Administrateurs getAdministrateursById(@PathVariable Long id) { + Optional 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); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/ComptesRendusController.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/ComptesRendusController.java new file mode 100644 index 0000000..1567b6d --- /dev/null +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/ComptesRendusController.java @@ -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 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 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()); + } + + */ +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/EntrepreneursController.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/EntrepreneursController.java similarity index 89% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/EntrepreneursController.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/EntrepreneursController.java index d97298c..4a21078 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/EntrepreneursController.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/EntrepreneursController.java @@ -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 allEntrepreneurs() { - return this.entrepreneursRepository.findAll(); - } - - @GetMapping("/Entrepreneurs/{id}") - public Entrepreneurs getEntrepreneursById(@PathVariable Long id) { - Optional 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 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 allEntrepreneurs() { + return this.entrepreneursRepository.findAll(); + } + + @GetMapping("/Entrepreneurs/{id}") + public Entrepreneurs getEntrepreneursById(@PathVariable Long id) { + Optional 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 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()); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/ProjetsController.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/ProjetsController.java similarity index 89% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/ProjetsController.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/ProjetsController.java index b6bb230..f33edbc 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/ProjetsController.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/ProjetsController.java @@ -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 allProjets() { - return this.projetsRepository.findAll(); - } - - @GetMapping("/Projets/{id}") - public Projets getProjetsById(@PathVariable Long id) { - Optional 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 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 allProjets() { + return this.projetsRepository.findAll(); + } + + @GetMapping("/Projets/{id}") + public Projets getProjetsById(@PathVariable Long id) { + Optional 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 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()); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/RendezVousController.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/RendezVousController.java similarity index 89% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/RendezVousController.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/RendezVousController.java index 9761fd9..522db14 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/RendezVousController.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/RendezVousController.java @@ -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 allRendezVous() { - return this.rendezVousRepository.findAll(); - } - - @GetMapping("/RendezVous/{id}") - public RendezVous getRendezVousById(@PathVariable Long id) { - Optional 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 = 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 allRendezVous() { + return this.rendezVousRepository.findAll(); + } + + @GetMapping("/RendezVous/{id}") + public RendezVous getRendezVousById(@PathVariable Long id) { + Optional 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 = 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()); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/SectionsController.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/SectionsController.java similarity index 88% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/SectionsController.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/SectionsController.java index 716d434..d3009c6 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/SectionsController.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/SectionsController.java @@ -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 allSections() { - return this.sectionsRepository.findAll(); - } - - @GetMapping("/Sections/{id}") - public Sections getSectionsById(@PathVariable Long id) { - Optional 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 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 allSections() { + return this.sectionsRepository.findAll(); + } + + @GetMapping("/Sections/{id}") + public Sections getSectionsById(@PathVariable Long id) { + Optional 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 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()); + } +} diff --git a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/UtilisateursController.java b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/UtilisateursController.java similarity index 90% rename from MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/UtilisateursController.java rename to MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/UtilisateursController.java index 410b5b5..ce0a66a 100644 --- a/MyINPulse-back/src/main/java/enseirb/myinpulse/postgres_db/controller/UtilisateursController.java +++ b/MyINPulse-back/src/main/java/enseirb/myinpulse/service/database/old_controllers_to_convert_to_services/UtilisateursController.java @@ -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 allUtilisateurs() { - return this.utilisateursRepository.findAll(); - } - - @GetMapping("/Utilisateurs/{id}") - public Utilisateurs getUtilisateursById(@PathVariable Long id) { - Optional 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 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 allUtilisateurs() { + return this.utilisateursRepository.findAll(); + } + + @GetMapping("/Utilisateurs/{id}") + public Utilisateurs getUtilisateursById(@PathVariable Long id) { + Optional 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 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()); + } +}