diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 0000000..c5f3f6b
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,3 @@
+{
+ "java.configuration.updateBuildConfiguration": "interactive"
+}
\ No newline at end of file
diff --git a/back_end/pom.xml b/back_end/pom.xml
index 54df3f5..e8bf001 100644
--- a/back_end/pom.xml
+++ b/back_end/pom.xml
@@ -28,7 +28,7 @@
- 25
+ 17
@@ -97,7 +97,13 @@
spring-boot-starter-thymeleaf-test
test
-
+
+ org.projectlombok
+ lombok
+ 1.18.32
+ provided
+
+
diff --git a/back_end/src/main/java/hackathon/FrisbYEE/jpa/Activite.java b/back_end/src/main/java/hackathon/FrisbYEE/jpa/Activite.java
new file mode 100644
index 0000000..8b7343c
--- /dev/null
+++ b/back_end/src/main/java/hackathon/FrisbYEE/jpa/Activite.java
@@ -0,0 +1,53 @@
+package hackathon.FrisbYEE.jpa;
+
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+import jakarta.persistence.ManyToOne;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+import jakarta.persistence.Access;
+import jakarta.persistence.AccessType;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.ElementCollection;
+import jakarta.persistence.Entity;
+
+@Entity
+@Getter @Setter @NoArgsConstructor
+@Access(AccessType.FIELD)
+
+public class Activite implements Serializable {
+
+ @Id
+ @GeneratedValue
+ private Long id;
+ private String name;
+ private String theme;
+ private Long duree;
+ @ElementCollection
+ private List dataActivite = new ArrayList<>();
+
+ @ManyToOne(cascade = CascadeType.PERSIST)
+ private Session session;
+
+ public Activite(String name) {
+ this.name = name;
+ }
+
+ public Activite(String name, String theme, List dataActivite, Long duree) {
+ this.name = name;
+ this.theme = theme;
+ this.duree = duree;
+ this.dataActivite = dataActivite;
+ }
+
+ @Override
+ public String toString() {
+ return "Activite [id=" + id + " , name=" + name + "]";
+ }
+
+}
\ No newline at end of file
diff --git a/back_end/src/main/java/hackathon/FrisbYEE/jpa/Athlete.java b/back_end/src/main/java/hackathon/FrisbYEE/jpa/Athlete.java
new file mode 100644
index 0000000..73e4ece
--- /dev/null
+++ b/back_end/src/main/java/hackathon/FrisbYEE/jpa/Athlete.java
@@ -0,0 +1,28 @@
+package hackathon.FrisbYEE.jpa;
+
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+import jakarta.persistence.ManyToMany;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.OneToMany;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+import jakarta.persistence.Access;
+import jakarta.persistence.AccessType;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.ElementCollection;
+import jakarta.persistence.Entity;
+
+@Entity
+@Getter @Setter @NoArgsConstructor
+@Access(AccessType.FIELD)
+public class Athlete {
+
+
+}
diff --git a/back_end/src/main/java/hackathon/FrisbYEE/jpa/Coach.java b/back_end/src/main/java/hackathon/FrisbYEE/jpa/Coach.java
new file mode 100644
index 0000000..99287fc
--- /dev/null
+++ b/back_end/src/main/java/hackathon/FrisbYEE/jpa/Coach.java
@@ -0,0 +1,28 @@
+package hackathon.FrisbYEE.jpa;
+
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+import jakarta.persistence.ManyToMany;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.OneToMany;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+import jakarta.persistence.Access;
+import jakarta.persistence.AccessType;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.ElementCollection;
+import jakarta.persistence.Entity;
+
+@Entity
+@Getter @Setter @NoArgsConstructor
+@Access(AccessType.FIELD)
+public class Coach {
+
+
+}
diff --git a/back_end/src/main/java/hackathon/FrisbYEE/jpa/Session.java b/back_end/src/main/java/hackathon/FrisbYEE/jpa/Session.java
new file mode 100644
index 0000000..d77c880
--- /dev/null
+++ b/back_end/src/main/java/hackathon/FrisbYEE/jpa/Session.java
@@ -0,0 +1,59 @@
+package hackathon.FrisbYEE.jpa;
+
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
+import jakarta.persistence.ManyToMany;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.OneToMany;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.List;
+import jakarta.persistence.Access;
+import jakarta.persistence.AccessType;
+import jakarta.persistence.CascadeType;
+import jakarta.persistence.Entity;
+
+@Entity
+@Getter @Setter @NoArgsConstructor
+@Access(AccessType.FIELD)
+
+public class Session {
+
+ @Id
+ @GeneratedValue
+ private Long id;
+ private String name;
+ private Boolean isRecurrent;
+ private LocalDateTime creneau;
+ private Long duree;
+ private String groupe;
+
+ @ManyToOne(cascade = CascadeType.PERSIST)
+ private Coach coach; // un coach par session
+
+ @ManyToMany(cascade = CascadeType.PERSIST)
+ private List athletes = new ArrayList<>(); // plusieurs athlètes par session
+
+ @OneToMany(mappedBy = "session", cascade = CascadeType.PERSIST)
+ private List activites = new ArrayList<>(); // plusieurs activités par session
+
+ public Session(String name) {
+ this.name = name;
+ }
+
+ public Session(String name, Boolean isRecurrent, LocalDateTime creneau, Long duree, String groupe) {
+ this.name = name;
+ this.isRecurrent = isRecurrent;
+ this.creneau = creneau;
+ this.duree = duree;
+ this.groupe = groupe;
+ }
+
+ @Override
+ public String toString() {
+ return "Session [id=" + id + " , name=" + name + "]";
+ }
+}
\ No newline at end of file