backend-api #6
@@ -1,19 +1,17 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Administrateurs;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.AdministrateursRepository;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Administrateurs;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class AdministrateursController {
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    AdministrateursRepository administrateursRepository;
 | 
			
		||||
  @Autowired AdministrateursRepository administrateursRepository;
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/Administrateurs")
 | 
			
		||||
  @ResponseBody
 | 
			
		||||
@@ -22,8 +20,7 @@ public class AdministrateursController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/Administrateurs/{id}")
 | 
			
		||||
    public Administrateurs getAdministrateursById(@PathVariable Long id)
 | 
			
		||||
    {
 | 
			
		||||
  public Administrateurs getAdministrateursById(@PathVariable Long id) {
 | 
			
		||||
    Optional<Administrateurs> administrateur = this.administrateursRepository.findById(id);
 | 
			
		||||
    if (administrateur.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cet administrateur n'existe pas");
 | 
			
		||||
@@ -35,5 +32,4 @@ public class AdministrateursController {
 | 
			
		||||
  public Administrateurs addAdministrateurs(@RequestBody Administrateurs administrateurs) {
 | 
			
		||||
    return this.administrateursRepository.save(administrateurs);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,19 +1,17 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.ComptesRendus;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.ComptesRendusRepository;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.ComptesRendus;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class ComptesRendusController {
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    ComptesRendusRepository comptesRendusRepository;
 | 
			
		||||
  @Autowired ComptesRendusRepository comptesRendusRepository;
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/ComptesRendus")
 | 
			
		||||
  @ResponseBody
 | 
			
		||||
 
 | 
			
		||||
@@ -1,21 +1,17 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Entrepreneurs;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.EntrepreneursRepository;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.http.HttpStatusCode;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Entrepreneurs;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class EntrepreneursController {
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    EntrepreneursRepository entrepreneursRepository;
 | 
			
		||||
  @Autowired EntrepreneursRepository entrepreneursRepository;
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/Entrepreneurs")
 | 
			
		||||
  @ResponseBody
 | 
			
		||||
@@ -24,8 +20,7 @@ public class EntrepreneursController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/Entrepreneurs/{id}")
 | 
			
		||||
    public Entrepreneurs getEntrepreneursById(@PathVariable Long id)
 | 
			
		||||
    {
 | 
			
		||||
  public Entrepreneurs getEntrepreneursById(@PathVariable Long id) {
 | 
			
		||||
    Optional<Entrepreneurs> entrepreneur = entrepreneursRepository.findById(id);
 | 
			
		||||
    if (entrepreneur.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cet entrepreneur n'existe pas");
 | 
			
		||||
@@ -39,7 +34,8 @@ public class EntrepreneursController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @PostMapping("/Entrepreneurs/{id}")
 | 
			
		||||
    public Entrepreneurs updateEntrepreneurs(@PathVariable Long id, String ecole, String filiere, Boolean status_snee) {
 | 
			
		||||
  public Entrepreneurs updateEntrepreneurs(
 | 
			
		||||
      @PathVariable Long id, String ecole, String filiere, Boolean status_snee) {
 | 
			
		||||
    Optional<Entrepreneurs> entrepreneur = entrepreneursRepository.findById(id);
 | 
			
		||||
    if (entrepreneur.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cet entrepreneur n'existe pas");
 | 
			
		||||
@@ -55,5 +51,4 @@ public class EntrepreneursController {
 | 
			
		||||
    }
 | 
			
		||||
    return entrepreneur.get();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,20 +1,18 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Projets;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.ProjetsRepository;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Projets;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class ProjetsController {
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    ProjetsRepository projetsRepository;
 | 
			
		||||
  @Autowired ProjetsRepository projetsRepository;
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/Projets")
 | 
			
		||||
  @ResponseBody
 | 
			
		||||
@@ -23,8 +21,7 @@ public class ProjetsController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/Projets/{id}")
 | 
			
		||||
    public Projets getProjetsById(@PathVariable Long id)
 | 
			
		||||
    {
 | 
			
		||||
  public Projets getProjetsById(@PathVariable Long id) {
 | 
			
		||||
    Optional<Projets> projet = this.projetsRepository.findById(id);
 | 
			
		||||
    if (projet.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce projet n'existe pas");
 | 
			
		||||
@@ -38,7 +35,12 @@ public class ProjetsController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @PostMapping("/Projets/{id}")
 | 
			
		||||
    public Projets updateProjets(@PathVariable Long id, String nom_projet, Byte[] logo, LocalDate date_creation, String status_projet) {
 | 
			
		||||
  public Projets updateProjets(
 | 
			
		||||
      @PathVariable Long id,
 | 
			
		||||
      String nom_projet,
 | 
			
		||||
      byte[] logo,
 | 
			
		||||
      LocalDate date_creation,
 | 
			
		||||
      String status_projet) {
 | 
			
		||||
    Optional<Projets> projet = this.projetsRepository.findById(id);
 | 
			
		||||
    if (projet.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce projet n'existe pas");
 | 
			
		||||
@@ -57,5 +59,4 @@ public class ProjetsController {
 | 
			
		||||
    }
 | 
			
		||||
    return projet.get();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -1,21 +1,19 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.RendezVousRepository;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.RendezVous;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.RendezVousRepository;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.time.LocalDateTime;
 | 
			
		||||
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;
 | 
			
		||||
  @Autowired RendezVousRepository rendezVousRepository;
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/RendezVous")
 | 
			
		||||
  @ResponseBody
 | 
			
		||||
@@ -24,8 +22,7 @@ public class RendezVousController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/RendezVous/{id}")
 | 
			
		||||
    public RendezVous getRendezVousById(@PathVariable Long id)
 | 
			
		||||
    {
 | 
			
		||||
  public RendezVous getRendezVousById(@PathVariable Long id) {
 | 
			
		||||
    Optional<RendezVous> rendezVous = this.rendezVousRepository.findById(id);
 | 
			
		||||
    if (rendezVous.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce rendez vous n'existe pas");
 | 
			
		||||
@@ -39,7 +36,13 @@ public class RendezVousController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @PostMapping("/RendezVous/{id}")
 | 
			
		||||
    public RendezVous updateRendezVous(@PathVariable Long id, LocalDate date_rdv, LocalDateTime heure_rdv, LocalDateTime duree_rdv, String lieu_rdv, String sujet_rdv) {
 | 
			
		||||
  public RendezVous updateRendezVous(
 | 
			
		||||
      @PathVariable Long id,
 | 
			
		||||
      LocalDate date_rdv,
 | 
			
		||||
      LocalDateTime heure_rdv,
 | 
			
		||||
      LocalDateTime duree_rdv,
 | 
			
		||||
      String lieu_rdv,
 | 
			
		||||
      String sujet_rdv) {
 | 
			
		||||
    Optional<RendezVous> rendezVous = this.rendezVousRepository.findById(id);
 | 
			
		||||
    if (rendezVous.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Ce rendez vous n'existe pas");
 | 
			
		||||
 
 | 
			
		||||
@@ -1,20 +1,18 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Sections;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.SectionsRepository;
 | 
			
		||||
import java.time.LocalDateTime;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Sections;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDateTime;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class SectionsController {
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    SectionsRepository sectionsRepository;
 | 
			
		||||
  @Autowired SectionsRepository sectionsRepository;
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/Sections")
 | 
			
		||||
  @ResponseBody
 | 
			
		||||
@@ -23,8 +21,7 @@ public class SectionsController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/Sections/{id}")
 | 
			
		||||
    public Sections getSectionsById(@PathVariable Long id)
 | 
			
		||||
    {
 | 
			
		||||
  public Sections getSectionsById(@PathVariable Long id) {
 | 
			
		||||
    Optional<Sections> section = this.sectionsRepository.findById(id);
 | 
			
		||||
    if (section.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cette section n'extise pas");
 | 
			
		||||
@@ -38,7 +35,11 @@ public class SectionsController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @PostMapping("/Sections/{id}")
 | 
			
		||||
    public Sections updateSections(@PathVariable Long id, String titre, String contenu_section, LocalDateTime date_modification) {
 | 
			
		||||
  public Sections updateSections(
 | 
			
		||||
      @PathVariable Long id,
 | 
			
		||||
      String titre,
 | 
			
		||||
      String contenu_section,
 | 
			
		||||
      LocalDateTime date_modification) {
 | 
			
		||||
    Optional<Sections> section = this.sectionsRepository.findById(id);
 | 
			
		||||
    if (section.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cette section n'extise pas");
 | 
			
		||||
@@ -54,5 +55,4 @@ public class SectionsController {
 | 
			
		||||
    }
 | 
			
		||||
    return section.get();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,19 +1,17 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.controller;
 | 
			
		||||
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Utilisateurs;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.repository.UtilisateursRepository;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
import enseirb.myinpulse.postgres_db.model.Utilisateurs;
 | 
			
		||||
import org.springframework.web.server.ResponseStatusException;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
@RestController
 | 
			
		||||
public class UtilisateursController {
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    UtilisateursRepository utilisateursRepository;
 | 
			
		||||
  @Autowired UtilisateursRepository utilisateursRepository;
 | 
			
		||||
 | 
			
		||||
  @GetMapping("/Utilisateurs")
 | 
			
		||||
  @ResponseBody
 | 
			
		||||
@@ -36,11 +34,18 @@ public class UtilisateursController {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @PostMapping("/Utilisateurs/{id}")
 | 
			
		||||
    public Utilisateurs updateUtilisateurs(@PathVariable Long id, String nom_utilisateur, String prenom_utilisateur, String mail_principal, String mail_secondaire, String numero_telephone) {
 | 
			
		||||
  public Utilisateurs updateUtilisateurs(
 | 
			
		||||
      @PathVariable Long id,
 | 
			
		||||
      String nom_utilisateur,
 | 
			
		||||
      String prenom_utilisateur,
 | 
			
		||||
      String mail_principal,
 | 
			
		||||
      String mail_secondaire,
 | 
			
		||||
      String numero_telephone) {
 | 
			
		||||
    Optional<Utilisateurs> utilisateur = utilisateursRepository.findById(id);
 | 
			
		||||
    if (utilisateur.isEmpty()) {
 | 
			
		||||
      throw new ResponseStatusException(HttpStatus.NOT_FOUND, "Cet utilisateur n'existe pas");
 | 
			
		||||
        }if (nom_utilisateur != null) {
 | 
			
		||||
    }
 | 
			
		||||
    if (nom_utilisateur != null) {
 | 
			
		||||
      utilisateur.get().setNom_utilisateur(nom_utilisateur);
 | 
			
		||||
    }
 | 
			
		||||
    if (prenom_utilisateur != null) {
 | 
			
		||||
@@ -57,5 +62,4 @@ public class UtilisateursController {
 | 
			
		||||
    }
 | 
			
		||||
    return utilisateur.get();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -3,32 +3,40 @@ 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")
 | 
			
		||||
 | 
			
		||||
public class Administrateurs extends Utilisateurs {
 | 
			
		||||
 | 
			
		||||
  @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "Projets.id_projets")
 | 
			
		||||
    private Projets projets;
 | 
			
		||||
  @JoinColumn(name = "id_projet")
 | 
			
		||||
  private Projets projetsAdministrateurs;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "administrateurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  @OneToMany(mappedBy = "administrateursSections", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  private List<Sections> ListSections = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
  @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "RendezVous.id_rdv")
 | 
			
		||||
    private RendezVous rendezVous;
 | 
			
		||||
  @JoinColumn(name = "id_rdv")
 | 
			
		||||
  private RendezVous rendezVousAdministrateurs;
 | 
			
		||||
 | 
			
		||||
    public Administrateurs() {
 | 
			
		||||
  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);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
    public Administrateurs(String nom_utilisateur, Long id_utilisateur, String prenom_utilisateur, String mail_principal, String mail_secondaire, String numero_telephone) {
 | 
			
		||||
        super(nom_utilisateur, id_utilisateur, prenom_utilisateur, mail_principal, mail_secondaire, numero_telephone);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.Entity;
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.persistence.Entity;
 | 
			
		||||
import jakarta.persistence.Id;
 | 
			
		||||
import jakarta.persistence.Table;
 | 
			
		||||
import jakarta.validation.constraints.NotNull;
 | 
			
		||||
@@ -18,12 +18,10 @@ public class ComptesRendus {
 | 
			
		||||
  private String contenu_compte_rendu;
 | 
			
		||||
 | 
			
		||||
  @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "RendezVous.id_rdv")
 | 
			
		||||
    private RendezVous rendezVous;
 | 
			
		||||
  @JoinColumn(name = "id_rdv")
 | 
			
		||||
  private RendezVous rendezVousComptesRendus;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    public ComptesRendus() {
 | 
			
		||||
    }
 | 
			
		||||
  public ComptesRendus() {}
 | 
			
		||||
 | 
			
		||||
  public ComptesRendus(Long id_compte_rendu, String contenu_compte_rendu) {
 | 
			
		||||
    this.id_compte_rendu = id_compte_rendu;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
package enseirb.myinpulse.postgres_db.model;
 | 
			
		||||
 | 
			
		||||
import jakarta.persistence.Entity;
 | 
			
		||||
import jakarta.persistence.*;
 | 
			
		||||
import jakarta.persistence.Entity;
 | 
			
		||||
import jakarta.persistence.Table;
 | 
			
		||||
 | 
			
		||||
@Entity
 | 
			
		||||
@@ -9,32 +9,46 @@ import jakarta.persistence.Table;
 | 
			
		||||
@PrimaryKeyJoinColumn(name = "id_entrepreneur")
 | 
			
		||||
public class Entrepreneurs extends Utilisateurs {
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String ecole;
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String filiere;
 | 
			
		||||
 | 
			
		||||
  private boolean status_snee;
 | 
			
		||||
 | 
			
		||||
  @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "Projets.id_projets")
 | 
			
		||||
    private Projets projets_participation;
 | 
			
		||||
  @JoinColumn(name = "id_projet_participation", referencedColumnName = "id_projet")
 | 
			
		||||
  private Projets projetsParticipation;
 | 
			
		||||
 | 
			
		||||
  // @Column(insertable=false, updatable=false)
 | 
			
		||||
  @OneToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "Projets.id_projets")
 | 
			
		||||
    private Projets projets_propose;
 | 
			
		||||
  @JoinColumn(name = "id_projet_propose", referencedColumnName = "id_projet")
 | 
			
		||||
  private Projets projetsPropose;
 | 
			
		||||
 | 
			
		||||
  @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "RendezVous.id_rdv")
 | 
			
		||||
    private RendezVous rendezVous;
 | 
			
		||||
  @JoinColumn(name = "id_rdv")
 | 
			
		||||
  private RendezVous rendezVousEntrepreneurs;
 | 
			
		||||
 | 
			
		||||
  public Entrepreneurs() {}
 | 
			
		||||
 | 
			
		||||
    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);
 | 
			
		||||
  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;
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,6 @@ 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;
 | 
			
		||||
@@ -16,35 +15,39 @@ public class Projets {
 | 
			
		||||
  @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
  private Long id_projet;
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String nom_projet;
 | 
			
		||||
 | 
			
		||||
    private Byte[] logo;
 | 
			
		||||
  private byte[] logo;
 | 
			
		||||
 | 
			
		||||
  private LocalDate date_creation;
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String status_projet;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "projets", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  @OneToMany(mappedBy = "projetsAdministrateurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  private List<Administrateurs> listAdministrateurs = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "projets", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  @OneToMany(mappedBy = "projetsParticipation", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  private List<Entrepreneurs> ListEntrepreneursParticipation = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToOne(mappedBy = "projets", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
    private Entrepreneurs entrepreneurs_propose;
 | 
			
		||||
  @OneToOne(mappedBy = "projetsPropose", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  private Entrepreneurs entrepreneursPropose;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "projets", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  @OneToMany(mappedBy = "projetsSections", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  private List<Sections> ListSections = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
  // Hibernate expects entities to have a no-arg constructor,
 | 
			
		||||
  // though it does not necessarily have to be public.
 | 
			
		||||
 | 
			
		||||
    public Projets() {
 | 
			
		||||
    }
 | 
			
		||||
  public Projets() {}
 | 
			
		||||
 | 
			
		||||
    public Projets(Long id_projet, String nom_projet, Byte[] logo, LocalDate date_creation, String status_projet) {
 | 
			
		||||
  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;
 | 
			
		||||
@@ -68,11 +71,11 @@ public class Projets {
 | 
			
		||||
    this.nom_projet = nom_projet;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
    public Byte[] getLogo() {
 | 
			
		||||
  public byte[] getLogo() {
 | 
			
		||||
    return logo;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
    public void setLogo(Byte[] logo) {
 | 
			
		||||
  public void setLogo(byte[] logo) {
 | 
			
		||||
    this.logo = logo;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
@@ -91,5 +94,4 @@ public class Projets {
 | 
			
		||||
  public void setStatus_projet(String status_projet) {
 | 
			
		||||
    this.status_projet = status_projet;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -23,31 +23,38 @@ public class RendezVous {
 | 
			
		||||
 | 
			
		||||
  private LocalDateTime duree_rdv;
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String lieu_rdv;
 | 
			
		||||
 | 
			
		||||
  private String sujet_rdv;
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "rendez_vous", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  @OneToMany(mappedBy = "rendezVousEntrepreneurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  private List<Entrepreneurs> ListEntrepreneurs = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "rendez_vous", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  @OneToMany(mappedBy = "rendezVousAdministrateurs", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  private List<Administrateurs> ListAdministrateurs = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @OneToMany(mappedBy = "rendez_vous", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  @OneToMany(mappedBy = "rendezVousComptesRendus", fetch = FetchType.LAZY, orphanRemoval = true)
 | 
			
		||||
  private List<ComptesRendus> ListComptesRendus = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    @ManyToMany(fetch = FetchType.LAZY, cascade = { CascadeType.ALL })
 | 
			
		||||
  @ManyToMany(
 | 
			
		||||
      fetch = FetchType.LAZY,
 | 
			
		||||
      cascade = {CascadeType.ALL})
 | 
			
		||||
  @JoinTable(
 | 
			
		||||
      name = "concerner",
 | 
			
		||||
      joinColumns = @JoinColumn(name = "id_rdv"),
 | 
			
		||||
            inverseJoinColumns = @JoinColumn(name = "id_sections"))
 | 
			
		||||
      inverseJoinColumns = @JoinColumn(name = "id_section"))
 | 
			
		||||
  List<Sections> ListSections = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    public RendezVous() {
 | 
			
		||||
    }
 | 
			
		||||
  public RendezVous() {}
 | 
			
		||||
 | 
			
		||||
    public RendezVous(Long id_rdv, LocalDate date_rdv, LocalDateTime heure_rdv, LocalDateTime duree_rdv, String lieu_rdv, String sujet_rdv) {
 | 
			
		||||
  public RendezVous(
 | 
			
		||||
      Long id_rdv,
 | 
			
		||||
      LocalDate date_rdv,
 | 
			
		||||
      LocalDateTime heure_rdv,
 | 
			
		||||
      LocalDateTime duree_rdv,
 | 
			
		||||
      String lieu_rdv,
 | 
			
		||||
      String sujet_rdv) {
 | 
			
		||||
    this.id_rdv = id_rdv;
 | 
			
		||||
    this.date_rdv = date_rdv;
 | 
			
		||||
    this.heure_rdv = heure_rdv;
 | 
			
		||||
@@ -103,5 +110,4 @@ public class RendezVous {
 | 
			
		||||
  public void setSujet_rdv(String sujet_rdv) {
 | 
			
		||||
    this.sujet_rdv = sujet_rdv;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -16,7 +16,7 @@ public class Sections {
 | 
			
		||||
  @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
  private Long id_section;
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String titre;
 | 
			
		||||
 | 
			
		||||
  private String contenu_section;
 | 
			
		||||
@@ -24,20 +24,20 @@ public class Sections {
 | 
			
		||||
  private LocalDateTime date_modification;
 | 
			
		||||
 | 
			
		||||
  @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "Projets.id_projets")
 | 
			
		||||
    private Projets projets;
 | 
			
		||||
  @JoinColumn(name = "id_projet")
 | 
			
		||||
  private Projets projetsSections;
 | 
			
		||||
 | 
			
		||||
  @ManyToOne(fetch = FetchType.LAZY)
 | 
			
		||||
    @JoinColumn(name = "Administrateurs.id_admnistrateur")
 | 
			
		||||
    private Administrateurs administrateurs;
 | 
			
		||||
  @JoinColumn(name = "id_admnistrateur")
 | 
			
		||||
  private Administrateurs administrateursSections;
 | 
			
		||||
 | 
			
		||||
    @ManyToMany(mappedBy = "sections")
 | 
			
		||||
  @ManyToMany(mappedBy = "ListSections")
 | 
			
		||||
  private List<RendezVous> rendezVous = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
    public Sections() {
 | 
			
		||||
    }
 | 
			
		||||
  public Sections() {}
 | 
			
		||||
 | 
			
		||||
    public Sections(Long id_section, String titre, String contenu_section, LocalDateTime date_modification) {
 | 
			
		||||
  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;
 | 
			
		||||
 
 | 
			
		||||
@@ -13,25 +13,30 @@ public class Utilisateurs {
 | 
			
		||||
  @GeneratedValue(strategy = GenerationType.IDENTITY)
 | 
			
		||||
  private Long id_utilisateur;
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String nom_utilisateur;
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String prenom_utilisateur;
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String mail_principal;
 | 
			
		||||
 | 
			
		||||
    @Column(length=255)
 | 
			
		||||
  @Column(length = 255)
 | 
			
		||||
  private String mail_secondaire;
 | 
			
		||||
 | 
			
		||||
    @Column(length=15)
 | 
			
		||||
  @Column(length = 15)
 | 
			
		||||
  private String numero_telephone;
 | 
			
		||||
 | 
			
		||||
    public Utilisateurs() {
 | 
			
		||||
    }
 | 
			
		||||
  public Utilisateurs() {}
 | 
			
		||||
 | 
			
		||||
    public Utilisateurs(String nom_utilisateur, Long id_utilisateur, String prenom_utilisateur, String mail_principal, String mail_secondaire, String numero_telephone) {
 | 
			
		||||
  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;
 | 
			
		||||
 
 | 
			
		||||
@@ -5,5 +5,4 @@ import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface ComptesRendusRepository extends JpaRepository<ComptesRendus, Long> {
 | 
			
		||||
}
 | 
			
		||||
public interface ComptesRendusRepository extends JpaRepository<ComptesRendus, Long> {}
 | 
			
		||||
 
 | 
			
		||||
@@ -5,5 +5,4 @@ import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface ProjetsRepository extends JpaRepository<Projets, Long> {
 | 
			
		||||
}
 | 
			
		||||
public interface ProjetsRepository extends JpaRepository<Projets, Long> {}
 | 
			
		||||
 
 | 
			
		||||
@@ -5,5 +5,4 @@ import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface RendezVousRepository extends JpaRepository<RendezVous, Long> {
 | 
			
		||||
}
 | 
			
		||||
public interface RendezVousRepository extends JpaRepository<RendezVous, Long> {}
 | 
			
		||||
 
 | 
			
		||||
@@ -5,5 +5,4 @@ import org.springframework.data.jpa.repository.JpaRepository;
 | 
			
		||||
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
 | 
			
		||||
 | 
			
		||||
@RepositoryRestResource
 | 
			
		||||
public interface SectionsRepository extends JpaRepository<Sections, Long> {
 | 
			
		||||
}
 | 
			
		||||
public interface SectionsRepository extends JpaRepository<Sections, Long> {}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@ spring.application.name=myinpulse
 | 
			
		||||
spring.security.oauth2.resourceserver.jwt.jwk-set-uri=http://localhost:7080/realms/test/protocol/openid-connect/certs
 | 
			
		||||
spring.security.oauth2.resourceserver.jwt.issuer-uri=http://localhost:7080/realms/test
 | 
			
		||||
logging.level.org.springframework.security=DEBUG
 | 
			
		||||
spring.datasource.url=jdbc:postgresql://localhost:5432/${MyINPulse_DB}
 | 
			
		||||
spring.datasource.url=jdbc:postgresql://postgres/${POSTGRES_DB}
 | 
			
		||||
spring.datasource.username=${POSTGRES_USER}
 | 
			
		||||
spring.datasource.password=${POSTGRES_PASSWORD}
 | 
			
		||||
spring.jpa.hibernate.ddl-auto=update
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,6 @@ INSERT INTO projets (nom_projet, logo, date_creation, status_projet) VALUES
 | 
			
		||||
('Débat concours', decode('022024abd5486e245c145dda65116f', 'hex'), TO_DATE('22-NOV-2023', 'DD-MON-YYYY'), 'Suspendu'),
 | 
			
		||||
('HDeirbMI', decode('ab548d6c1d595a2975e6476f544d14c55a', 'hex'), TO_DATE('07-DEC-2024', 'DD-MON-YYYY'), 'Lancement');
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
INSERT INTO utilisateurs (nom, prenom, mail_principal, mail_secondaire, numero_telephone) VALUES
 | 
			
		||||
('Dupont', 'Dupond', 'super@mail.fr', 'super2@mail.fr', '06 45 72 45 98'),
 | 
			
		||||
('Martin', 'Matin', 'genial@mail.fr', 'genial2@mail.fr', '06 52 14 58 73'),
 | 
			
		||||
@@ -39,7 +38,6 @@ INSERT INTO rendez_vous (date_rdv, heure_rdv, duree_rdv, lieu_rdv, sujet_rdv) VA
 | 
			
		||||
(TO_DATE('23-JAN-2024', 'DD-MON-YYYY'), '12:56:27', '11:03:33', "Là où le vent nous porte", "Journée la plus importante de l'année"),
 | 
			
		||||
(TO_DATE('25-AUG-2025', 'DD-MON-YYYY'), '00:09:00', '01:00:00', "Euh c'est par où l'amphi 56 ?", "Rentrée scolaire (il fait trop froid c'est quoi ça on est en août)");
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
INSERT INTO comptes_rendus (contenu_compte_rendu) VALUES
 | 
			
		||||
("Ah oui ça c'est super, ah ouais j'aime bien, bien vu de penser à ça"),
 | 
			
		||||
("Bonne réunion"),
 | 
			
		||||
 
 | 
			
		||||
@@ -17,7 +17,6 @@ date_creation   DATE              ,
 | 
			
		||||
status_projet   VARCHAR(255)      ,
 | 
			
		||||
CONSTRAINT pk_projet PRIMARY KEY (id_projet) );
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
CREATE TABLE utilisateurs
 | 
			
		||||
(
 | 
			
		||||
id_utilisateur      SERIAL    NOT NULL,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user