---
# System prepended metadata

title: GESTION DES ETUDIANTS (PERSONNES en 1.1)
tags: [' ICE', ' S9', ' Cours', ' 2022', JEE]

---

---
tags: JEE, Cours, ICE, S9, 2022
---

# GESTION DES ETUDIANTS (PERSONNES en 1.1)
[TOC]
## Routes

### Get student info
- GET
- /student/{number}, /student/{string}
- Renvoie JSON des infos du modele
### Get student list
- GET
- /students/[promo]
- JSON List [{UUID, Login}]
### Add student
- PUT
- /student/
- Input Json
### Remove Student
- DELETE
- /student/{number} (uuid), /student/{string} (login)
- Returns Success
### Modify Student
- PATCH
- /student/{number} (uuid), /student/{string} (login)
- Input Json
- Returns Success

### Get Groups ? (Est ce que c'est notre role?) (1.1)

## Modèle

- Login (string)
- ID (uuid)
- Group ID (1.1)
- Photo (string / uuid)
- Nom (string)
- Prénom (string)
- Promo (short)
- Date de naissance (datetime)

### 1.1
- Association (set de strings many to many OU table de jointure)

## User Story

### Etudiants
ajout, modification


### Notes

Les assos ont un set d'etudiants par assos, si on veut obtenir les assos par etudiants on parcourt toutes les assos, on prend l'etudiant dans chaque assos ou il est et on ressort l'assos

### Asso
gestion des membres + création d'assos

## User Stories
### backlog
#### En tant qu'un membre de l'ecole, je veux récuperer la liste de tous les étudiants ou des étudiants d'une promo en particulier
#### En tant que membre de l'école je veux récupérer les informations d'un étudiant dont je connais le login ou l'uid
#### En tant que membre de l'administration je veux éditer un étudiant, en ajouter ou en supprimer

## Version 1.0
## Version 1.1
#### En tant qu'élève, je veux avoir la liste des associations dans lesquelles j'ai été.
#### En tant que professeur je veux récupérer la liste des élèves de sa classe

## Interface
```java=

import java.util.List;

@PATH("/student")
@Consumes("MediaType.APPLICATION_JSON")
@Produces("MediaType.APPLICATION_JSON")
public interface Student{
    @GET("/")
    public abstract _____ getStudent(short uuid);
    
    @GET
    public abstract _____ getStudent(String login);
        
    @GET
    public abstract _____ getStudent(short Promo);
        
    @PUT
    public abstract JSON addStudent(_____);
    
    
}
```

## TODO

### Dans l'interface
- [ ] Gérer les codes d'erreurs : quand il y a erreur on envoit NULL et quand succès objet renvoyé.

### Services
- [ ] API -> Implémentation de l'interface.

### Ressources
- [ ] Jsp faire un truc avec la base de données

### Coder la classe Student
- [ ] Ajouter le constructeur