package fr.titionfire.ffsaf.data.model; import fr.titionfire.ffsaf.utils.CompetitionSystem; import fr.titionfire.ffsaf.utils.ScoreEmbeddable; import io.quarkus.runtime.annotations.RegisterForReflection; import jakarta.persistence.*; import lombok.*; import java.util.ArrayList; import java.util.List; @Getter @Setter @AllArgsConstructor @NoArgsConstructor @RegisterForReflection @Entity @ToString @Table(name = "match") public class MatchModel { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) Long id; @Column(name = "system_type") CompetitionSystem system; Long systemId; @ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name = "c1", referencedColumnName = "id") MembreModel c1_id = null; String c1_str = null; @ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name = "c2", referencedColumnName = "id") MembreModel c2_id = null; String c2_str = null; @ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name = "id_category", referencedColumnName = "id") CategoryModel category = null; long category_ord = 0; boolean isEnd = true; @ElementCollection(fetch = FetchType.EAGER) @CollectionTable(name = "score", joinColumns = @JoinColumn(name = "id_match")) List scores = new ArrayList<>(); char poule = 'A'; }