From 7e12f6a8389577323cbc2cd1c35ea1085776ecc5 Mon Sep 17 00:00:00 2001 From: Arthur Wambst Date: Thu, 16 Oct 2025 00:02:29 +0200 Subject: [PATCH] update ji and user --- .../fr/la_banquise/backend/data/model/Ji.java | 11 +++++++++ .../la_banquise/backend/data/model/User.java | 23 +++++++++++-------- 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/src/main/java/fr/la_banquise/backend/data/model/Ji.java b/src/main/java/fr/la_banquise/backend/data/model/Ji.java index 852ca12..1b53cc7 100644 --- a/src/main/java/fr/la_banquise/backend/data/model/Ji.java +++ b/src/main/java/fr/la_banquise/backend/data/model/Ji.java @@ -12,6 +12,8 @@ import jakarta.persistence.ManyToOne; import jakarta.persistence.OneToMany; import jakarta.persistence.SequenceGenerator; import jakarta.persistence.Table; + +import java.util.ArrayList; import java.util.List; import lombok.AllArgsConstructor; import lombok.NoArgsConstructor; @@ -35,6 +37,14 @@ public class Ji { joinColumns = @JoinColumn(name = "ji_id"), inverseJoinColumns = @JoinColumn(name = "user_id")) public List respos; + + @JsonIgnore + @ManyToMany + @JoinTable(name = "ji_participants", // Table de liaison + joinColumns = @JoinColumn(name = "ji_id"), + inverseJoinColumns = @JoinColumn(name = "user_id")) + public List participants; + public String date; @ManyToOne @@ -50,5 +60,6 @@ public class Ji { this.respos = respos; this.date = date; this.site = site; + this.participants = new ArrayList(); } } diff --git a/src/main/java/fr/la_banquise/backend/data/model/User.java b/src/main/java/fr/la_banquise/backend/data/model/User.java index 3bd8f5e..7074fba 100644 --- a/src/main/java/fr/la_banquise/backend/data/model/User.java +++ b/src/main/java/fr/la_banquise/backend/data/model/User.java @@ -48,21 +48,26 @@ public class User { public Long id; @Username public String name; @Password public String password; - + @Enumerated(EnumType.STRING) @ElementCollection(fetch = FetchType.EAGER) @CollectionTable(name = "user_roles") public Set role; - - //@JsonManagedReference - @OneToMany(mappedBy = "owner", cascade = CascadeType.ALL) - public List instances; - - @ManyToMany(mappedBy = "respos", cascade = CascadeType.ALL) - public List sujetRespo; - + + /////////////////////////////////////////////////////////////////////////// + // Dans l'ordre d'affichage dans le dashboard : @ManyToMany(mappedBy = "respos", cascade = CascadeType.ALL) public List jiRespo; + + @ManyToMany(mappedBy = "participants", cascade = CascadeType.ALL) + public List jiParticipant; + + @OneToMany(mappedBy = "owner", cascade = CascadeType.ALL) + public List instances; + + @ManyToMany(mappedBy = "respos", cascade = CascadeType.ALL) + public List sujetRespo; + /////////////////////////////////////////////////////////////////////////// // Méthode pour Quarkus Security - conversion simple @RolesValue