This commit is contained in:
Jean-Marie PLACE 2022-07-25 13:39:44 +02:00
parent 463273646f
commit 2a4cf59f02
1 changed files with 169 additions and 101 deletions

View File

@ -163,15 +163,6 @@ par le serveur ScoDoc.
## Départements
#### **`departements_ids`**
* **Méthode:** GET
* **Routes:** `/departements_ids`
* **Résultat:** Liste des id départements (visibles ou non).
* **Exemple de résultat:**
```
[ 1888, 999, 165 ]
```
#### **`departements`**
* **Méthode:** GET
@ -186,6 +177,16 @@ par le serveur ScoDoc.
]
```
#### **`departements_ids`**
* **Méthode:** GET
* **Routes:** `/departements_ids`
* **Résultat:** Liste des id départements (visibles ou non).
* **Exemple de résultat:**
```
[ 1888, 999, 165 ]
```
#### **`departement`**
* **Méthode:** GET
@ -207,13 +208,13 @@ par le serveur ScoDoc.
#### **Étudiants d'un département**
* **Méthode:** GET
* **Paramètres:** `dept`, `formsemestre_id`
* **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 d'un département. On peut spécifier l'acronyme du département
("MMI") ou son id (un entier).
* **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:**
```
@ -240,11 +241,11 @@ par le serveur ScoDoc.
* `/departement/id/<int:dept_id>/formsemestres_ids`
* `/departement/<string:dept>/formsemestres_ids`
* **Exemple d'utilisation:** `/api/departement/MMI/formsemestres_ids`
* **Résultat:** Liste des id des formsemestres d'un département donné.
* **Résultat:** Liste des id des formsemestres (passés ou présents) d'un département donné.
* **Exemple de résultat:**
```[ 28, 99, 3 ]```
#### **Formsemestre courants d'un département**
#### **Formsemestre en cours d'un département**
* **Méthode:** GET
* **Paramètres:** `dept`
@ -254,7 +255,42 @@ par le serveur ScoDoc.
* **Exemple d'utilisation:** `/api/departement/MMI/formsemestres_courants`
* **Résultat:** Liste des id des formsemestres en cours d'un département donné.
* **Exemple de résultat:**
```[ 28, 99 ]```
```
[
{
"block_moyennes": false,
"bul_bgcolor": "white",
"bul_hide_xml": false,
"date_debut_iso": "2021-09-01",
"date_debut": "01/09/2021",
"date_fin_iso": "2022-08-31",
"date_fin": "31/08/2022",
"dept_id": 1,
"elt_annee_apo": "V7HU",
"elt_sem_apo": null,
"ens_can_edit_eval": false,
"etat": true,
"formation_id": 1,
"formsemestre_id": 1,
"gestion_compensation": false,
"gestion_semestrielle": false,
"id": 1,
"modalite": "FI",
"resp_can_change_ens": true,
"resp_can_edit": false,
"responsables": [
12,
42
],
"scodoc7_id": null,
"semestre_id": 1,
"titre_num": "BUT MMI semestre 1",
"titre": "BUT MMI",
"titre_formation": "BUT MMI"
},
...
]
```
### Semestres
@ -262,9 +298,8 @@ par le serveur ScoDoc.
#### **Formsemestre**
* **Méthode:** GET
* **Paramètres:** `dept`
* **Routes:**
* `/formsemestre/<int:formsemestre_id>`
* **Paramètres:** `formsemestre_id`
* **Route:** `/formsemestre/<int:formsemestre_id>`
* **Exemple d'utilisation:** `/api/formsemestre/1`
* **Résultat:** Données d'un formsemestre spécifié par son id.
* **Exemple de résultat:**
@ -304,95 +339,130 @@ par le serveur ScoDoc.
#### **Formsemestres**
* **Méthode:** GET
* **Paramètres:** `dept`
* **Routes:**
* `/departement/id/<int:dept_id>/formsemestres_ids`
* `/departement/<string:dept>/formsemestres_ids`
* **Exemple d'utilisation:** `/api/departement/MMI/formsemestres_ids`
* **Résultat:** Liste des id des formsemestres d'un département donné.
* **Paramètres:** aucun
* ** Query string:** `etape_apo`, `annee_scolaire`, `dept_acronym`, `dept_id`
* **Route:** `/formsemestres/query
* **Exemple d'utilisation:** `/api/formsemestres/query?etapeapo=V7HU1&annee_scolaire=2021`
* **Résultat:** Données d'un formsemestre spécifié par son id.
* **Exemple de résultat:**
#### **Formsemestres en cours**
* **Méthode:** GET
* **Paramètres:** `dept`
* **Routes:**
* `/departement/id/<int:dept_id>/formsemestres_courants`
* `/departement/<string:dept>/formsemestres_courants`
* **Exemple d'utilisation:** `/api/departement/MMI/formsemestres_courants`
* **Résultat:** Liste des formsemestres en cours d'un département donné (date du jour dans la période couverte par le formsemestre,tous départements, dans tous les départements où l'utilisateur à le rôle APIView ou ScoView)
* **Exemple de résultat:**
```
[
{
"block_moyennes": false,
"bul_bgcolor": "white",
"bul_hide_xml": false,
"date_debut_iso": "2021-09-01",
"date_debut": "01/09/2021",
"date_fin_iso": "2022-08-31",
"date_fin": "31/08/2022",
"dept_id": 1,
"elt_annee_apo": "V7HU",
"elt_sem_apo": null,
"ens_can_edit_eval": false,
"etat": true,
"formation_id": 1,
"formsemestre_id": 1,
"gestion_compensation": false,
"gestion_semestrielle": false,
"id": 1,
"modalite": "FI",
"resp_can_change_ens": true,
"resp_can_edit": false,
"responsables": [
12,
42
],
"scodoc7_id": null,
"semestre_id": 1,
"titre_num": "BUT MMI semestre 1",
"titre": "BUT MMI",
"titre_formation": "BUT MMI"
},
...
]
```
```{
"block_moyennes": false,
"bul_bgcolor": "white",
"bul_hide_xml": false,
"date_debut_iso": "2021-09-01",
"date_debut": "01/09/2021",
"date_fin_iso": "2022-08-31",
"date_fin": "31/08/2022",
"dept_id": 1,
"elt_annee_apo": "V7HU",
"elt_sem_apo": null,
"ens_can_edit_eval": false,
"etat": true,
"formation_id": 1,
"formsemestre_id": 1,
"gestion_compensation": false,
"gestion_semestrielle": false,
"id": 1,
"modalite": "FI",
"resp_can_change_ens": true,
"resp_can_edit": false,
"responsables": [
12,
42
],
"scodoc7_id": null,
"semestre_id": 1,
"titre_num": "BUT MMI semestre 1",
"titre": "BUT MMI",
"titre_formation": "BUT MMI"
}
```
Le `titre`est celui donné par l'utilisateur dans le formsemestre, tandis que le
`titre_formation` est l'acronyme de la formation (défini dans son programme pédagogique).
#### **Bulletins d'un formsemestre**
* **Méthode:** GET
* **Paramètres:** `formsemestre_id`
* **Route:** `/formsemestres/bulletins
* **Exemple d'utilisation:** `/api/formsemestre/1/bulletins`
* **Résultat:** Bulletins d'un formsemestre spécifié par son id.
* **Exemple de résultat:**
#### **Programme d'un formsemestre**
* **Méthode:** GET
* **Paramètres:** `formsemestre_id`
* **Route:** `/formsemestres/programme
* **Exemple d'utilisation:** `/api/formsemestre/1/programme`
* **Résultat:** Liste des UEs, ressources et SAE d'un formsemestre spécifié par son id.
* **Exemple de résultat:**
#### **Etudiants d'un formsemestre**
* **Méthode:** GET
* **Paramètres:** `formsemestre_id`
* **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:**
#### **Etat des évaluations d'un formsemestre**
* **Méthode:** GET
* **Paramètres:** `formsemestre_id`
* **Route:** `/formsemestres/etat_evals`
* **Exemple d'utilisation:** `/api/formsemestre/1/etat_evals`
* **Résultat:** informations sur les évaluations d'un formsemestre spécifié par son id.
* **Exemple de résultat:**
#### **Résultats d'un formsemestre**
* **Méthode:** GET
* **Paramètres:** `formsemestre_id`
* **Query string: `format`
* **Route:** `/formsemestres/resultats`
* **Exemple d'utilisation:** `/api/formsemestre/1/etat_evals`
* **Résultat:** Récapitulatif par étudiant (état, groupe(s), moyennes d'UEs et de modules
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
mais pas JSON compliant à cause des _NaN_.
* **Exemple de résultat:**
## Étudiants
#### **`etudiants_courant`**
* **Méthode:** GET
* **Routes:**
* `/etudiants/courant`
* `/etudiants/courant/long`
* **Exemple d'utilisation:** `/api/etudiants/courant`
* **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:**
```
[
{
"id": 1,
"nip": 1,
"nom": "MOREL",
"prenom": "JACQUES",
"civilite": "X"
},
{
"id": 2,
"nip": 2,
"nom": "GILLES",
"prenom": "MAXIME",
"civilite": "X"
}
]
```
* **Méthode:** GET
* **Routes:**
* `/etudiants/courant`
* `/etudiants/courant/long`
* **Exemple d'utilisation:** `/api/etudiants/courant`
* **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:**
```
[
{
"id": 1,
"nip": 1,
"nom": "MOREL",
"prenom": "JACQUES",
"civilite": "X"
},
{
"id": 2,
"nip": 2,
"nom": "GILLES",
"prenom": "MAXIME",
"civilite": "X"
}
]
```
#### **`etudiant`**
@ -755,8 +825,6 @@ Le `titre`est celui donné par l'utilisateur dans le formsemestre, tandis que le
]
```
## Programmes de formations
#### **`formation`**