diff --git a/docs/ScoDoc9API.md b/docs/ScoDoc9API.md index 5f346f4b..ae44ce71 100644 --- a/docs/ScoDoc9API.md +++ b/docs/ScoDoc9API.md @@ -161,6 +161,7 @@ par le serveur ScoDoc. * [500](https://developer.mozilla.org/fr/docs/Web/HTTP/Status/500) : Erreur inconnue côté serveur. +<<<<<<< HEAD ![Carte syntaxique de l'API ScoDoc](img/API_Chart.svg) @@ -168,6 +169,8 @@ par le serveur ScoDoc. [source svg](img/API_Chart.svg) +======= +>>>>>>> b2469f2 (dept et formation ok) ## Règles générales * une route s'écrit comme une suite de noms et d'identifiants @@ -180,10 +183,93 @@ par le serveur ScoDoc. * Au pluriel une collection d'objets est renvoyée, si aucun obket n'est trouvé, retourne une collection vide * un type d'objet au singulier est généralement suivi immédiatement de son identifiant (unique). Exception: pour un étudiant, on peut également utiliser le NIP ou l'INE (qui ne sont pas uniques) -## Départements +## Référence + +### Carte syntaxique -#### **departements_ids** +![carte_syntaxique](img/API_Chart.svg)#### Structure Département +### Tableau récapitulatif des point de l'API + +Ce tableau est trié selon le type des informations retournées + +* Un nom simple représente un seul objet de ce type; +* suivi de `+`désigne une forme 'longue' d'objet de ce type +* suivi de `*` désigne une liste de 0, 1 ou plusieurs objets du type; +* suivi de `#` désigne une liste d'entiers (les ids des objets du type). +* 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 | +|:---------------------------|:----------------------------------|---------|--------------------------------------------------------------------------------------------------------------------| +| departement**`*`** | tous les depts |GET | [departements](http://localhost:8000/ScoDoc9API/**`**`#`**`**departements) | +| departement**`#`** | tous les ids des depts |GET | [departements-ids](http://localhost:8000/ScoDoc9API/**`#`**departements-ids) | +| departement | recherche par id |GET | [departement](http://localhost:8000/ScoDoc9API/**`#`**departement) | +| departement | recherche par acronyme |GET | [departement](http://localhost:8000/ScoDoc9API/**`#`**departement) | +| formation**`*`** | toutes les formations accessibles |GET | [formations](http://localhost:8000/ScoDoc9API/**`#`**formations) | +| formation**`#`** | ids des formations accessibles |GET | [formations-ids](http://localhost:8000/ScoDoc9API/**`#`**formations-ids) | +| formation | une formation |GET | [formation](http://localhost:8000/ScoDoc9API/**`#`**formation) | +| export | |GET | [formation-export](http://localhost:8000/ScoDoc9API/**`#`**formation-export) | +| export**`+`** | |GET | [formation-export_with_ids](http://localhost:8000/ScoDoc9API/**`#`**formation-export_with_ids) | +| referentiel_competences | |GET | [formation-referenciel_competences](http://localhost:8000/ScoDoc9API/**`#`**formation-referenciel_competences) | +| formsemestre**`#`** | |GET | [departement-formsemestres_ids](http://localhost:8000/ScoDoc9API/**`#`**departement-formsemestres_ids) | +| formsemestre**`*`** | |GET | [departement-formsemestres_courants](http://localhost:8000/ScoDoc9API/**`#`**departement-formsemestres_courants) | +| formsemestre**`*`** | |GET | [formsemestre-query](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-query) | +| formsemestre**`*`** | |GET | [etudiant-formsemestres](http://localhost:8000/ScoDoc9API/**`#`**etudiant-formsemestres) | +| formsemestre | |GET | [formsemestre](http://localhost:8000/ScoDoc9API/**`#`**formsemestre) | +| moduleimpl | |GET | [moduleimpl](http://localhost:8000/ScoDoc9API/**`#`**moduleimpl) | +| partition**`*`** | |GET | [formsemestre-partitions](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-partitions) | +| partition | |GET | [partition](http://localhost:8000/ScoDoc9API/**`#`**partition) | +| partition:CREATE | |POST | [formsemestre-partition-create](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-partition-create) | +| partition:EDIT | |POST | [partition-edit](http://localhost:8000/ScoDoc9API/**`#`**partition-edit) | +| partition:ACTION | |POST | [formsemestre-partitions-order](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-partitions-order) | +| partition:DELETE | |POST | [partition-delete](http://localhost:8000/ScoDoc9API/**`#`**partition-delete) | +| partition:ACTION | |POST | [partition-remove_etudiant](http://localhost:8000/ScoDoc9API/**`#`**partition-remove_etudiant) | +| group:CREATE | |POST | [partition-group-create](http://localhost:8000/ScoDoc9API/**`#`**partition-group-create) | +| group:EDIT | |POST | [group-edit](http://localhost:8000/ScoDoc9API/**`#`**group-edit) | +| group:ACTION | |POST | [partition-groups-order](http://localhost:8000/ScoDoc9API/**`#`**partition-groups-order) | +| group:DELETE | |POST | [group-delete](http://localhost:8000/ScoDoc9API/**`#`**group-delete) | +| group* | |POST | [etudiant-formsemestre-groups](http://localhost:8000/ScoDoc9API/**`#`**etudiant-formsemestre-groups) | +| group:ACTION | |GET | [group-set_etudiant](http://localhost:8000/ScoDoc9API/**`#`**group-set_etudiant) | +| group:ACTION | |POST | [group-remove_etudiant](http://localhost:8000/ScoDoc9API/**`#`**group-remove_etudiant) | +| etudiant**`*`** | tous les étudiants |GET | [etudiants](http://localhost:8000/ScoDoc9API/**`#`**etudiants) | +| etudiant**`*`** | recherche par etudid, nip ou i |GET | [etudiants-clé](http://localhost:8000/ScoDoc9API/**`#`**etudiants-clé) | +| etudiant**`*`** | les étudiants actuels |GET | [etudiants-courant](http://localhost:8000/ScoDoc9API/**`#`**etudiants-courant) | +| etudiant**`*`** | |GET | [departement-etudiants](http://localhost:8000/ScoDoc9API/**`#`**departement-etudiants) | +| etudiant**`*`** | |GET | [formsemestre-etudiants](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-etudiants) | +| etudiant**`*`** | |GET | [formsemestre-etudiants-defaillants](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-etudiants-defaillants) | +| etudiant**`*`** | |GET | [formsemestre-etudiants-demissionnaires](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-etudiants-demissionnaires) | +| etudiant**`*`** | |GET | [group-etudiants](http://localhost:8000/ScoDoc9API/**`#`**group-etudiants) | +| etudiant**`*`** | |GET | [group-etudiants-query](http://localhost:8000/ScoDoc9API/**`#`**group-etudiants-query) | +| etudiant | |GET | [etudiant](http://localhost:8000/ScoDoc9API/**`#`**etudiant) | +| | |GET | [jury-formsemestre-decisions_jury](http://localhost:8000/ScoDoc9API/**`#`**jury-formsemestre-decisions_jury) | +| bulletin**`*`** | |GET | [formsemestre-bulletin](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-bulletin) | +| bulletin | |GET | [etudiant-formsemestre-bulletin](http://localhost:8000/ScoDoc9API/**`#`**etudiant-formsemestre-bulletin) | +| programme | |GET | [formsemestre-programme](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-programme) | +| | |GET | [formsemestre-etat_evals](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-etat_evals) | +| | |GET | [formsemestre-resultats](http://localhost:8000/ScoDoc9API/**`#`**formsemestre-resultats) | +| evaluation* | |GET | [evaluations](http://localhost:8000/ScoDoc9API/**`#`**evaluations) | +| note* | |GET | [evaluation-notes](http://localhost:8000/ScoDoc9API/**`#`**evaluation-notes) | +| user | |GET | [user](http://localhost:8000/ScoDoc9API/**`#`**user) | + +### **Départements** + + +| attribut | type | commentaire | +|:-----------------|:--------|:---------------------------------------| +| _id_ | int | identifiant unique | +| _acronym_ | string | nom du dépatement (en principe unique) | +| _descripton_ | string | | +| _visible_ | bool | affiché ou non dans la page d'accueil | +| _date_creation_ | string | date ISO | + +#### **departements** +* **Méthode:** GET +* **Routes:** `/departements` +* **Exemple d'utilisation:** `/api/departements` +* **Résultat:** Liste des tous les départements (visibles ou non). +* **Exemple de résultat:** [departements.json](samples/sample_departements.json.md) + +#### **departements-ids** * **Méthode:** GET * **Routes:** `/departements_ids` * **Résultat:** Liste des id départements (visibles ou non). @@ -193,69 +279,80 @@ par le serveur ScoDoc. ``` #### **departement** - * **Méthode:** GET * **Routes:** * `/departement/id/` * `/departement/` * **Résultat:** Un département -* **Exemple de résultat:** +* **Exemple de résultat:** [departement.json](samples/sample_departement.json.md) + +### **Formation** +#### Structure Formation +| attribut | type | commentaire | +|:----------------------------|:------------|:--------------------------------------------------| +| _dept_id_ | int | _redondant avec departement.id ?_ | +| _acronyme_ | string | | +| _titre_ | string | _URL encoded ?_ | +| _version_ | int | | +| _type_parcours_ | int | | +| _referentiel_competence_id_ | int | null si pas de referentiel associé | +| _id_ | int | id unique de formation | +| _titre_officiel_ | string | | +| _formation_code_ | string | défini la compatibilité avec d'autres formations | +| _code_specialité_ | string | | +| _departement_ | Département | _pour `/formations` mais pas pour `/formation` ?_ | +| _formation_id_ | | _redondant avec id ?_ | + +#### **`formations`** +* **Méthode:** GET +* **Routes:** `/formations` +* **Exemple d'utilisation:** `/ScoDoc/api/formations` +* **Résultat:** Retourne la liste de toutes les formations (tous + départements) +* **Exemple de résultat:** [formations.json](samples/sample_formations.json.md) + +#### **`formations-ids`** +* **Méthode:** GET +* **Routes:** `/formations_ids` +* **Exemple d'utilisation:** `/ScoDoc/api/formations_ids` +* **Résultat:** Retourne la liste des ids de toutes les formations (tous départements accessibles) +* **Exemple de résultat:** ```json -{ - "id": 1, - "acronym": "TAPI", - "description": null, - "visible": true, - "date_creation": "Fri, 15 Apr 2022 12:19:28 GMT" -} +[17, 99, 32] ``` -#### **departements** - +#### **`formation`** * **Méthode:** GET -* **Routes:** `/departements` -* **Exemple d'utilisation:** `/api/departements` -* **Résultat:** Liste des tous les départements (visibles ou non). -* **Exemple de résultat:** - ```json - [ - { un département } - ... - ] - ``` - chaque département est décrit selon [departement](ScoDoc9API.md#departement) +* **Paramètres:** `formation_id` +* **Routes:** `/formation/` +* **Exemple d'utilisation:** `/ScoDoc/api/formation/1` +* **Résultat:** Retourne la formation d'id donné +* **Exemple de résultat:** [formation.json](samples/sample_formation.json.md) -#### **Étudiants d'un département** +### **Formsemestre** - * **Méthode:** GET - * **Paramètres:** `dept`, `dept_id` - * **Routes:** - * `/departement/id//etudiants` - * `/departement//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" - }, - ... - ] - ``` +Les sessions de formation (qu'elles durent une année ou un mois) sont représentées par les `formsemestre`. -#### **Formsemestres d'un département** +#### Note sur les identifiants de formsemestre +Le `session_id` peut être utilisé pour identifier de façon prévisible et +(presque) unique un formsemestre) dans un établissement, ce qui est utile +notamment pour interfacer ScoDoc à d'autres logiciels (par exemple gestion +d'emplois du temps ou de services d'enseignement). Cet identifiant est constitué +des informations suivantes: +* **Département** (RT, GEII, INFO...) (acronyme en majuscules) +* **Nom parcours:** BUT, LP, ... (défini au niveau du parcours dans ScoDoc = NAME) +* **Modalité:** FI, FC, FA +* **"Spécialité":** S1 (ou S1D pour les semestres décalés), ou le + `code_specialite` si pas de semestres. Le code spécialité est un champ + (libre) dans la "formation" (le programme pédagogique). +* **Année:** année de début de l'année scolaire correspondante (2014 pour + une session appartenant à l'année scolaire 2014-2015, même si elle + commence en mars 2015). + +**Exemple:** `INFO-DUT-FI-S1-2014` équivaut à un semestre S1 d'un DUT informatique de 2014 en formation initiale (FI) + +#### **departement-formsemestres_ids** * **Méthode:** GET * **Paramètres:** `dept` * **Routes:** @@ -266,10 +363,9 @@ par le serveur ScoDoc. * **Exemple de résultat:** ```[ 28, 99, 3 ]``` -#### **Formsemestres en cours d'un département** - +#### **departement-formsemestres-courants** * **Méthode:** GET -* **Paramètres:** `dept` +* **Paramètres:** `dept_id` * **Routes:** * `/departement/id//formsemestres_courants` * `/departement//formsemestres_courants` @@ -277,19 +373,7 @@ par le serveur ScoDoc. * **Résultat:** Liste des formsemestres en cours d'un département donné. * **Exemple de résultat:** [departement-formsemestres-courants.json](samples/sample_departement-formsemestres-courants.json.md) -### **Semestres** - -#### **Formsemestre** - -* **Méthode:** GET -* **Paramètres:** `formsemestre_id` -* **Route:** `/formsemestre/` -* **Exemple d'utilisation:** `/api/formsemestre/1` -* **Résultat:** Données d'un formsemestre spécifié par son id. -* **[Exemple de résultat:](samples/sample_formsemestre.json.md)** - -#### **Formsemestres** - +#### **formsemestres-query** * **Méthode:** GET * **Paramètres:** aucun * **Query string:** `etape_apo`, `annee_scolaire`, `dept_acronym`, `dept_id` @@ -297,101 +381,186 @@ par le serveur ScoDoc. * **Exemple d'utilisation:** `/api/formsemestres/query?etape_apo=V7HU1&annee_scolaire=2021` * **Résultat:** Données d'un formsemestre spécifié par son id. Si plusieurs paramètres sont donnés, c'est la conjonction (ET) des critères qui est recherchée. Si aucun formsemestre ne satisfait la requ^te, une liste vide est retournée * **Exemple de résultat:** [formsemestres.json](samples/sample_formsemestres.json.md) - -#### **Bulletins d'un formsemestre** +#### **etudiant_formsemestres** +* **Méthode:** GET +* **Paramètres:** `etudid`, `nip`, `ine` +* **Routes:** : + * `/etudiant/etudid//formsemestres` ou + * `/etudiant/nip//formsemestres` ou + * `/etudiant/ine//formsemestres` +* **Exemple d'utilisation:** `/etudiant/ine/1/formsemestres` +* **Résultat:** Retourne la liste des semestres qu'un étudiant a suivis, triés par ordre chronologique. (json) +* **Exemple de résultat:** [etudiant-formsemestres.json](samples/sample_etudiant-formsemestres.json.md) + +#### **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:** [formsemestre-bulletins.json](samples/sample_formsemestre-bulletins.json.md) +* **Route:** `/formsemestre/` +* **Exemple d'utilisation:** `/api/formsemestre/1` +* **Résultat:** Données d'un formsemestre spécifié par son id. +* **[Exemple de résultat:](samples/sample_formsemestre.json.md)** -#### **Programme d'un formsemestre** +### **Moduleimpl** +Le moduleimpl est la mise en place d'un module dans un formsemestre (avec son +responsable et ses enseignants). + +#### **`moduleimpl`** * **Méthode:** GET +* **Paramètres:** `moduleimpl_id` +* **Routes:** `/moduleimpl/` +* **Exemple d'utilisation:** `/ScoDoc/api/formation/moduleimpl/1` +* **Résultat:** Retourne la liste des moduleimpl +* **Exemple de résultat:** [moduleimpl.json](samples/sample_moduleimpl.json.md) + +### **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. + +#### **`formsemestre-partitions`** +* **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:** [formsemestre-programme.json](samples/sample_formsemestre-programme.json.md) +* **Routes:** `/formsemestre//partitions` +* **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/911/partitions` +* **Résultat:** La liste de toutes les partitions d'un formsemestre. +* **Exemple de résultat:** [formsemestre-partitions.json](samples/sample_formsemestre-partitions.json.md) -#### **Etudiants d'un formsemestre** +#### **`partition`** +* **Méthode: GET** +* **Paramètres:** `partition_id` +* **Routes:** `/partition/` +* **Exemple d'utilisation:** `/ScoDoc/api/partition/1963` +* **Résultat:** La description d'une partition (y compris la liste de ses groupes). +* **Exemple de résultat:** [partition.json](samples/sample_partition.json.md) -* **Méthode:** GET +#### **`formsemestre-partition-create`** +* **Méthode: POST** * **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:** [formsemestre-etudiants.json](samples/sample_formsemestre-etudiants.json.md) +* **Data:** `{ "partition_name" : }` +* **Routes:** `/formsemestre//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)** -#### **Etat des évaluations d'un formsemestre** +#### **`partition-edit`** +* **Méthode: POST** +* **Paramètres:** `partition_id` +* **Data:** `{ partition_name : }` +* **Routes:** `/partition//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)** -* **Méthode:** GET +#### **`formsemestre-partition-order`** +* **Méthode: POST** * **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:** [formsemestre-etat-eval.json](samples/sample_formsemestre-etat_evals.json.md) +* **Data:** `[ , , ... ]` +* **Routes:** `/formsemestre//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)** -#### **Résultats d'un formsemestre** +#### **`partition-delete`** +* **Méthode: POST** +* **Paramètres:** `partition_id` +* **Routes:** `/partition//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//remove_etudiant/` +* **Exemple d'utilisation:** `/ScoDoc/api/partition/1962/remove_etudiant/12107` +* **Résultat:** Reture un étudiant des groupes de la partition. +* **[Exemple de résultat](samples/sample_partition-remove_etudiant.json.md)** + +### **Groupe** + +#### **`partition-group-create`** +* **Méthode: POST** +* **Permission: `ScoEtudChangeGroups`*** +* **Paramètres:** `partition_id` +* **Data:** `{ group_name : }` +* **Routes:** `/partition//create` +* **Exemple d'utilisation:** `/ScoDoc/api/partition/1962/create` +>`{ "group_name" : "A" }` +* **Résultat:** Crée un groupe dans une partition. +* **[Exemple de résultat](samples/sample_formsemestre-partition-create.json.md)** + +#### **`group-edit`** +* **Méthode: POST** +* **Permission: `ScoEtudChangeGroups`*** +* **Paramètres:** `group_id` +* **Data:** `{ group_name : }` +* **Routes:** `/group//edit` +* **Exemple d'utilisation:** `/ScoDoc/api/group/4581/edit` +>`{ "group_name" : "nouveau" }` +* **Résultat:** Renomme un groupe. +* **[Exemple de résultat](samples/sample_group-edit.json.md)** + +#### **`partition-groups-order`** +* **Méthode: POST** +* **Paramètres:** `partition_id` +* **Data:** `[ , , ... ]` +* **Routes:** `/partition//groups/order` +* **Exemple d'utilisation:** `/ScoDoc/api/partition/1962/groups/order` +>`[ 4383, 4379, 4380, 4381, 4382, 4384 ]` +* **Résultat:** Spécifie l'ordre des groupes d'une partition. +* **[Exemple de résultat:](samples/sample_partition-groups-order.json.md)** + +#### **`group-delete`** +* **Méthode: POST** +* **Permission: `ScoEtudChangeGroups`*** +* **Paramètres:** `group_id` +* **Routes:** `/group//delete` +* **Exemple d'utilisation:** `/ScoDoc/api/group/4581/delete` +* **Résultat:** Supprime un groupe. +* **[Exemple de résultat](samples/sample_group-delete.json.md)** + +#### **etudiant-formsemestre-groupes** * **Méthode:** GET -* **Paramètres:** `formsemestre_id` -* **Query string: `format` -* **Route:** `/formsemestres/resultats` -* **Exemple d'utilisation:** `/api/formsemestre/1/resultats` -* **Résultat:** [formsemestre-resultats.json](samples/sample_formsemestre-resultats.json.md) +* **Paramètres:** `formsemestre_id`, `etudid`, `nip`, `ine` +* **Routes:** `/etudiant/etudid//semestre//groups` ou `/etudiant/nip//semestre//groups` ou `/etudiant/ine//semestre//groups` +* **Exemple d'utilisation:** `/etudiant/nip/1/semestre/1/groups` +* **Résultat:** Retourne la liste des groupes auxquels appartient l'étudiant dans le semestre indiqué. (json) +* **Exemple de résultat:** [groupes-formsemestre-etudiant.json](samples/sample_groupes-formsemestre-etudiant.json.md) -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_. +#### **`group-set_etudiant`** +* **Méthode: POST** +* **Permission: `ScoEtudChangeGroups`*** +* **Paramètres:** `group_id`, `etudid` +* **Routes:** `/group//set_etudiant/` +* **Exemple d'utilisation:** `/ScoDoc/api/group/4085/set_etudiant/12108` +* **Résultat:** Affecte un étudiant dans un groupe. +* **[Exemple de résultat](samples/sample_group-set_etudiant.json.md)** -* **Exemple de résultat:** - -## Étudiants - -#### **`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) - -#### **`etudiant`** - - * **Méthode:** GET - * **Paramètres:** `etudid`, `nip`, `ine` - * **Routes:** - * `/etudiant/etudid/` ou - * `/etudiant/nip/` ou - * `/etudiant/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) - -#### **`tous les etudiants` (TODO)** - - * **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) +#### **`group-remove_etudiant`** +* **Méthode: POST** +* **Permission: `ScoEtudChangeGroups`*** +* **Paramètres:** `group_id`, `etudid` +* **Routes:** `/group//remove_etudiant/` +* **Exemple d'utilisation:** `/ScoDoc/api/group/4085/remove_etudiant/12108` +* **Résultat:** Retire un étudiant d'un groupe. +* **[Exemple de résultat](samples/sample_group-remove_etudiant.json.md)** +### **Etudiant** #### **`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/` ou `/etudiants/nip/` ou `/etudiants/ine/` @@ -404,339 +573,65 @@ mais pas JSON compliant à cause des _NaN_. dept.). * **Exemple de résultat:** [etudiants.json](samples/sample_etudiants.json.md) -### Cursus +#### **`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) -#### **etudiant_formsemestres** - * **Méthode:** GET - * **Paramètres:** `etudid`, `nip`, `ine` - * **Routes:** : - * `/etudiant/etudid//formsemestres` ou - * `/etudiant/nip//formsemestres` ou - * `/etudiant/ine//formsemestres` - * **Exemple d'utilisation:** `/etudiant/ine/1/formsemestres` - * **Résultat:** Retourne la liste des semestres qu'un étudiant a suivis, triés par ordre chronologique. (json) - * **Exemple de résultat:** [etudiant-formsemestres.json](samples/sample_etudiant-formsemestres.json.md) - -### Bulletin - -#### **Bulletin d'un formsemestre d'un étudiant ** - - * **Méthode:** GET - * **Paramètres:** `formsemestre_id`, `etudid`, `nip`, `ine` - * **Routes:** - `/etudiant/etudid//formsemestre//bulletin[/format][/pdf]` - ou `/etudiant/nip//formsemestre//bulletin[/format][/pdf]` - ou `/etudiant/ine//formsemestre//bulletin[/format][/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` - * **Résultat:** Bulletin de l'étudiant dans le formsemestre. - Deux versions disponibles `long` et `short` (par défaut `long` ajoutez - `/short` pour la version plus courte). - - * **Exemple de résultat:** [bulletin-formsemestre-etudiant.json](samples/sample_bulletin-formsemestre-etudiant.json.md) - - -#### **Groupes d'un formsemestre d'un étudiant** - - * **Méthode:** GET - * **Paramètres:** `formsemestre_id`, `etudid`, `nip`, `ine` - * **Routes:** `/etudiant/etudid//semestre//groups` ou `/etudiant/nip//semestre//groups` ou `/etudiant/ine//semestre//groups` - * **Exemple d'utilisation:** `/etudiant/nip/1/semestre/1/groups` - * **Résultat:** Retourne la liste des groupes auxquels appartient l'étudiant dans le semestre indiqué. (json) - * **Exemple de résultat:** [groupes-formsemestre-etudiant.json](samples/sample_groupes-formsemestre-etudiant.json.md) - -## Programmes de formations - -#### **`formation`** - - * **Méthode:** GET - * **Paramètres:** `formation_id` - * **Routes:** `/formation/` - * **Exemple d'utilisation:** `/ScoDoc/api/formation/1` - * **Résultat:** Retourne la formation d'id donné - * **Exemple de résultat:** - ``` +#### **departement-etudiants** +* **Méthode:** GET +* **Paramètres:** `dept`, `dept_id` +* **Routes:** + * `/departement/id//etudiants` + * `/departement//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 + [ { - "id": 1, - "acronyme": "BUT R&T", - "titre_officiel": "Bachelor technologique réseaux et télécommunications", - "formation_code": "V1RET", - "code_specialite": null, - "dept_id": 1, - "titre": "BUT R&T", - "version": 1, - "type_parcours": 700, - "referentiel_competence_id": null, - "formation_id": 1 - } - ``` + "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" + }, + ... + ] + ``` -#### **`formations_ids`** - - * **Méthode:** GET - * **Routes:** `/formations_ids` - * **Exemple d'utilisation:** `/ScoDoc/api/formations_ids` - * **Résultat:** Retourne la liste des ids de toutes les formations (tous départements) - * **Exemple de résultat:** `[17, 99, 32]` - -#### **`formations`** - - * **Méthode:** GET - * **Routes:** `/formations` - * **Exemple d'utilisation:** `/ScoDoc/api/formations` - * **Résultat:** Retourne la liste de toutes les formations (tous - départements) - * **Exemple de résultat:** [formations.json](samples/sample_formations.json.md) -### Export programme - -#### **`formation export`** - - * **Méthode:** GET - * **Paramètres:** `formation_id`, `export_ids` (False par défaut. Ajouter `/with_ids` pour le passer à True) - * **Routes:** - * `/formation/export/` - * `/formation/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) - -#### **`referentiel_competences`** - - * **Méthode:** GET - * **Paramètres:** `formation_id` - * **Routes:** `/formation//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) - * -XXX obtenir la liste des référentiels ? - -## Formsemestres - -Les sessions de formation (qu'elles durent une année ou un mois) sont représentées par les `formsemestre`. - -#### **`formsemestre`** - - * **Méthode:** GET - * **Paramètres:** `formsemestre_id` - * **Routes:** `/formsemestre/` - * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1` - * **Résultat:** Retourne l'information sur le formsemestre correspondant au formsemestre_id - * **Exemple de résultat:** - ``` - { - "annee_scolaire" : "2021 - 2022", - "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": null, - "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_court": "BUT MMI", - "titre_num": "Semestre test semestre 1", - "titre": "Semestre test", - "session_id": "MMI-BUT-FI-S1-2021", - } - ``` - -#### **`formsemestre_apo`** - - * **Méthode:** GET - * **Paramètres:** `etape_apo` - * **Routes:** `/formsemestre/apo/` - * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1` - * **Résultat:** Retourne les informations sur les formsemestres - * **Exemple de résultat:** - ``` - [ { formsemestre comme ci-dessus }, ... ] - ``` - -### Note sur les identifiants de formsemestre -Le `session_id` peut être utilisé pour identifier de façon prévisible et -(presque) unique un formsemestre) dans un établissement, ce qui est utile -notamment pour interfacer ScoDoc à d'autres logiciels (par exemple gestion -d'emplois du temps ou de services d'enseignement). Cet identifiant est constitué -des informations suivantes: - - * **Département** (RT, GEII, INFO...) (acronyme en majuscules) - * **Nom parcours:** BUT, LP, ... (défini au niveau du parcours dans ScoDoc = NAME) - * **Modalité:** FI, FC, FA - * **"Spécialité":** S1 (ou S1D pour les semestres décalés), ou le - `code_specialite` si pas de semestres. Le code spécialité est un champ - (libre) dans la "formation" (le programme pédagogique). - * **Année:** année de début de l'année scolaire correspondante (2014 pour - une session appartenant à l'année scolaire 2014-2015, même si elle - commence en mars 2015). - - -**Exemple:** `INFO-DUT-FI-S1-2014` équivaut à un semestre S1 d'un DUT informatique de 2014 en formation initiale (FI) - -### Étudiants inscrits et bulletins -#### **etudiants d'un formsemestre** - * **Méthode:** GET - * **Paramètres:** `formsemestre_id`, `etat` (par défaut égal à "I" pour les étudiants inscrits) - * **Routes:** `/formsemestre//etudiants` XXX voir si - filtrage par état (dem, def, ...) - * **Résultat:** les étudiants inscrits à ce semestres XXX préciser état - (DEM, DEF)) - -#### * **`bulletins d'un formsemestre`** - - * **Méthode:** GET - * **Paramètres:** `formsemestre_id` - * **Routes:** `/formsemestre//bulletins` - * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/bulletins` - * **Résultat:** tous les bulletins d'un formsemestre. - * **[Exemple de résultat](samples/sample_formsemestre-bulletins.json.md)** - -#### **etat_evals d'un formsemestre** - - * **Méthode:** GET - * **Paramètres:** `formsemestre_id` - * **Routes:** `/formsemestre//etat_evals` - * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/etat_evals` - * **Résultat:** Retourne les informations sur l'état des évaluations d'un semestre donné - * **Exemple de résultat:** [formsemestre-etat_evals.json](samples/sample_formsemestre-etat_evals.json.md) - -#### **`jury`** (**non implémentée**) - - * **Méthode:** GET - * **Paramètres:** `formsemestre_id` - * **Routes:** `/formsemestre//jury` - * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/jury` - * **Résultat:** Retourne le récapitulatif des décisions jury - * **Exemple de résultat:** - ``` - XXX A COMPLETER - ``` - -### Programme d'un formsemestre - -#### **UE et modules** - - * **Méthode:** GET - * **Paramètres:** `dept`, `formsemestre_id` - * **Routes:** `/formsemestre//programme` - * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/programme` - * **Résultat:** Retourne la liste des UEs, modules, ressources et SAE d'un semestre. - * **Exemple de résultat:** [formsemestre-programme.json](samples/sample_formsemestre-programme.json.md) - - -#### Module d'un formsemestre - -Le moduleimpl est la mise en place d'un module dans un formsemestre (avec son -responsable et ses enseignants). - -#### **`moduleimpl`** - - * **Méthode:** GET - * **Paramètres:** `moduleimpl_id` - * **Routes:** `/moduleimpl/` - * **Exemple d'utilisation:** `/ScoDoc/api/formation/moduleimpl/1` - * **Résultat:** Retourne la liste des moduleimpl - * **Exemple de résultat:** [moduleimpl.json](samples/sample_moduleimpl.json.md) - -### Groupes et partitions - -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. - -#### **`partitions`** - -* **Méthode: GET** +#### **formsemestre-etudiants** +* **Méthode:** GET * **Paramètres:** `formsemestre_id` -* **Routes:** `/formsemestre//partitions` -* **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/911/partitions` -* **Résultat:** La liste de toutes les partitions d'un formsemestre. -* **Exemple de résultat:** [formsemestre-partitions.json](samples/sample_formsemestre-partitions.json.md) +* **Routes:** `/formsemestre//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) -#### **`partition`** - -* **Méthode: GET** -* **Paramètres:** `partition_id` -* **Routes:** `/partition/` -* **Exemple d'utilisation:** `/ScoDoc/api/partition/1963` -* **Résultat:** La description d'une partition (y compris la liste de ses groupes). -* **Exemple de résultat:** [partition.json](samples/sample_partition.json.md) - -#### **`partition-edit`** - -* **Méthode: POST** -* **Paramètres:** `partition_id` -* **Data:** `{ partition_name : }` -* **Routes:** `/partition//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)** - -#### **`partition-delete`** - -* **Méthode: POST** -* **Paramètres:** `partition_id` -* **Routes:** `/partition//delete` -* **Exemple d'utilisation:** `/ScoDoc/api/partition/2047/delete` -* **Résultat:** Supprime une partition. -* **[Exemple de résultat](samples/sample_partition-delete.json.md) - -#### **`formsemestre-partition-create`** - -* **Méthode: POST** -* **Paramètres:** `formsemestre_id` -* **Data:** `{ "partition_name" : }` -* **Routes:** `/formsemestre//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)** - -#### **`formsemestre-partition-order`** - -* **Méthode: POST** -* **Paramètres:** `formsemestre_id` -* **Data:** `[ , , ... ]` -* **Routes:** `/formsemestre//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-groups-order`** - -* **Méthode: POST** -* **Paramètres:** `partition_id` -* **Data:** `[ , , ... ]` -* **Routes:** `/partition//groups/order` -* **Exemple d'utilisation:** `/ScoDoc/api/partition/1962/groups/order` ->`[ 4383, 4379, 4380, 4381, 4382, 4384 ]` -* **Résultat:** Spécifie l'ordre des groupes d'une partition. -* **[Exemple de résultat:](samples/sample_partition-groups-order.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//etudiants` @@ -745,7 +640,6 @@ d'un nombre quelconque de groupes d'étudiants. * **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') @@ -754,115 +648,184 @@ d'un nombre quelconque de groupes d'étudiants. * **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) -#### **`groups-set_etudiant`** +#### **`etudiant`** +* **Méthode:** GET +* **Paramètres:** `etudid`, `nip`, `ine` +* **Routes:** + * `/etudiant/etudid/` ou + * `/etudiant/nip/` ou + * `/etudiant/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) -* **Méthode: POST** -* **Permission: `ScoEtudChangeGroups`*** -* **Paramètres:** `group_id`, `etudid` -* **Routes:** `/group//set_etudiant/` -* **Exemple d'utilisation:** `/ScoDoc/api/group/4085/set_etudiant/12108` -* **Résultat:** Affecte un étudiant dans un groupe. -* **[Exemple de résultat](samples/sample_group-set_etudiant.json.md)** +### Programme, Référentiel -#### **`groups-remove_etudiant`** +#### **`formation-export`** +* **Méthode:** GET +* **Paramètres:** `formation_id`, `export_ids` (False par défaut. Ajouter `/with_ids` pour le passer à True) +* **Routes:** + * `/formation//export` + * `/formation//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) -* **Méthode: POST** -* **Permission: `ScoEtudChangeGroups`*** -* **Paramètres:** `group_id`, `etudid` -* **Routes:** `/group//remove_etudiant/` -* **Exemple d'utilisation:** `/ScoDoc/api/group/4085/remove_etudiant/12108` -* **Résultat:** Retire un étudiant d'un groupe. -* **[Exemple de résultat](samples/sample_group-remove_etudiant.json.md)** +#### **`formation-referentiel_competences`** +* **Méthode:** GET +* **Paramètres:** `formation_id` +* **Routes:** `/formation//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) +* +XXX obtenir la liste des référentiels ? -#### **`partition-group-create`** +### **Bulletin, Evaluations, Notes** +#### **formsemestre-bulletins** +* **Méthode:** GET +* **Paramètres:** `formsemestre_id` +* **Route:** `/formsemestre//bulletins +* **Exemple d'utilisation:** `/api/formsemestre/1/bulletins` +* **Résultat:** Bulletins d'un formsemestre spécifié par son id. +* **Exemple de résultat:** [formsemestre-bulletins.json](samples/sample_formsemestre-bulletins.json.md) -* **Méthode: POST** -* **Permission: `ScoEtudChangeGroups`*** -* **Paramètres:** `partition_id` -* **Data:** `{ group_name : }` -* **Routes:** `/partition//create` -* **Exemple d'utilisation:** `/ScoDoc/api/partition/1962/create` ->`{ "group_name" : "A" }` -* **Résultat:** Crée un groupe dans une partition. -* **[Exemple de résultat](samples/sample_formsemestre-partition-create.json.md)** +#### **etudiant-formsemestre-bulletin** +* **Méthode:** GET +* **Paramètres:** `formsemestre_id`, `etudid`, `nip`, `ine` +* **Routes:** + `/etudiant/etudid//formsemestre//bulletin[/format][/pdf]` + ou `/etudiant/nip//formsemestre//bulletin[/format][/pdf]` + ou `/etudiant/ine//formsemestre//bulletin[/format][/pdf]` -#### **`partition-group-delete`** +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` +* **Résultat:** Bulletin de l'étudiant dans le formsemestre. + Deux versions disponibles `long` et `short` (par défaut `long` ajoutez + `/short` pour la version plus courte). +* **Exemple de résultat:** [bulletin-formsemestre-etudiant.json](samples/sample_bulletin-formsemestre-etudiant.json.md) -* **Méthode: POST** -* **Permission: `ScoEtudChangeGroups`*** -* **Paramètres:** `group_id` -* **Routes:** `/group//delete` -* **Exemple d'utilisation:** `/ScoDoc/api/group/4581/delete` -* **Résultat:** Supprime un groupe. -* **[Exemple de résultat](samples/sample_group-delete.json.md)** +#### **formsemestre-programme** +* **Méthode:** GET +* **Paramètres:** `dept`, `formsemestre_id` +* **Routes:** `/formsemestre//programme` +* **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/programme` +* **Résultat:** Retourne la liste des UEs, modules, ressources et SAE d'un semestre. +* **Exemple de résultat:** [formsemestre-programme.json](samples/sample_formsemestre-programme.json.md) -#### **`partition-remove_etudiant`** +#### **formsemestre-etat_evals** +* **Méthode:** GET +* **Paramètres:** `formsemestre_id` +* **Route:** `/formsemestre//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:** [formsemestre-etat-eval.json](samples/sample_formsemestre-etat_evals.json.md) -* **Méthode: POST** -* **Permission: `ScoEtudChangeGroups`*** -* **Paramètres:** `partition_id` -* **Routes:** `/partition//remove_etudiant/` -* **Exemple d'utilisation:** `/ScoDoc/api/partition/1962/remove_etudiant/12107` -* **Résultat:** Reture un étudiant des groupes de la partition. -* **[Exemple de résultat](samples/sample_partition-remove_etudiant.json.md)** +#### **formsemestre-resultats** +* **Méthode:** GET +* **Paramètres:** `formsemestre_id` +* **Query string: `format` +* **Route:** `/formsemestres/resultats` +* **Exemple d'utilisation:** `/api/formsemestre/1/resultats` +* **Résultat:** [formsemestre-resultats.json](samples/sample_formsemestre-resultats.json.md) -#### **`group-edit`** +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_. -* **Méthode: POST** -* **Permission: `ScoEtudChangeGroups`*** -* **Paramètres:** `group_id` -* **Data:** `{ group_name : }` -* **Routes:** `/group//edit` -* **Exemple d'utilisation:** `/ScoDoc/api/group/4581/edit` ->`{ "group_name" : "nouveau" }` -* **Résultat:** Renomme un groupe. -* **[Exemple de résultat](samples/sample_group-edit.json.md)** +* **Exemple de résultat:** + +#### **`evaluations`** +* **Méthode:** GET +* **Paramètres:** `moduleimpl_id` +* **Routes:** `/moduleimpl//evaluations` +* **Exemple d'utilisation:** `/ScoDoc/api/moduleimpl/1/evaluations` +* **Résultat:** Retourne la liste des évaluations à partir de l'id d'un + moduleimpl (quel que soit leur statut). +* **[Exemple de résultat](samples/sample_moduleimpl-evaluations.json.md)** + +#### **`evaluations/notes`** +* **Méthode**: GET +* **Paramètres**: `evaluation_id` +* **Routes:** `/evaluations/eval_notes/` +* **Exemple d'utilisation:** `/ScoDoc/api/evaluations/notes/1` +* **Résultat:** Retourne la liste des notes d'une évaluation +* **Exemple de résultat:** + XXX à revoir (à spécifier/reprendre implémentation XXX was eval_notes) + +### **User** + +### Logos +#### **`logos`** +* **Méthode:** GET +* **Paramètres:** `format` (json, xml), json par défaut +* **Route :** `/ScoDoc/api/logos` +* **Exemple d'utilisation :** `/ScoDoc/api/logos?format=xml` +* **Résultat :** Liste des noms des logos définis pour le site scodoc. +* **Exemple de résultat:** `['header', 'footer', 'custom']` + +XXX vérifier si on supporte XML et pour qui ? + +#### **`logo`** +* **Méthode:** GET +* **Paramètres :** Aucun +* **Route:** `/logos/` +* **Exemple d'utilisation :** `/ScoDoc/api/logo/header` +* **Résultat :** l'image (format png ou jpg) + +#### **`departement-logos`** +* **Méthode:** GET +* **Paramètres:** `format` (json, xml) +* **Route :** `/departements//logos` +* **Exemple d'utilisation :** `/ScoDoc/api/departements/MMI/logos` +* **Résultat :** Liste des noms des logos définis pour le département visé. +* **Exemple de résultat:** `['footer', 'signature', 'universite']` + +#### **`departement-logo`** +* **Méthode:** GET +* **Paramètres :** Aucun +* **Route:** `/departements//logo/` +* **Exemple d'utilisation:** `/ScoDoc/api/departements/MMI/logos/header` +* **Résultat :** l'image (format png ou jpg) + +------------------------------------------------------------------------------------------------------------------------------------------------------- + +## **Réserve** +### Étudiants inscrits et bulletins +#### * **`formsemestre-bulletins`** + * **Méthode:** GET + * **Paramètres:** `formsemestre_id` + * **Routes:** `/formsemestre//bulletins` + * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/bulletins` + * **Résultat:** tous les bulletins d'un formsemestre. + * **[Exemple de résultat](samples/sample_formsemestre-bulletins.json.md)** + +#### **formsemestre-etat_evals** + * **Méthode:** GET + * **Paramètres:** `formsemestre_id` + * **Routes:** `/formsemestre//etat_evals` + * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/etat_evals` + * **Résultat:** Retourne les informations sur l'état des évaluations d'un semestre donné + * **Exemple de résultat:** [formsemestre-etat_evals.json](samples/sample_formsemestre-etat_evals.json.md) + +#### **`formsemestre-decision_jury`** + * **Méthode:** GET + * **Paramètres:** `formsemestre_id` + * **Routes:** `/formsemestre//decision_jury` + * **Exemple d'utilisation:** `/ScoDoc/api/formsemestre/1/jury` + * **Résultat:** Retourne le récapitulatif des décisions jury + * **Exemple de résultat:** + ``` + XXX A COMPLETER + ``` ### Évaluations -#### **`evaluations`** - - * **Méthode:** GET - * **Paramètres:** `moduleimpl_id` - * **Routes:** `/evaluations/` - * **Exemple d'utilisation:** `/ScoDoc/api/evaluations/1` - * **Résultat:** Retourne la liste des évaluations à partir de l'id d'un - moduleimpl (quel que soit leur statut). - * **Exemple de résultat:** - ``` - [ - { - "apresmidi": 0 - "coefficient": 1, - "description": "Compte-rendu de TP 2", - 'date_debut': '2022-05-13T11:30:00', - 'date_fin': '2022-05-13T12:30:00', - "evaluation_id": 1, - "evaluation_type": 0, - "id": 1, - "jour": "13/05/2022", - "matin": 1, - "moduleimpl_id": 1, - "note_max": 20, - "numero": 0, - "publish_incomplete": false, - "poids" : {1896: 0.0, 1897: 2.3, 1898: 4.2}, - "visibulletin": true, - } - ] - ``` - - -#### **`evaluations/notes`** - - * **Méthode**: GET - * **Paramètres**: `evaluation_id` - * **Routes:** `/evaluations/eval_notes/` - * **Exemple d'utilisation:** `/ScoDoc/api/evaluations/notes/1` - * **Résultat:** Retourne la liste des notes d'une évaluation - * **Exemple de résultat:** - XXX à revoir (à spécifier/reprendre implémentation XXX was eval_notes) - ### Absences **Remarques**, les dates sont au format iso `yyyy-mm-dd`. Les dates de fin ne sont pas incluses. Et `demi_journee`= 2 si journée complète, =1 si uniquement le matin, =0 si uniquement l'après-midi. @@ -960,45 +923,6 @@ d'un nombre quelconque de groupes d'étudiants. XXX A COMPLETER ``` -### Logos - -#### **`liste des logos globaux`** - - * **Méthode:** GET - * **Paramètres:** `format` (json, xml), json par défaut - * **Route :** `/ScoDoc/api/logos` - * **Exemple d'utilisation :** `/ScoDoc/api/logos?format=xml` - * **Résultat :** Liste des noms des logos définis pour le site scodoc. - * **Exemple de résultat:** `['header', 'footer', 'custom']` - - XXX vérifier si on supporte XML et pour qui ? - -#### **`récupération d'un logo global`** - * **Méthode:** GET - * **Paramètres :** Aucun - * **Route:** `/logos/` - * **Exemple d'utilisation :** `/ScoDoc/api/logos/header` - * **Résultat :** l'image (format png ou jpg) - - -#### **`logo d'un département`** - - * **Méthode:** GET - * **Paramètres:** `format` (json, xml) - * **Route :** `/departements//logos` - * **Exemple d'utilisation :** `/ScoDoc/api/departements/MMI/logos` - * **Résultat :** Liste des noms des logos définis pour le département visé. - * **Exemple de résultat:** `['footer', 'signature', 'universite']` - - -#### **`récupération d'un logo global`** - - * **Méthode:** GET - * **Paramètres :** Aucun - * **Route:** `/departements//logos/` - * **Exemple d'utilisation:** `/ScoDoc/api/departements/MMI/logos/header` - * **Résultat :** l'image (format png ou jpg) - ### En savoir plus Voir exemples d'utilisation de l'API en Python, dans `tests/api/`. diff --git a/docs/img/API_Chart.odg b/docs/img/API_Chart.odg index e330eea4..f2572f5d 100644 Binary files a/docs/img/API_Chart.odg and b/docs/img/API_Chart.odg differ diff --git a/docs/img/API_Chart.svg b/docs/img/API_Chart.svg index 36051427..e88a257a 100644 --- a/docs/img/API_Chart.svg +++ b/docs/img/API_Chart.svg @@ -1,16401 +1,2779 @@ - - - - - + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - + + + + + + + - - + + - - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + + + - - - - - - - - - - - <id:dept_id> - - - - - - - - departements - - - - - - - - departements_ids - - - - - - - - departement - - - - - - - - etudiants - - - - - - - - formsemestres_ids - - - - - - - - formsemestres_courants - - - - - - - - / - - - - - - - - <string : dept_acronym> - - - - - - - - id - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - etudiants - - - - - - - - departement - - - - - - - - etudiants - - - - - - - - formsemestres_ids - - - - - - - - formsemestres_courants - - - - - - - - / - - - - - - - - / - - - - - - - - <string:dept_acronym> - - - - - - - - id - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - courants - - - - - - - - long - - - - - - - - / - - - - - - - - / - - - - - - - - etudiant - - - - - - - - formsemestres - - - - - - - - formsemestre - - - - - - - - <int:formsemestre_id> - - - - - - - - etudid - - - - - - - - <int:etudid> - - - - - - - - / - - - - - - - - nip - - - - - - - - <string:nip> - - - - - - - - / - - - - - - - - ine - - - - - - - - <int:ine> - - - - - - - - / - - - - - - - - bulletin - - - - - - - - groups - - - - - - - - / - - - - - - - - / - - - - - - - - / - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - formations - - - - - - - - formation - - - - - - - - formations_ids - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <int:formation_id> - - - - - - - - moduleimpl - - - - - - - - / - - - - - - - - <int:moduleimpl_id> - - - - - - - - export - - - - - - - - / - - - - - - - - <int:formation_id> - - - - - - - - with_ids - - - - - - - - referentiel_competence - - - - - - - - logos - - - - - - - - / - - - - - - - - / - - - - - - - - - - - - - - - / - - - - - - - - / - - - - - - - - <string:logo_name> - - - - - - - - / - - - - - - - - ? - id408 - - - - - - - - ? - id409 - - - - - - - - ? - id410 - - - - - - - - ? - id411 - - - - - - - - ? - id412 - - - - - - - - formsemestres - - - - - - - - / - - - - - - - - query - - - - - - - - ? - - - - - - - - & - - - - - - - - etape_apo - - - - - - - - = - - - - - - - - <string:etape_apo> - - - - - - - - annee_scolaire - - - - - - - - = - - - - - - - - <int:annee> - - - - - - - - dept_acronym - - - - - - - - = - - - - - - - - <string:acronym> - - - - - - - - dept_id - - - - - - - - = - - - - - - - - <int:dept_id> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - formsemestre - - - - - - - - / - - - - - - - - <int:formsemestre_id> - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ? - - - - - - - - - - - - - - - bulletins - - - - - - - - jury - - - - - - - - programme - - - - - - - - etudiants - - - - - - - - / - - - - - - - - demissionnaires - - - - - - - - defaillants - - - - - - - - - - - - - - - - - - - - - - etat_evals - - - - - - - - partitions - - - - - - - - resultats - - - - - - - - ? - - - - - - - - format - - - - - - - - = - - - - - - - - raw - - - - - - - - - - - - - - - / - - - - - - - - create - - - - - - - - logos - - - - - - - - / - - - - - - - - <string:logo_name> - - - - - - - - user - - - - - - - - / - - - - - - - - <int:id> - - - - - - - - order - - - - - - - - - - - - - - - - - - - - - - group - - - - - - - - / - - - - - - - - <int:group_id> - - - - - - - - / - - - - - - - - etudiants - - - - - - - - query - - - - - - - - edit - - - - - - - - delete - - - - - - - - ? - - - - - - - - etat - - - - - - - - = - - - - - - - - <string:etat> - - - - - - - - set_etudiant - - - - - - - - / - - - - - - - - <int:etudiant_id> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - partition - - - - - - - - / - - - - - - - - <int:partition_id> - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - edit - - - - - - - - delete - - - - - - - - remove_etudiant - - - - - - - - / - - - - - - - - <int:etudiant_id> - - - - - - - - group - - - - - - - - / - - - - - - - - create - - - - - - - - - - - - - - - evaluations - - - - - - - - / - - - - - - - - <int:moduleimpl_id> - - - - - - - - eval_notes - - - - - - - - <int:evaluaton_id> - - - - - - - - - - - - - - - - - - - - - - jury - - - - - - - - / - - - - - - - - <int:formsemestre_id> - - - - - - - - formsemestre - - - - - - - - preparation_jury - - - - - - - - decisions_jury - - - - - - - - - - - - - - - - - - - - - - / - - - - - - - - / - - - - - - - - groups - - - - - - - - / - - - - - - - - order - - - - - - - - - - - - - - - absences - - - - - - - - etudid - - - - - - - - <int:etudid> - - - - - - - - / - - - - - - - - nip - - - - - - - - <string:nip> - - - - - - - - / - - - - - - - - ine - - - - - - - - <int:ine> - - - - - - - - / - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - just - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - abs_annule - - - - - - - - - - - - - - - / - - - - - - - - ? - - - - - - - - - - - - - - - etudid - - - - - - - - <int:etudid> - - - - - - - - / - - - - - - - - jour - - - - - - - - <string:jour> - - - - - - - - / - - - - - - - - matin - - - - - - - - <string:matin> - - - - - - - - / - - - - - - - - / - - - - - - - - & - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <int:etudid> - - - - - - - - - - - - - - - abs_annule_justif - - - - - - - - etudid - - - - - - - - <int:etudid> - - - - - - - - / - - - - - - - - jour - - - - - - - - <string:jour> - - - - - - - - / - - - - - - - - matin - - - - - - - - <string:matin> - - - - - - - - / - - - - - - - - / - - - - - - - - ? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - abs_group_etat - - - - - - - - <int:group_id> - - - - - - - - / - - - - - - - - - - - - - - - / - - - - - - - - date_debut - - - - - - - - / - - - - - - - - <date:date_debut> - - - - - - - - / - - - - - - - - date_fin - - - - - - - - / - - - - - - - - <date:date_fin> - - - - - - - - - - - - - - - - - - - - - - / - - - - - - - - ? - - - - - - - - - - - - - - - list_abs - - - - - - - - / - - - - - - - - / - - - - - - - - - - - - - - - / - - - - - - - - <int:etudid> - - - - - - - - <string:list_abs> - - - - - - - - / - - - - - - - - - - - - - - - reset_etud_abs - - - - - - - - only_not_just - - - - - - - - only_just - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - / - - - - - - - - ? - id413 - - - - - - - - ? - id414 - - - - - - - - ? - id415 - - - - - - - - ? - id416 - - - - - - - - ? - id417 - - - - - - - - ? - id418 - - - - - - - - ? - id419 - - - - - - - - ? - id420 - - - - - - - - ? - id421 - - - - - - - - ? - id422 - - - - - - - - ? - id423 - - - - - - - - ? - id424 - - - - - - - - ? - id425 - - - - - - - - ? - id426 - - - - - - - - ? - id427 - - - - - - - - ? - id428 - - - - - - - - ? - id429 - - - - - - - - ? - id430 - - - - - - - - ? - id431 - - - - - - - - ? - id432 - - - - - - - - ? - id433 - - - - - - - - ? - id434 - - - - - - - - ? - id435 - - - - - - - - ? - id436 - - - - - - - - ? - id437 - - - - - - - - ? - id438 - - - - - - - - ? - id439 - - - - - - - - ? - id440 - - - - - - - - ? - id441 - - - - - - - - ? - id442 - - - - - - - - ? - id443 - - - - - - - - ? - id444 - - - - - - - - ? - id445 - - - - - - - - ? - id446 - - - - - - - - ? - id447 - - - - - - - - ? - id448 - - - - - - - - ? - id449 - - - - - - - - ? - id450 - - - - - - - - ? - id451 - - - - - - - - ? - id452 - - - - - - - - ? - id453 - - - - - - - - ? - id454 - - - - - - - - ? - id455 - - - - - - - - ? - id456 - - - - - - - - ? - id457 - - - - - - - - ? - id458 - - - - - - - - ? - id459 - - - - - - - - ? - id460 - - - - - - - - ? - id461 - - - - - - - - ? - id462 - - - - - - - - ? - id463 - - - - - - - - ? - id464 - - - - - - - - ? - id465 - - - - - - - - ? - id466 - - - - - - - - ? - id467 - - - - - - - - ? - id468 - - - - - - - - ? - id469 - - - - - - - - ? - id470 - - - - - - - - ? - id471 - - - - - - - - ? - id472 - - - - - - - - ? - id473 - - - - - - - - ? - id474 - - - - - - - - ? - id475 - - - - - - - - ? - id476 - - - - - - - - ? - id477 - - - - - - - - ? - id478 - - - - - - - - ? - id479 - - - - - - - - ? - id480 - - - - - - - - ? - id481 - - - - - - - - ? - id482 - - - - - - - - ? - id483 - - - - - - - - etudid - - - - - - - - <int:etudid> - - - - - - - - / - - - - - - - - nip - - - - - - - - <string:nip> - - - - - - - - / - - - - - - - - ine - - - - - - - - <int:ine> - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ? - id484 - - - - - - - - ? - id485 - - - - - - - - ? - id486 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + <id:dept_id> + + + + + + + + departements + + + + + + + + departements_ids + + + + + + + + departement + + + + + + + + etudiants + + + + + + + + formsemestres_ids + + + + + + + + formsemestres_courants + + + + + + + + / + + + + + + + + <string : dept_acronym> + + + + + + + + id + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + etudiants + + + + + + + + departement + + + + + + + + etudiants + + + + + + + + formsemestres_ids + + + + + + + + formsemestres_courants + + + + + + + + / + + + + + + + + / + + + + + + + + <string:dept_acronym> + + + + + + + + id + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + courants + + + + + + + + long + + + + + + + + / + + + + + + + + / + + + + + + + + etudiant + + + + + + + + formsemestres + + + + + + + + formsemestre + + + + + + + + <int:formsemestre_id> + + + + + + + + etudid + + + + + + + + <int:etudid> + + + + + + + + / + + + + + + + + nip + + + + + + + + <string:nip> + + + + + + + + / + + + + + + + + ine + + + + + + + + <int:ine> + + + + + + + + / + + + + + + + + bulletin + + + + + + + + groups + + + + + + + + / + + + + + + + + / + + + + + + + + / + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + formations + + + + + + + + formation + + + + + + + + formations_ids + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <int:formation_id> + + + + + + + + moduleimpl + + + + + + + + / + + + + + + + + <int:moduleimpl_id> + + + + + + + + export + + + + + + + + / + + + + + + + + <int:formation_id> + + + + + + + + with_ids + + + + + + + + referentiel_competence + + + + + + + + logo + + + + + + + + / + + + + + + + + / + + + + + + + + + + + + + + + / + + + + + + + + / + + + + + + + + <string:logo_name> + + + + + + + + / + + + + + + + + ? + id344 + + + + + + + + ? + id345 + + + + + + + + formsemestres + + + + + + + + / + + + + + + + + query + + + + + + + + ? + + + + + + + + & + + + + + + + + etape_apo + + + + + + + + = + + + + + + + + <string:etape_apo> + + + + + + + + annee_scolaire + + + + + + + + = + + + + + + + + <int:annee> + + + + + + + + dept_acronym + + + + + + + + = + + + + + + + + <string:acronym> + + + + + + + + dept_id + + + + + + + + = + + + + + + + + <int:dept_id> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + formsemestre + + + + + + + + / + + + + + + + + <int:formsemestre_id> + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ? + + + + + + + + + + + + + + + bulletins + + + + + + + + jury + + + + + + + + programme + + + + + + + + etudiants + + + + + + + + / + + + + + + + + demissionnaires + + + + + + + + defaillants + + + + + + + + + + + + + + + + + + + + + + etat_evals + + + + + + + + partitions + + + + + + + + resultats + + + + + + + + ? + + + + + + + + format + + + + + + + + = + + + + + + + + raw + + + + + + + + + + + + + + + / + + + + + + + + create + + + + + + + + logos + + + + + + + + / + + + + + + + + <string:logo_name> + + + + + + + + user + + + + + + + + / + + + + + + + + <int:id> + + + + + + + + order + + + + + + + + + + + + + + + + + + + + + + group + + + + + + + + / + + + + + + + + <int:group_id> + + + + + + + + / + + + + + + + + etudiants + + + + + + + + query + + + + + + + + edit + + + + + + + + delete + + + + + + + + ? + + + + + + + + etat + + + + + + + + = + + + + + + + + <string:etat> + + + + + + + + set_etudiant + + + + + + + + / + + + + + + + + <int:etudiant_id> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + partition + + + + + + + + / + + + + + + + + <int:partition_id> + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + edit + + + + + + + + delete + + + + + + + + remove_etudiant + + + + + + + + / + + + + + + + + <int:etudiant_id> + + + + + + + + group + + + + + + + + / + + + + + + + + create + + + + + + + + + + + + + + + evaluations + + + + + + + + / + + + + + + + + <int:moduleimpl_id> + + + + + + + + eval_notes + + + + + + + + <int:evaluaton_id> + + + + + + + + + + + + + + + + + + + + + + jury + + + + + + + + / + + + + + + + + <int:formsemestre_id> + + + + + + + + formsemestre + + + + + + + + preparation_jury + + + + + + + + decisions_jury + + + + + + + + + + + + + + + + + + + + + + / + + + + + + + + / + + + + + + + + groups + + + + + + + + / + + + + + + + + order + + + + + + + + + + + + + + + absences + + + + + + + + etudid + + + + + + + + <int:etudid> + + + + + + + + / + + + + + + + + nip + + + + + + + + <string:nip> + + + + + + + + / + + + + + + + + ine + + + + + + + + <int:ine> + + + + + + + + / + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + just + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + abs_annule + + + + + + + + + + + + + + + / + + + + + + + + ? + + + + + + + + + + + + + + + etudid + + + + + + + + <int:etudid> + + + + + + + + / + + + + + + + + jour + + + + + + + + <string:jour> + + + + + + + + / + + + + + + + + matin + + + + + + + + <string:matin> + + + + + + + + / + + + + + + + + / + + + + + + + + & + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <int:etudid> + + + + + + + + + + + + + + + abs_annule_justif + + + + + + + + etudid + + + + + + + + <int:etudid> + + + + + + + + / + + + + + + + + jour + + + + + + + + <string:jour> + + + + + + + + / + + + + + + + + matin + + + + + + + + <string:matin> + + + + + + + + / + + + + + + + + / + + + + + + + + ? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + abs_group_etat + + + + + + + + <int:group_id> + + + + + + + + / + + + + + + + + + + + + + + + / + + + + + + + + date_debut + + + + + + + + / + + + + + + + + <date:date_debut> + + + + + + + + / + + + + + + + + date_fin + + + + + + + + / + + + + + + + + <date:date_fin> + + + + + + + + + + + + + + + + + + + + + + / + + + + + + + + ? + + + + + + + + + + + + + + + list_abs + + + + + + + + / + + + + + + + + / + + + + + + + + + + + + + + + / + + + + + + + + <int:etudid> + + + + + + + + <string:list_abs> + + + + + + + + / + + + + + + + + + + + + + + + reset_etud_abs + + + + + + + + only_not_just + + + + + + + + only_just + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + / + + + + + + + + ? + id346 + + + + + + + + ? + id347 + + + + + + + + ? + id348 + + + + + + + + ? + id349 + + + + + + + + ? + id350 + + + + + + + + ? + id351 + + + + + + + + ? + id352 + + + + + + + + etudid + + + + + + + + <int:etudid> + + + + + + + + / + + + + + + + + nip + + + + + + + + <string:nip> + + + + + + + + / + + + + + + + + ine + + + + + + + + <int:ine> + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + logos + + + + + + + + / + + + + + + + + / + + + + + + + + + + + + + + + ? + id353 + + + + + + + + ? + id354 @@ -16403,4 +2781,4 @@ - + \ No newline at end of file diff --git a/docs/samples/sample_departement.json.md b/docs/samples/sample_departement.json.md new file mode 100644 index 00000000..28807675 --- /dev/null +++ b/docs/samples/sample_departement.json.md @@ -0,0 +1,14 @@ +### departements + +`/api/departement/1` + + +```json +{ + "id": 1, + "acronym": "BIO", + "description": "migré de ScoDoc7", + "visible": true, + "date_creation": "2021-11-04T15:38:09.397095+01:00" +} +``` diff --git a/docs/samples/sample_departements.json.md b/docs/samples/sample_departements.json.md new file mode 100644 index 00000000..b48831ff --- /dev/null +++ b/docs/samples/sample_departements.json.md @@ -0,0 +1,17 @@ +### departements + +`/api/departements` + + +```json +[ + { + "id": 1, + "acronym": "BIO", + "description": "migré de ScoDoc7", + "visible": true, + "date_creation": "2021-11-04T15:38:09.397095+01:00" + }, + ... +] +``` diff --git a/docs/samples/sample_formation.json.md b/docs/samples/sample_formation.json.md new file mode 100644 index 00000000..c679453e --- /dev/null +++ b/docs/samples/sample_formation.json.md @@ -0,0 +1,20 @@ +### formations + +/api/formations + +```json +{ + "id": 1, + "acronyme": "BUT R&T", + "titre_officiel": "Bachelor technologique réseaux et télécommunications", + "formation_code": "V1RET", + "code_specialite": null, + "dept_id": 1, + "titre": "BUT R&T", + "version": 1, + "type_parcours": 700, + "referentiel_competence_id": null, + "formation_id": 1 +} + +``` diff --git a/mkdocs.yml b/mkdocs.yml index 2ac6ed6f..f48f8587 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -71,3 +71,8 @@ markdown_extensions: - name: mermaid class: mermaid format: !!python/name:pymdownx.superfences.fence_code_format + +plugins: + - search + - inline-svg + \ No newline at end of file