Merge pull request 'Complements docs (evaluations, jury, ...) + carte syntaxique. maj des' (#35) from jmplace/DocScoDoc:complements_8.docs into master

Reviewed-on: https://scodoc.org/git/viennet/DocScoDoc/pulls/35
This commit is contained in:
Emmanuel Viennet 2022-08-09 20:25:33 +02:00
commit ec40a871ac
11 changed files with 5838 additions and 3188 deletions

View File

@ -164,7 +164,7 @@ par le serveur ScoDoc.
* une route s'écrit comme une suite de noms et d'identifiants * une route s'écrit comme une suite de noms et d'identifiants
* les noms token, departement, formation, formsemestre, groupe, etudiant, bulletin, absence, logo, programme, évaluation, resultat, decision désignent des types d'objets. * les noms token, departement, formation, formsemestre, groupe, etudiant, bulletin, absence, logo, programme, évaluation, resultat, decision désignent des types d'objets.
* les noms (verbes ou groupes verbaux): set_etudiant, remove_etudiant, query, create, delete, edit, order sont des actions * les noms (verbes ou groupes verbaux): set_etudiant, remove_etudiant, query, create, delete, edit, order sont des actions
* les noms restants (ids, courant, long, ...) sont des options * les noms restants (ids, courants, long, ...) sont des options
Les autre noms sont des options ou des actions Les autre noms sont des options ou des actions
* le dernier nom apparaissant sur une route donne le type d'objet renvoyé. ce nom peut apparaître au singulier ou au pluriel * le dernier nom apparaissant sur une route donne le type d'objet renvoyé. ce nom peut apparaître au singulier ou au pluriel
* Au singulier un seul objet est renvoyé, si aucun objet n'est trouvé, retourne un 404 * Au singulier un seul objet est renvoyé, si aucun objet n'est trouvé, retourne un 404
@ -173,11 +173,15 @@ par le serveur ScoDoc.
## Référence ## Référence
La [carte syntaxique](#carte-syntaxique) vous permet de retrouver une entrée à partir de sa syntaxe (le ? amène sur la documentation associée)
Le [tableau récapitulatif](#tableau-recapitulatif-des-entrees-de-lapi) vous permet de rechercher une entrée à partir du résultat attendu
### Carte syntaxique ### Carte syntaxique
![carte_syntaxique](img/API_Chart.svg) ![carte_syntaxique](img/API_Chart.svg)
### Tableau récapitulatif des point de l'API ### Tableau récapitulatif des entrées de l'API
Ce tableau est trié selon le type des informations retournées Ce tableau est trié selon le type des informations retournées
@ -188,56 +192,57 @@ Ce tableau est trié selon le type des informations retournées
* suivi de `:` puis d'un nom en majuscule indique une requête (POST) qui modifie les données de ScoDoc * suivi de `:` puis d'un nom en majuscule indique une requête (POST) qui modifie les données de ScoDoc
| Retour | Remarque | Méthode | Navigation | | Retour | Remarque | Méthode | Navigation |
|:---------------------------|:----------------------------------|---------|--------------------------------------------------------------------------------------------------------------------| |:------------------------|:----------------------------------|---------|---------------------------------------------------------------------------------------------------------------------------|
| departement**`*`** | tous les depts |GET | [departements](http://localhost:8000/ScoDoc9API/**`**`#`**`**departements) | | departement**`*`** | tous les depts | GET | [departements](http://scodoc.org/ScoDoc9API/#departements) |
| departement**`#`** | tous les ids des depts |GET | [departements-ids](http://localhost:8000/ScoDoc9API/**`#`**departements-ids) | | departement**`#`** | tous les ids des depts | GET | [departements-ids](http://scodoc.org/ScoDoc9API/#departements-ids) |
| departement | recherche par id |GET | [departement](http://localhost:8000/ScoDoc9API/**`#`**departement) | | departement | recherche par id | GET | [departement](http://scodoc.org/ScoDoc9API/#departement) |
| departement | recherche par acronyme |GET | [departement](http://localhost:8000/ScoDoc9API/**`#`**departement) | | departement | recherche par acronyme | GET | [departement](http://scodoc.org/ScoDoc9API/#departement) |
| formation**`*`** | toutes les formations accessibles |GET | [formations](http://localhost:8000/ScoDoc9API/**`#`**formations) | | formation**`*`** | toutes les formations accessibles | GET | [formations](http://scodoc.org/ScoDoc9API/#formations) |
| formation**`#`** | ids des formations accessibles |GET | [formations-ids](http://localhost:8000/ScoDoc9API/**`#`**formations-ids) | | formation**`#`** | ids des formations accessibles | GET | [formations-ids](http://scodoc.org/ScoDoc9API/#formations-ids) |
| formation | une formation |GET | [formation](http://localhost:8000/ScoDoc9API/**`#`**formation) | | formation | une formation | GET | [formation](http://scodoc.org/ScoDoc9API/#formation) |
| export | |GET | [formation-export](http://localhost:8000/ScoDoc9API/**`#`**formation-export) | | export | | GET | [formation-export](http://scodoc.org/ScoDoc9API/#formation-export) |
| export**`+`** | |GET | [formation-export_with_ids](http://localhost:8000/ScoDoc9API/**`#`**formation-export_with_ids) | | export**`+`** | | GET | [formation-export_with_ids](http://scodoc.org/ScoDoc9API/#formation-export_with_ids) |
| referentiel_competences | |GET | [formation-referenciel_competences](http://localhost:8000/ScoDoc9API/**`#`**formation-referenciel_competences) | | referentiel_competences | | GET | [formation-referenciel_competences](http://scodoc.org/ScoDoc9API/#formation-referenciel_competences) |
| formsemestre**`#`** | |GET | [departement-formsemestres_ids](http://localhost:8000/ScoDoc9API/**`#`**departement-formsemestres_ids) | | formsemestre**`#`** | | GET | [departement-formsemestres_ids](http://scodoc.org/ScoDoc9API/#departement-formsemestres_ids) |
| formsemestre**`*`** | |GET | [departement-formsemestres_courants](http://localhost:8000/ScoDoc9API/**`#`**departement-formsemestres_courants) | | formsemestre**`*`** | | GET | [departement-formsemestres_courants](http://scodoc.org/ScoDoc9API/#departement-formsemestres_courants) |
| formsemestre**`*`** | |GET | [formsemestre-query](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-query) | | formsemestre**`*`** | | GET | [formsemestre-query](http://scodoc.org/ScoDoc9API/#formsemestre-query) |
| formsemestre**`*`** | |GET | [etudiant-formsemestres](http://localhost:8000/ScoDoc9API/**`#`**etudiant-formsemestres) | | formsemestre**`*`** | | GET | [etudiant-formsemestres](http://scodoc.org/ScoDoc9API/#etudiant-formsemestres) |
| formsemestre | |GET | [formsemestre](http://localhost:8000/ScoDoc9API/**`#`**formsemestre) | | formsemestre | | GET | [formsemestre](http://scodoc.org/ScoDoc9API/#formsemestre) |
| moduleimpl | |GET | [moduleimpl](http://localhost:8000/ScoDoc9API/**`#`**moduleimpl) | | moduleimpl | | GET | [moduleimpl](http://scodoc.org/ScoDoc9API/#moduleimpl) |
| partition**`*`** | |GET | [formsemestre-partitions](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-partitions) | | partition**`*`** | | GET | [formsemestre-partitions](http://scodoc.org/ScoDoc9API/#formsemestre-partitions) |
| partition | |GET | [partition](http://localhost:8000/ScoDoc9API/**`#`**partition) | | partition | | GET | [partition](http://scodoc.org/ScoDoc9API/#partition) |
| partition:CREATE | |POST | [formsemestre-partition-create](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-partition-create) | | partition:CREATE | | POST | [formsemestre-partition-create](http://scodoc.org/ScoDoc9API/#formsemestre-partition-create) |
| partition:EDIT | |POST | [partition-edit](http://localhost:8000/ScoDoc9API/**`#`**partition-edit) | | partition:EDIT | | POST | [partition-edit](http://scodoc.org/ScoDoc9API/#partition-edit) |
| partition:ACTION | |POST | [formsemestre-partitions-order](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-partitions-order) | | partition:ACTION | | POST | [formsemestre-partitions-order](http://scodoc.org/ScoDoc9API/#formsemestre-partitions-order) |
| partition:DELETE | |POST | [partition-delete](http://localhost:8000/ScoDoc9API/**`#`**partition-delete) | | partition:DELETE | | POST | [partition-delete](http://scodoc.org/ScoDoc9API/#partition-delete) |
| partition:ACTION | |POST | [partition-remove_etudiant](http://localhost:8000/ScoDoc9API/**`#`**partition-remove_etudiant) | | partition:ACTION | | POST | [partition-remove_etudiant](http://scodoc.org/ScoDoc9API/#partition-remove_etudiant) |
| group:CREATE | |POST | [partition-group-create](http://localhost:8000/ScoDoc9API/**`#`**partition-group-create) | | group:CREATE | | POST | [partition-group-create](http://scodoc.org/ScoDoc9API/#partition-group-create) |
| group:EDIT | |POST | [group-edit](http://localhost:8000/ScoDoc9API/**`#`**group-edit) | | group:EDIT | | POST | [group-edit](http://scodoc.org/ScoDoc9API/#group-edit) |
| group:ACTION | |POST | [partition-groups-order](http://localhost:8000/ScoDoc9API/**`#`**partition-groups-order) | | group:ACTION | | POST | [partition-groups-order](http://scodoc.org/ScoDoc9API/#partition-groups-order) |
| group:DELETE | |POST | [group-delete](http://localhost:8000/ScoDoc9API/**`#`**group-delete) | | group:DELETE | | POST | [group-delete](http://scodoc.org/ScoDoc9API/#group-delete) |
| group* | |POST | [etudiant-formsemestre-groups](http://localhost:8000/ScoDoc9API/**`#`**etudiant-formsemestre-groups) | | group* | | POST | [etudiant-formsemestre-groups](http://scodoc.org/ScoDoc9API/#etudiant-formsemestre-groups) |
| group:ACTION | |GET | [group-set_etudiant](http://localhost:8000/ScoDoc9API/**`#`**group-set_etudiant) | | group:ACTION | | GET | [group-set_etudiant](http://scodoc.org/ScoDoc9API/#group-set_etudiant) |
| group:ACTION | |POST | [group-remove_etudiant](http://localhost:8000/ScoDoc9API/**`#`**group-remove_etudiant) | | group:ACTION | | POST | [group-remove_etudiant](http://scodoc.org/ScoDoc9API/#group-remove_etudiant) |
| etudiant**`*`** | tous les étudiants |GET | [etudiants](http://localhost:8000/ScoDoc9API/**`#`**etudiants) | | etudiant**`*`** | tous les étudiants | GET | [etudiants](http://scodoc.org/ScoDoc9API/#etudiants) |
| etudiant**`*`** | recherche par etudid, nip ou i |GET | [etudiants-clé](http://localhost:8000/ScoDoc9API/**`#`**etudiants-clé) | | etudiant**`*`** | recherche par etudid, nip ou i | GET | [etudiants-clé](http://scodoc.org/ScoDoc9API/#etudiants-clé) |
| etudiant**`*`** | les étudiants actuels |GET | [etudiants-courant](http://localhost:8000/ScoDoc9API/**`#`**etudiants-courant) | | etudiant**`*`** | les étudiants actuels | GET | [etudiants-courant](http://scodoc.org/ScoDoc9API/#etudiants-courant) |
| etudiant**`*`** | |GET | [departement-etudiants](http://localhost:8000/ScoDoc9API/**`#`**departement-etudiants) | | etudiant**`*`** | | GET | [departement-etudiants](http://scodoc.org/ScoDoc9API/#departement-etudiants) |
| etudiant**`*`** | |GET | [formsemestre-etudiants](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-etudiants) | | etudiant**`*`** | | GET | [formsemestre-etudiants](http://scodoc.org/ScoDoc9API/#formsemestre-etudiants) |
| etudiant**`*`** | |GET | [formsemestre-etudiants-defaillants](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-etudiants-defaillants) | | etudiant**`*`** | | GET | [formsemestre-etudiants-defaillants](http://scodoc.org/ScoDoc9API/#formsemestre-etudiants-defaillants) |
| etudiant**`*`** | |GET | [formsemestre-etudiants-demissionnaires](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-etudiants-demissionnaires) | | etudiant**`*`** | | GET | [formsemestre-etudiants-demissionnaires](http://scodoc.org/ScoDoc9API/#formsemestre-etudiants-demissionnaires) |
| etudiant**`*`** | |GET | [group-etudiants](http://localhost:8000/ScoDoc9API/**`#`**group-etudiants) | | etudiant**`*`** | | GET | [group-etudiants](http://scodoc.org/ScoDoc9API/#group-etudiants) |
| etudiant**`*`** | |GET | [group-etudiants-query](http://localhost:8000/ScoDoc9API/**`#`**group-etudiants-query) | | etudiant**`*`** | | GET | [group-etudiants-query](http://scodoc.org/ScoDoc9API/#group-etudiants-query) |
| etudiant | |GET | [etudiant](http://localhost:8000/ScoDoc9API/**`#`**etudiant) | | etudiant | | GET | [etudiant](http://scodoc.org/ScoDoc9API/#etudiant) |
| | |GET | [jury-formsemestre-decisions_jury](http://localhost:8000/ScoDoc9API/**`#`**jury-formsemestre-decisions_jury) | | | | GET | [jury-formsemestre-decisions_jury](http://scodoc.org/ScoDoc9API/#jury-formsemestre-decisions_jury) |
| bulletin**`*`** | |GET | [formsemestre-bulletin](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-bulletin) | | bulletin**`*`** | | GET | [formsemestre-bulletin](http://scodoc.org/ScoDoc9API/#formsemestre-bulletin) |
| bulletin | |GET | [etudiant-formsemestre-bulletin](http://localhost:8000/ScoDoc9API/**`#`**etudiant-formsemestre-bulletin) | | bulletin | | GET | [etudiant-formsemestre-bulletin](http://scodoc.org/ScoDoc9API/#etudiant-formsemestre-bulletin) |
| programme | |GET | [formsemestre-programme](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-programme) | | programme | | GET | [formsemestre-programme](http://scodoc.org/ScoDoc9API/#formsemestre-programme) |
| | |GET | [formsemestre-etat_evals](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-etat_evals) | | | | GET | [formsemestre-etat_evals](http://scodoc.org/ScoDoc9API/#formsemestre-etat_evals) |
| | |GET | [formsemestre-resultats](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-resultats) | | | | GET | [formsemestre-resultats](http://scodoc.org/ScoDoc9API/#formsemestre-resultats) |
| evaluation* | |GET | [evaluations](http://localhost:8000/ScoDoc9API/**`#`**evaluations) | | jury | | GET | [formsemestre-decision_jury](http://scodoc.org/ScoDoc9API/#formsemestre-decision_jury) |
| note* | |GET | [evaluation-notes](http://localhost:8000/ScoDoc9API/**`#`**evaluation-notes) | | evaluation* | | GET | [evaluations](http://scodoc.org/ScoDoc9API/#evaluations) |
| user | |GET | [user](http://localhost:8000/ScoDoc9API/**`#`**user) | | note* | | GET | [evaluation-notes](http://scodoc.org/ScoDoc9API/#evaluation-notes) |
| user | | GET | [user](http://scodoc.org/ScoDoc9API/#user) |
### **API Départements** ### **API Départements**
@ -275,6 +280,144 @@ Ce tableau est trié selon le type des informations retournées
* **Résultat:** Un département * **Résultat:** Un département
* **Exemple de résultat:** [departement.json](samples/sample_departement.json.md) * **Exemple de résultat:** [departement.json](samples/sample_departement.json.md)
### **API Etudiant**
#### Structure Etudiant
| attribut | type | commentaire |
|:-----------------|:----------|:---------------------------------|
| _id_ | int | id unique |
| _code_nip_ | string | non unique! |
| _code_ine_ | string | non unique! |
| _dept_id_ | | |
| _civilite_ | string | "M", "F" ou "X" |
| _nom_ | string | en majuscule |
| _nom_usuel_ | string | null si absent |
| _prenom_ | string | |
| | | **Format long** |
| _date_naissance_ | string | date ISO |
| _email_ | string | |
| _emailperso_ | string | |
| _admission_ | admission | |
| _adresses_ | adresse* | |
| _boursier_ | | |
| _dept_acronym_ | string | |
| _dept_id_ | string | département du lieu de naissance |
| _lieu_naissance_ | string | lieu de naissance (ville) |
| _nationalite_ | string | |
| _photo_filename_ | string | |
| _scodoc7_id_ | string | de la forme 'EID9999' |
| _statut_ | string | 'I', 'D' ou 'X' |
#### **`etudiants`**
* **Méthode:** GET
* **Routes:** `/etudiants
* **Exemple d'utilisation:** `/api/etudiants`
* **Résultat:** Liste complète de tous les étudiants (passés ou présents) pour
lequel l'utilisateur a la permission ScoView.
* **Exemple de résultat:** [tous-les-etudiant.json](samples/sample_tous-les-etudiants.json.md)
#### **`etudiants-clef`**
* **Méthode:** GET
* **Paramètres:** `etudid`, `nip`, `ine`
* **Routes:** `/etudiants/etudid/<int:etudid>` ou `/etudiants/nip/<string:nip>` ou `/etudiants/ine/<string:ine>`
* **Exemple d'utilisation:** `/api/etudiants/nip/1`
* **Résultat:** Info sur le ou les étudiants correspondants.
Comme [`/etudiant`](ScoDoc9API.md#etudiant) mais renvoie toujours une liste.
Si non trouvé, liste vide, pas d'erreur.
Dans 99% des cas, la liste contient un seul étudiant, mais si l'étudiant a
été inscrit dans plusieurs départements, on a plusieurs objets (1 par
dept.).
* **Exemple de résultat:** [etudiants.json](samples/sample_etudiants.json.md)
#### **`etudiants-courants`**
* **Méthode:** GET
* **Routes:**
* `/etudiants/courants`
* `/etudiants/courants/long`
* **Exemple d'utilisation:** `/api/etudiants/courants`
* **Résultat:** Liste des étudiants inscrits dans un formsemestre
actuellement en cours. Avec `/long`, donne tous les attributs de
l'étudiants (plus lent).
* **Exemple de résultat:** [etudiants-courants.json](samples/sample_etudiants-courants.json.md)
#### **departement-etudiants**
* **Méthode:** GET
* **Paramètres:** `dept`, `dept_id`
* **Routes:**
* `/departement/id/<int:dept_id>/etudiants`
* `/departement/<string:dept>/etudiants`
* **Exemple d'utilisation:** `/api/departement/MMI/etudiants`
* **Résultat:** liste tous les étudiants (passés ou présents) d'un département.
On peut spécifier l'acronyme du département ("MMI") ou son id (un entier).
Attention, la liste peut être longue: requête coûteuse à éviter.
* **Exemple de résultat:**
```json
[
{
"civilite": "M", // M, F ou X
"ine": "7899X61616",
"code_nip": "F6777H88",
"date_naissance": null,
"email": "toto@toto.fr",
"emailperso": null,
"etudid": 18,
"nom": "MOREL", // en majuscules
"prenom": "JACQUES"
},
...
]
```
#### **formsemestre-etudiants**
* **Méthode:** GET
* **Paramètres:** `formsemestre_id`
* **Routes:** `/formsemestre/<int:formsemestre_id>/etudiants` XXX voir si
filtrage par état (dem, def, ...)
* **Route:**
* `/formsemestres/etudiants`
* `/formsemestres/etudiants/demissionnaires`
* `/formsemestres/etudiants/defaillants`
* **Exemple d'utilisation:** `/api/formsemestre/1/etudiants`
* **Résultat:** Etudiants d'un formsemestre spécifié par son id. Liste est restreinte aux étudiants démissionnaires/défaillants si l'option correspondante est ajoutée au chemin
* **Exemple de résultat:** [formsemestre-etudiants.json](samples/sample_formsemestre-etudiants.json.md)
#### **formsemestre-etudiants-etat**
* **Méthode:** GET
* **Paramètres:** `formsemestre_id`, `etat` (par défaut égal à "I" pour les étudiants inscrits)
* **Résultat:** les étudiants inscrits à ce semestres XXX préciser état
(DEM, DEF))
#### **`group-etudiants`**
* **Méthode: GET**
* **Paramètres:** `group_id`
* **Routes:** `/group/<int:group_id>/etudiants`
* **Exemple d'utilisation:** `/ScoDoc/api/group/1/etudiants`
* **Résultat:** Retourne la liste des étudiants dans un groupe.
* **Exemple de résultat:** [group-etudiants.json](samples/sample_group-etudiants.json.md)
#### **`groups-etudiants-query`**
* **Méthode: GET**
* **Paramètres:** `group_id`
* **Query string:** `etat` ('I', 'D' ou 'DEF')
* **Routes:** `/group/<int:group_id>/etudiants/query`
* **Exemple d'utilisation:** `/ScoDoc/api/group/1/etudiants/query?etat=I`
* **Résultat:** Retourne la liste des étudiants dans un groupe.
* **Exemple de résultat:** [group-etudiants-query.json](samples/sample_group-etudiants-query.json.md)
#### **`etudiant`**
* **Méthode:** GET
* **Paramètres:** `etudid`, `nip`, `ine`
* **Routes:**
* `/etudiant/etudid/<int:etudid>` ou
* `/etudiant/nip/<string:nip>` ou
* `/etudiant/ine/<string:ine>`
* **Exemple d'utilisation:** `/api/etudiant/nip/1`
* **Résultat:** Retourne les informations sur l'étudiant correspondant à
l'id passé en paramètres.
Les codes INE et NIP sont uniques au sein d'un département.
Si plusieurs objets étudiant ont le même code, on ramène le plus récemment inscrit.
* **Exemple de résultat:** [etudiant.json](samples/sample_etudiant.json.md)
### **API Formation** ### **API Formation**
#### Structure Formation #### Structure Formation
| attribut | type | commentaire | | attribut | type | commentaire |
@ -434,113 +577,6 @@ informatique de 2014 en formation initiale (FI).
* **Résultat:** Description du formsemestre. * **Résultat:** Description du formsemestre.
* **[Exemple de résultat:](samples/sample_formsemestre.json.md)** * **[Exemple de résultat:](samples/sample_formsemestre.json.md)**
### **API Moduleimpl**
#### Structure ModuleImpl
Le moduleimpl est la mise en place d'un module dans un formsemestre (avec son
responsable et ses enseignants). La liste des moduleimpl d'un formsemestre peut être obtenu par l'entrée [formsemestre-programme](#formsemestre-programme)
| attribut | type | commentaire |
|:-----------------------|:-------|:-------------------------------------------------|
| _**id**_ | int | identifiant unique |
| _**responsable_id**_ | int | id du responsable de module |
| _**computation_expr**_ | string | unused |
| _**module_id**_ | int | id du module |
| _**formsemestre_id**_ | int | id du formsemestre |
| _**moduleimpl_id**_ | int | _**redondance id_? |
| _**ens**_ | User# | liste des ids des enseignants du moduleimpl |
| _**module**_ | Module | |
#### **`moduleimpl`**
* **Méthode:** GET
* **Paramètres:** `moduleimpl_id`
* **Routes:** `/moduleimpl/<int:moduleimpl_id>`
* **Exemple d'utilisation:** `/ScoDoc/api/formation/moduleimpl/1`
* **Résultat:** Description du moduleimpl.
* **Exemple de résultat:** [moduleimpl.json](samples/sample_moduleimpl.json.md)
### **API Partition**
#### Structure Partition
L'ensemble des étudiants d'un semestre peut être réparti selon une ou
plusieurs partitions (types de groupes). Chaque partition est constituée
d'un nombre quelconque de groupes d'étudiants.
| attribut | type | commentaire |
|:----------------------|:-------|:-----------------------------------|
| _**id**_ | int | identifiant unique |
| _**partition_name**_ | string | nom de la partition |
| _**numero**_ | int | |
| _**bul_show_rank**_ | | affichage sur bulletin |
| _**groups_editable**_ | bool | verrou (liste des groupes) |
| _**formsemestre_id**_ | int | formsemestre hôte |
| _**show_in_lists**_ | bool | |
| _**groups**_ | Group* | liste des groupes de la partition |
#### **`formsemestre-partitions`**
* **Méthode: GET**
* **Paramètres:** `formsemestre_id`
* **Routes:** `/formsemestre/<int:formsemestre_id>/partitions`
* **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/911/partitions`
* **Résultat:** Liste de toutes les partitions d'un formsemestre.
* **Exemple de résultat:** [formsemestre-partitions.json](samples/sample_formsemestre-partitions.json.md)
#### **`partition`**
* **Méthode: GET**
* **Paramètres:** `partition_id`
* **Routes:** `/partition/<int:partition_id>`
* **Exemple d'utilisation:** `/ScoDoc/api/partition/1963`
* **Résultat:** Description d'une partition (y compris la liste de ses groupes).
* **Exemple de résultat:** [partition.json](samples/sample_partition.json.md)
#### **`formsemestre-partition-create`**
* **Méthode: POST**
* **Paramètres:** `formsemestre_id`
* **Data:** `{ "partition_name" : <string> }`
* **Routes:** `/formsemestre/<int:formsemestre_id>/partition/create`
>`{ "partition_name" : "PART" }`
* **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/944/partition/create`
* **Résultat:** Crée une nouvelle partition dans un formsemestre.
* **[Exemple de résultat:](samples/sample_formsemestre-partition-create.json.md)**
#### **`partition-edit`**
* **Méthode: POST**
* **Paramètres:** `partition_id`
* **Data:** `{ partition_name : <string> }`
* **Routes:** `/partition/<int:partition_id>/edit`
* **Exemple d'utilisation:** `/ScoDoc/api/partition/2047/edit`
>`{ "partition_name" : "PART4" }`
* **Résultat:** Renomme une partition
* **[Exemple de résultat](samples/sample_partition-edit.json.md)**
#### **`formsemestre-partition-order`**
* **Méthode: POST**
* **Paramètres:** `formsemestre_id`
* **Data:** `[ <int:partition_id1>, <int:partition_id2>, ... ]`
* **Routes:** `/formsemestre/<int:formsemestre_id>/partition/order`
* **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/944/partition/order`
>`[ 2048, 2054 ]`
* **Résultat:** Spécifie l'ordre des partitions d'un formsemestre.
* **[Exemple de résultat:](samples/sample_formsemestre-partition-order.json.md)**
#### **`partition-delete`**
* **Méthode: POST**
* **Paramètres:** `partition_id`
* **Routes:** `/partition/<int:partition_id>/delete`
* **Exemple d'utilisation:** `/ScoDoc/api/partition/2047/delete`
* **Résultat:** Supprime une partition.
* **[Exemple de résultat](samples/sample_partition-delete.json.md)**
#### **`partition-remove_etudiant`**
* **Méthode: POST**
* **Permission: `ScoEtudChangeGroups`***
* **Paramètres:** `partition_id`
* **Routes:** `/partition/<int:partition_id>/remove_etudiant/<int:etudid>`
* **Exemple d'utilisation:** `/ScoDoc/api/partition/1962/remove_etudiant/12107`
* **Résultat:** Retire un étudiant des groupes de la partition.
* **[Exemple de résultat](samples/sample_partition-remove_etudiant.json.md)**
### **API Groupe** ### **API Groupe**
#### **`partition-group-create`** #### **`partition-group-create`**
@ -613,163 +649,112 @@ d'un nombre quelconque de groupes d'étudiants.
* **Résultat:** Retire un étudiant d'un groupe. * **Résultat:** Retire un étudiant d'un groupe.
* **[Exemple de résultat](samples/sample_group-remove_etudiant.json.md)** * **[Exemple de résultat](samples/sample_group-remove_etudiant.json.md)**
### **API Etudiant** ### **API Moduleimpl**
#### Structure Etudiant
#### Structure ModuleImpl
Le moduleimpl est la mise en place d'un module dans un formsemestre (avec son
responsable et ses enseignants). La liste des moduleimpl d'un formsemestre peut être obtenu par l'entrée [formsemestre-programme](#formsemestre-programme)
| attribut | type | commentaire | | attribut | type | commentaire |
|:-----------------|:----------|:---------------------------------| |:-----------------------|:-------|:-------------------------------------------------|
| _id_ | int | id unique | | _**id**_ | int | identifiant unique |
| _code_nip_ | string | non unique! | | _**responsable_id**_ | int | id du responsable de module |
| _code_ine_ | string | non unique! | | _**computation_expr**_ | string | unused |
| _dept_id_ | | | | _**module_id**_ | int | id du module |
| _civilite_ | string | "M", "F" ou "X" | | _**formsemestre_id**_ | int | id du formsemestre |
| _nom_ | string | en majuscule | | _**moduleimpl_id**_ | int | _**redondance id_? |
| _nom_usuel_ | string | null si absent | | _**ens**_ | User# | liste des ids des enseignants du moduleimpl |
| _prenom_ | string | | | _**module**_ | Module | |
| | | **Format long** |
| _date_naissance_ | string | date ISO |
| _email_ | string | |
| _emailperso_ | string | |
| _admission_ | admission | |
| _adresses_ | adresse* | |
| _boursier_ | | |
| _dept_acronym_ | string | |
| _dept_id_ | string | département du lieu de naissance |
| _lieu_naissance_ | string | lieu de naissance (ville) |
| _nationalite_ | string | |
| _photo_filename_ | string | |
| _scodoc7_id_ | string | de la forme 'EID9999' |
| _statut_ | string | 'I', 'D' ou 'X' |
#### **`etudiants`** #### **`moduleimpl`**
* **Méthode:** GET * **Méthode:** GET
* **Routes:** `/etudiants * **Paramètres:** `moduleimpl_id`
* **Exemple d'utilisation:** `/api/etudiants` * **Routes:** `/moduleimpl/<int:moduleimpl_id>`
* **Résultat:** Liste complète de tous les étudiants (passés ou présents) pour * **Exemple d'utilisation:** `/ScoDoc/api/formation/moduleimpl/1`
lequel l'utilisateur a la permission ScoView. * **Résultat:** Description du moduleimpl.
* **Exemple de résultat:** [tous-les-etudiant.json](samples/sample_tous-les-etudiants.json.md) * **Exemple de résultat:** [moduleimpl.json](samples/sample_moduleimpl.json.md)
#### **`etudiants-clef`** ### **API Partition**
* **Méthode:** GET #### Structure Partition
* **Paramètres:** `etudid`, `nip`, `ine`
* **Routes:** `/etudiants/etudid/<int:etudid>` ou `/etudiants/nip/<string:nip>` ou `/etudiants/ine/<string:ine>`
* **Exemple d'utilisation:** `/api/etudiants/nip/1`
* **Résultat:** Info sur le ou les étudiants correspondants.
Comme [`/etudiant`](ScoDoc9API.md#etudiant) mais renvoie toujours une liste.
Si non trouvé, liste vide, pas d'erreur.
Dans 99% des cas, la liste contient un seul étudiant, mais si l'étudiant a
été inscrit dans plusieurs départements, on a plusieurs objets (1 par
dept.).
* **Exemple de résultat:** [etudiants.json](samples/sample_etudiants.json.md)
#### **`etudiants-courants`** L'ensemble des étudiants d'un semestre peut être réparti selon une ou
* **Méthode:** GET plusieurs partitions (types de groupes). Chaque partition est constituée
* **Routes:** d'un nombre quelconque de groupes d'étudiants.
* `/etudiants/courants`
* `/etudiants/courants/long`
* **Exemple d'utilisation:** `/api/etudiants/courants`
* **Résultat:** Liste des étudiants inscrits dans un formsemestre
actuellement en cours. Avec `/long`, donne tous les attributs de
l'étudiants (plus lent).
* **Exemple de résultat:** [etudiants-courants.json](samples/sample_etudiants-courants.json.md)
#### **departement-etudiants** | attribut | type | commentaire |
* **Méthode:** GET |:----------------------|:-------|:-----------------------------------|
* **Paramètres:** `dept`, `dept_id` | _**id**_ | int | identifiant unique |
* **Routes:** | _**partition_name**_ | string | nom de la partition |
* `/departement/id/<int:dept_id>/etudiants` | _**numero**_ | int | |
* `/departement/<string:dept>/etudiants` | _**bul_show_rank**_ | | affichage sur bulletin |
* **Exemple d'utilisation:** `/api/departement/MMI/etudiants` | _**groups_editable**_ | bool | verrou (liste des groupes) |
* **Résultat:** liste tous les étudiants (passés ou présents) d'un département. | _**formsemestre_id**_ | int | formsemestre hôte |
On peut spécifier l'acronyme du département ("MMI") ou son id (un entier). | _**show_in_lists**_ | bool | |
Attention, la liste peut être longue: requête coûteuse à éviter. | _**groups**_ | Group* | liste des groupes de la partition |
* **Exemple de résultat:**
```json
[
{
"civilite": "M", // M, F ou X
"ine": "7899X61616",
"code_nip": "F6777H88",
"date_naissance": null,
"email": "toto@toto.fr",
"emailperso": null,
"etudid": 18,
"nom": "MOREL", // en majuscules
"prenom": "JACQUES"
},
...
]
```
#### **formsemestre-etudiants** #### **`formsemestre-partitions`**
* **Méthode:** GET * **Méthode: GET**
* **Paramètres:** `formsemestre_id` * **Paramètres:** `formsemestre_id`
* **Routes:** `/formsemestre/<int:formsemestre_id>/etudiants` XXX voir si * **Routes:** `/formsemestre/<int:formsemestre_id>/partitions`
filtrage par état (dem, def, ...) * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/911/partitions`
* **Route:** * **Résultat:** Liste de toutes les partitions d'un formsemestre.
* `/formsemestres/etudiants` * **Exemple de résultat:** [formsemestre-partitions.json](samples/sample_formsemestre-partitions.json.md)
* `/formsemestres/etudiants/demissionnaires`
* `/formsemestres/etudiants/defaillants`
* **Exemple d'utilisation:** `/api/formsemestre/1/etudiants`
* **Résultat:** Etudiants d'un formsemestre spécifié par son id. Liste est restreinte aux étudiants démissionnaires/défaillants si l'option correspondante est ajoutée au chemin
* **Exemple de résultat:** [formsemestre-etudiants.json](samples/sample_formsemestre-etudiants.json.md)
#### **formsemestre-etudiants-etat** #### **`partition`**
* **Méthode:** GET
* **Paramètres:** `formsemestre_id`, `etat` (par défaut égal à "I" pour les étudiants inscrits)
* **Résultat:** les étudiants inscrits à ce semestres XXX préciser état
(DEM, DEF))
#### **`group-etudiants`**
* **Méthode: GET** * **Méthode: GET**
* **Paramètres:** `group_id` * **Paramètres:** `partition_id`
* **Routes:** `/group/<int:group_id>/etudiants` * **Routes:** `/partition/<int:partition_id>`
* **Exemple d'utilisation:** `/ScoDoc/api/group/1/etudiants` * **Exemple d'utilisation:** `/ScoDoc/api/partition/1963`
* **Résultat:** Retourne la liste des étudiants dans un groupe. * **Résultat:** Description d'une partition (y compris la liste de ses groupes).
* **Exemple de résultat:** [group-etudiants.json](samples/sample_group-etudiants.json.md) * **Exemple de résultat:** [partition.json](samples/sample_partition.json.md)
#### **`groups-etudiants-query`** #### **`formsemestre-partition-create`**
* **Méthode: GET** * **Méthode: POST**
* **Paramètres:** `group_id` * **Paramètres:** `formsemestre_id`
* **Query string:** `etat` ('I', 'D' ou 'DEF') * **Data:** `{ "partition_name" : <string> }`
* **Routes:** `/group/<int:group_id>/etudiants/query` * **Routes:** `/formsemestre/<int:formsemestre_id>/partition/create`
* **Exemple d'utilisation:** `/ScoDoc/api/group/1/etudiants/query?etat=I` >`{ "partition_name" : "PART" }`
* **Résultat:** Retourne la liste des étudiants dans un groupe. * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/944/partition/create`
* **Exemple de résultat:** [group-etudiants-query.json](samples/sample_group-etudiants-query.json.md) * **Résultat:** Crée une nouvelle partition dans un formsemestre.
* **Exemple de résultat:** [formsemestre-partition-create.json](samples/sample_formsemestre-partition-create.json.md)
#### **`etudiant`** #### **`partition-edit`**
* **Méthode:** GET * **Méthode: POST**
* **Paramètres:** `etudid`, `nip`, `ine` * **Paramètres:** `partition_id`
* **Routes:** * **Data:** `{ partition_name : <string> }`
* `/etudiant/etudid/<int:etudid>` ou * **Routes:** `/partition/<int:partition_id>/edit`
* `/etudiant/nip/<string:nip>` ou * **Exemple d'utilisation:** `/ScoDoc/api/partition/2047/edit`
* `/etudiant/ine/<string:ine>` >`{ "partition_name" : "PART4" }`
* **Exemple d'utilisation:** `/api/etudiant/nip/1` * **Résultat:** Renomme une partition
* **Résultat:** Retourne les informations sur l'étudiant correspondant à * **Exemple de résultat:** [partition-edit.json](samples/sample_partition-edit.json.md)
l'id passé en paramètres.
Les codes INE et NIP sont uniques au sein d'un département.
Si plusieurs objets étudiant ont le même code, on ramène le plus récemment inscrit.
* **Exemple de résultat:** [etudiant.json](samples/sample_etudiant.json.md)
### API Programme, Référentiel #### **`formsemestre-partition-order`**
* **Méthode: POST**
* **Paramètres:** `formsemestre_id`
* **Data:** `[ <int:partition_id1>, <int:partition_id2>, ... ]`
* **Routes:** `/formsemestre/<int:formsemestre_id>/partition/order`
* **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/944/partition/order`
>`[ 2048, 2054 ]`
* **Résultat:** Spécifie l'ordre des partitions d'un formsemestre.
* **Exemple de résultat:** [formsemestre-partition-order.json](samples/sample_formsemestre-partition-order.json.md)
#### **`formation-export`** #### **`partition-delete`**
* **Méthode:** GET * **Méthode: POST**
* **Paramètres:** `formation_id`, `export_ids` (False par défaut. Ajouter `/with_ids` pour le passer à True) * **Paramètres:** `partition_id`
* **Routes:** * **Routes:** `/partition/<int:partition_id>/delete`
* `/formation/<int:formation_id>/export` * **Exemple d'utilisation:** `/ScoDoc/api/partition/2047/delete`
* `/formation/<int:formation_id>/export_with_ids` * **Résultat:** Supprime une partition.
* **Exemple d'utilisation:** `/ScoDoc/api/formation/formation_export/1` * **Exemple de résultat:** [partition-delete.json](samples/sample_partition-delete.json.md)
* **Résultat:** Retourne la formation, avec UE, matières, modules
* **Exemple de résultat:** [formation-export.json](samples/sample_formation-referentiel_competences.json.md)
#### **`formation-referentiel_competences`** #### **`partition-remove_etudiant`**
* **Méthode:** GET * **Méthode: POST**
* **Paramètres:** `formation_id` * **Permission: `ScoEtudChangeGroups`***
* **Routes:** `/formation/<int:formation_id>/referentiel_competences` * **Paramètres:** `partition_id`
* **Exemple d'utilisation:** `api/formation/1/referentiel_competences` * **Routes:** `/partition/<int:partition_id>/remove_etudiant/<int:etudid>`
* **Résultat:** Le référentiel de compétences d'une formation donnée (json). (_pas toujours présent_) * **Exemple d'utilisation:** `/ScoDoc/api/partition/1962/remove_etudiant/12107`
* **Exemple de résultat:** [formation-referentiel_competences.json](samples/sample_formation-referentiel_competences.json.md) * **Résultat:** Retire un étudiant des groupes de la partition.
* **[Exemple de résultat](samples/sample_partition-remove_etudiant.json.md)**
### ** API Bulletin, Evaluations, Notes** ### ** API Bulletin, Evaluations, Notes**
#### **formsemestre-bulletins** #### **formsemestre-bulletins**
@ -786,22 +771,18 @@ pour un formsemestre spécifié par son id.
Par défaut les valeurs numériques sont formattées en chaînes. Si format=raw, valeurs numériques Par défaut les valeurs numériques sont formattées en chaînes. Si format=raw, valeurs numériques
mais pas JSON compliant à cause des _NaN_. mais pas JSON compliant à cause des _NaN_.
* **Exemple de résultat:**
* **Méthode:** GET * **Méthode:** GET
* **Paramètres:** `formsemestre_id`, `etudid`, `nip`, `ine` * **Paramètres:** `formsemestre_id`, `etudid`, `nip`, `ine`
* **Routes:** * **Routes:**
`/etudiant/etudid/<int:etudid>/formsemestre/<int:formsemestre_id>/bulletin[/format][/pdf]` `/etudiant/etudid/<int:etudid>/formsemestre/<int:formsemestre_id>/bulletin[/short][/pdf]`
ou `/etudiant/nip/<string:nip>/formsemestre/<int:formsemestre_id>/bulletin[/format][/pdf]` ou `/etudiant/nip/<string:nip>/formsemestre/<int:formsemestre_id>/bulletin[/short][/pdf]`
ou `/etudiant/ine/<string:ine>/formsemestre/<int:formsemestre_id>/bulletin[/format][/pdf]` ou `/etudiant/ine/<string:ine>/formsemestre/<int:formsemestre_id>/bulletin[/short][/pdf]`
On peut spécifier le format: `long`ou `short`, et indiquer si l'on veut le
bulletin PDF.
* **Exemple d'utilisation:** `/etudiant/nip/1/formsemestre/1/bulletin` * **Exemple d'utilisation:** `/etudiant/nip/1/formsemestre/1/bulletin`
* **Résultat:** Bulletin de l'étudiant dans le formsemestre. * **Résultat:** Bulletin de l'étudiant dans le formsemestre.
Deux versions disponibles `long` et `short` (par défaut `long` ajoutez Deux types de variantes possibles:
`/short` pour la version plus courte). * versions `long` et `short` (`long`par défaut, ajoutez `/short` pour la version plus courte).
* **Exemple de résultat:** [bulletin-formsemestre-etudiant.json](samples/sample_bulletin-formsemestre-etudiant.json.md) * version `json` et `pdf` (`json` par défaut, ajoutez `/pdf` pour la version pdf)
* **Exemple de résultat:** [etudiant-formsemestre-bulletin.json](samples/sample_etudiant-formsemestre-bulletin.json.md)
#### **formsemestre-programme** #### **formsemestre-programme**
* **Méthode:** GET * **Méthode:** GET
@ -834,7 +815,7 @@ valeurs numériques mais pas JSON compliant à cause des _NaN_.
* **Exemple de résultat:** * **Exemple de résultat:**
#### **`evaluations`** #### **`moduleimpl-evaluations`**
* **Méthode:** GET * **Méthode:** GET
* **Paramètres:** `moduleimpl_id` * **Paramètres:** `moduleimpl_id`
* **Routes:** `/moduleimpl/<int:moduleimpl_id>/evaluations` * **Routes:** `/moduleimpl/<int:moduleimpl_id>/evaluations`
@ -843,7 +824,7 @@ valeurs numériques mais pas JSON compliant à cause des _NaN_.
moduleimpl (quel que soit leur statut). moduleimpl (quel que soit leur statut).
* **[Exemple de résultat](samples/sample_moduleimpl-evaluations.json.md)** * **[Exemple de résultat](samples/sample_moduleimpl-evaluations.json.md)**
#### **`evaluations/notes`** #### **`evaluations-notes`**
* **Méthode**: GET * **Méthode**: GET
* **Paramètres**: `evaluation_id` * **Paramètres**: `evaluation_id`
* **Routes:** `/evaluations/eval_notes/<int:evaluation_id>` * **Routes:** `/evaluations/eval_notes/<int:evaluation_id>`
@ -876,6 +857,26 @@ valeurs numériques mais pas JSON compliant à cause des _NaN_.
* **Résultat:** Retourne les résultats pour un formsemestre * **Résultat:** Retourne les résultats pour un formsemestre
* **Exemple de résultat:** [formsemestre-resultats.json](samples/sample_formsemestre-resultats.json.md) * **Exemple de résultat:** [formsemestre-resultats.json](samples/sample_formsemestre-resultats.json.md)
### **API Export, Référentiel**
#### **`formation-export`**
* **Méthode:** GET
* **Paramètres:** `formation_id`, `export_ids` (False par défaut. Ajouter `/with_ids` pour le passer à True)
* **Routes:**
* `/formation/<int:formation_id>/export`
* `/formation/<int:formation_id>/export_with_ids`
* **Exemple d'utilisation:** `/ScoDoc/api/formation/formation_export/1`
* **Résultat:** Retourne la formation, avec UE, matières, modules
* **Exemple de résultat:** [formation-export.json](samples/sample_formation-referentiel_competences.json.md)
#### **`formation-referentiel_competences`**
* **Méthode:** GET
* **Paramètres:** `formation_id`
* **Routes:** `/formation/<int:formation_id>/referentiel_competences`
* **Exemple d'utilisation:** `api/formation/1/referentiel_competences`
* **Résultat:** Le référentiel de compétences d'une formation donnée (json). (_pas toujours présent_)
* **Exemple de résultat:** [formation-referentiel_competences.json](samples/sample_formation-referentiel_competences.json.md)
### **API User** ### **API User**
#### **user** #### **user**
* **Méthode:** GET * **Méthode:** GET
@ -885,7 +886,6 @@ valeurs numériques mais pas JSON compliant à cause des _NaN_.
* **Résultat:** Retourne la description d'un utilisateur. * **Résultat:** Retourne la description d'un utilisateur.
* **Exemple de résultat:** [user.json](samples/sample_user.json.md) * **Exemple de résultat:** [user.json](samples/sample_user.json.md)
### **API Jury** ### **API Jury**
#### **`formsemestre-decision_jury`** #### **`formsemestre-decision_jury`**
* **Méthode:** GET * **Méthode:** GET
@ -894,6 +894,8 @@ valeurs numériques mais pas JSON compliant à cause des _NaN_.
* **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/jury` * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/jury`
* **Résultat:** Retourne le récapitulatif des décisions jury * **Résultat:** Retourne le récapitulatif des décisions jury
* **Exemple de résultat:** * **Exemple de résultat:**
* semestre pair
* semestre impair
``` ```
XXX A COMPLETER XXX A COMPLETER
``` ```

Binary file not shown.

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 289 KiB

After

Width:  |  Height:  |  Size: 274 KiB

View File

@ -1,28 +1,27 @@
### etudiants ### departement-etudiants
`/api/etudiants/9537` `/api/departement/INFO/etudiants/9537`
```json ```json
[ [
{ "id": 11290,
"id": 1, "code_nip": "41901694",
"code_nip": "11103639", "code_ine": "071985689JD",
"code_ine": null, "dept_id": 6,
"dept_id": 1, "nom": "MARS",
"nom": "GYSELINCK",
"nom_usuel": null, "nom_usuel": null,
"prenom": "MARIE", "prenom": "LOICK",
"civilite": "F" "civilite": "M"
}, },
{ {
"id": 2, "id": 11832,
"code_nip": "11102517", "code_nip": "42434428",
"code_ine": null, "code_ine": "07169248KD",
"dept_id": 1, "dept_id": 6,
"nom": "IDRI", "nom": "MERCURE",
"nom_usuel": null, "nom_usuel": null,
"prenom": "ANAIS", "prenom": "ANTONIN",
"civilite": "F" "civilite": "M"
}, },
... ...
] ]

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,46 @@
### etudiant-formsemestre-groupes
`/etudiant/etudid/12133/formsemestre/911/groups`
```json
[
{
"partition_id": 1960,
"id": 4378,
"formsemestre_id": 911,
"partition_name": null,
"numero": null,
"bul_show_rank": false,
"show_in_lists": true,
"groups_editable": true,
"group_id": 4378,
"group_name": null
},
{
"partition_id": 1963,
"id": 4390,
"formsemestre_id": 911,
"partition_name": "1/2TD",
"numero": null,
"bul_show_rank": false,
"show_in_lists": true,
"groups_editable": true,
"group_id": 4390,
"group_name": "D1"
},
{
"partition_id": 1962,
"id": 4382,
"formsemestre_id": 911,
"partition_name": "TD",
"numero": 4,
"bul_show_rank": false,
"show_in_lists": true,
"groups_editable": true,
"group_id": 4382,
"group_name": "D"
}
]
```

View File

@ -0,0 +1,128 @@
### formsemestre-decision_jury
#### semestre BUT pair
```json
```
#### semestre BUT impair
`/api/formsemestre/944/decisions_jury`
```json
[
{
"etudid": 11458,
"code_nip": "217023024",
"code_ine": "0910212777K",
"is_apc": true,
"etat": "I",
"nb_competences": 6,
"rcues": [],
"ues": [],
"semestre": {},
"autorisations": []
},
{
"etudid": 12043,
"code_nip": "42114526",
"code_ine": "101091545BC",
"is_apc": true,
"etat": "I",
"nb_competences": 6,
"rcues": [],
"ues": [],
"semestre": {},
"autorisations": []
},
...
]
```
#### semestre classique (non BUT)
`/api/formsemestre/836/decisions_jury`
```json
[
{
"etudid": 9565,
"code_nip": "41801196",
"code_ine": "081688098GE",
"is_apc": false,
"etat": "I",
"nb_competences": 0,
"rcues": [],
"ues": [
{
"ue_id": 1517,
"code": "ADM",
"ects": 12.0
},
{
"ue_id": 1554,
"code": "ADM",
"ects": 12.0
},
{
"ue_id": 1518,
"code": "ADM",
"ects": 6.0
}
],
"semestre": {
"code": "ADM"
},
"autorisations": [
{
"etudid": 9565,
"semestre_id": 4,
"formation_code": "FCOD40",
"origin_formsemestre_id": 819,
"id": 25930,
"date": "2022-02-22T14:23:43.017238+01:00"
}
]
},
{
"etudid": 9470,
"code_nip": "42028733",
"code_ine": "071632523FH",
"is_apc": false,
"etat": "I",
"nb_competences": 0,
"rcues": [],
"ues": [
{
"ue_id": 1517,
"code": "CMP",
"ects": 12.0
},
{
"ue_id": 1554,
"code": "ADM",
"ects": 12.0
},
{
"ue_id": 1518,
"code": "ADM",
"ects": 6.0
}
],
"semestre": {
"code": "ADM"
},
"autorisations": [
{
"etudid": 9470,
"semestre_id": 4,
"formation_code": "FCOD40",
"origin_formsemestre_id": 819,
"id": 25953,
"date": "2022-02-22T14:23:45.628847+01:00"
}
]
},
...
]
```

View File

@ -1,44 +0,0 @@
### formsemestre-etudiants
`/api/formsemestre/1/etudiants`
```json
[
{
"id": 9586,
"code_nip": "42021436",
"code_ine": "081377224FD",
"nom": "WUILMART",
"nom_usuel": null,
"prenom": "JADE",
"civilite": "F",
"groups": [
{
"partition_id": 1731,
"id": 3770,
"formsemestre_id": 829,
"partition_name": null,
"numero": 401,
"bul_show_rank": false,
"show_in_lists": true,
"groups_editable": true,
"group_id": 3770,
"group_name": null
},
{
"partition_id": 1735,
"id": 3784,
"formsemestre_id": 829,
"partition_name": "cgir",
"numero": 405,
"bul_show_rank": false,
"show_in_lists": true,
"groups_editable": true,
"group_id": 3784,
"group_name": "alt"
}
]
},
...
]
```

View File

@ -1,19 +1,30 @@
### group-etudiants ### group-etudiants-query
`/api/group/4085/set_etudiants?etat=D` `/api/group/4393/etudiants/query?etat=I`
```json ```json
[ [
{ {
"id": 12071, "id": 9597,
"code_nip": "24123901", "code_nip": "52178457",
"code_ine": "081818679FE", "code_ine": "090940298GB",
"dept_id": 6, "dept_id": 6,
"nom": "HAMMO", "nom": "TILLEUL",
"nom_usuel": null, "nom_usuel": null,
"prenom": "NATHAN", "prenom": "JADE",
"civilite": "F"
},
{
"id": 11884,
"code_nip": "42019956",
"code_ine": "100992999FK",
"dept_id": 6,
"nom": "PEUPLIER",
"nom_usuel": null,
"prenom": "NOE",
"civilite": "M" "civilite": "M"
} },
...
] ]
``` ```

View File

@ -0,0 +1,26 @@
### partition-groups-create
`/api/partition/1962/groups/create`
>Content-Type: application/json
>
> `{ "group_name": "X"}`
```json
{
"group_name": "X",
"partition_id": 1962,
"id": 4583,
"numero": null,
"partition": {
"formsemestre_id": 911,
"numero": 1960,
"show_in_lists": true,
"bul_show_rank": false,
"id": 1962,
"partition_name": "TD",
"groups_editable": true
}
}
```

View File

@ -0,0 +1,64 @@
### partition-groups-order
`/api/partition/1962/groups/order`
> `Content-Type: application/json`
>
> `[ 4383, 4379, 4380, 4381, 4382, 4384 ]`
```json
{
"formsemestre_id": 911,
"numero": 1960,
"show_in_lists": true,
"partition_name": "TD",
"bul_show_rank": false,
"groups_editable": true,
"id": 1962,
"groups": {
"4383": {
"group_name": "E",
"partition_id": 1962,
"id": 4383,
"numero": 0,
"name": "E"
},
"4379": {
"group_name": "A",
"partition_id": 1962,
"id": 4379,
"numero": 1,
"name": "A"
},
"4380": {
"group_name": "B",
"partition_id": 1962,
"id": 4380,
"numero": 2,
"name": "B"
},
"4381": {
"group_name": "C",
"partition_id": 1962,
"id": 4381,
"numero": 3,
"name": "C"
},
"4382": {
"group_name": "D",
"partition_id": 1962,
"id": 4382,
"numero": 4,
"name": "D"
},
"4384": {
"group_name": "a",
"partition_id": 1962,
"id": 4384,
"numero": 5,
"name": "a"
}
}
}
```