Leo/Backend #82

Merged
Maxime merged 11 commits from Leo/Backend into master 2024-03-11 19:16:20 +01:00
3 changed files with 184 additions and 0 deletions
Showing only changes of commit 02afc3df47 - Show all commits

View File

@ -0,0 +1,108 @@
package ovh.herisson.Clyde.Tables;
import jakarta.persistence.*;
import java.util.Date;
public class InscriptionRequest {
Review

il manque pas le pdf du CESS dedans ?

il manque pas le pdf du CESS dedans ?
Review

(je dirais que dans un premier temps sans l'upload on peut très bien commit ainsi ? Peut être mettre un todo)

(je dirais que dans un premier temps sans l'upload on peut très bien commit ainsi ? Peut être mettre un todo)
Review

oui tout à fait mais il faut pas oublier le champs d'où le comm

oui tout à fait mais il faut pas oublier le champs d'où le comm
Review

Je penses que c'est dans mon extension donc je l'ai pas mis ! Peut être mb ?

Je penses que c'est dans mon extension donc je l'ai pas mis ! Peut être mb ?
Review

dans le doute mets le nan ?(du moins au moins le todo)

dans le doute mets le nan ?(du moins au moins le todo)
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
private String firstName;
private String lastName;
private String adress;
private String email;
private String country;
private Date birthDate;
@ManyToOne
@JoinColumn(name="Cursus")
private Cursus cursus;
private RequestState state;
private String profilePicture;
public InscriptionRequest(){}
public InscriptionRequest(String lastName, String firstName, String adress, String email, String country, Date birthDate, RequestState state, String profilePicture){
this.lastName = lastName;
this.firstName = firstName;
this.adress = adress;
this.email = email;
this.country = country;
this.birthDate = birthDate;
this.state = state;
}
public int getId() {
return id;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getAdress() {
return adress;
}
public void setAdress(String adress) {
this.adress = adress;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
public Date getBirthDate() {
return birthDate;
}
public void setBirthDate(Date birthDate) {
this.birthDate = birthDate;
}
public Cursus getCursus() {
return cursus;
}
public void setCursus(Cursus cursus) {
this.cursus = cursus;
}
public RequestState getState() {
return state;
}
public void setState(RequestState state) {
this.state = state;
}
public String getProfilePicture() {
return profilePicture;
}
public void setProfilePicture(String profilePicture) {
this.profilePicture = profilePicture;
}
}

View File

@ -0,0 +1,69 @@
package ovh.herisson.Clyde.Tables;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
public class ReinscriptionRequest {
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
@ManyToOne
@JoinColumn(name = "User")
private User user;
@ManyToOne
@JoinColumn(name = "Cursus")
private Cursus newCursus;
private RequestState state;
//Permet de différencier les demandes de changement et une réinscription dans le même cursus
//Pour la réinscription on va le mettre a 0
private boolean type;
Review

je comprends pas à quoi type sert (dans le sens où : pourquoi on devrai différencier les demande de réinscriptions dans le même cursus ou non ?)

et le nom " type" est fort abstrait

je comprends pas à quoi type sert (dans le sens où : pourquoi on devrai différencier les demande de réinscriptions dans le même cursus ou non ?) et le nom " type" est fort abstrait
Review

parceque que j'aimerai bien pouvoir séparer les deux dans l'interface par la suite mais que leurs données sont similaires donc j'ai utilisé ca pour les différencier dans la même table ! Je suis d'accord que le nom est fort abstrait on pourrait envisager un truc comme isCursusChange.

parceque que j'aimerai bien pouvoir séparer les deux dans l'interface par la suite mais que leurs données sont similaires donc j'ai utilisé ca pour les différencier dans la même table ! Je suis d'accord que le nom est fort abstrait on pourrait envisager un truc comme isCursusChange.
Review

par pitié fais de l'héritage alors en séparant cursus change et réorientation

par pitié fais de l'héritage alors en séparant cursus change et réorientation
Review

mais le but c'est justement de pas avoir deux tables pour deux données qui ont les mêmes attributs

mais le but c'est justement de pas avoir deux tables pour deux données qui ont les mêmes attributs
Review
https://www.baeldung.com/hibernate-inheritance
public ReinscriptionRequest(){}
public ReinscriptionRequest(User user, Cursus newCursus, RequestState state, boolean type){
this.user = user;
this.newCursus = newCursus;
this.state = state;
this.type = type;
}
public int getId() {
return id;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public Cursus getNewCursus() {
return newCursus;
}
public void setNewCursus(Cursus newCursus) {
this.newCursus = newCursus;
}
public RequestState getState() {
return state;
}
public void setState(RequestState state) {
this.state = state;
}
public boolean isType() {
return type;
}
public void setType(boolean type) {
this.type = type;
}
}

View File

@ -0,0 +1,7 @@
package ovh.herisson.Clyde.Tables;
public enum RequestState {
Accepted,
Refused,
Pending;
}