Assiduité : ajout doc manquante + mise à jour samples
This commit is contained in:
parent
56fa613fcc
commit
7ef0f108b4
@ -1715,10 +1715,15 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
| *user_name* | str ou null | login de l'utilisateur ayant créé l'assiduité |
|
||||
| *est_just* | boolean | l'assiduité est-elle justifiée |
|
||||
| *entry_date* | string | la date d'entrée de l'assiduité |
|
||||
| *external_data* | objet ou null | un objet décrivant des actions non utilisée par ScoDoc |
|
||||
|
||||
> Rappel du format de date ISO : yyyy-mm-jjTHH:MM:SS
|
||||
> Rappel du format de date ISO : yyyy-mm-ddTHH:MM:SS
|
||||
> Vous pouvez aussi spécifier le temps UTC en ajoutant '+HH:MM' à la fin
|
||||
|
||||
!!! warning
|
||||
Le champs `external_data` est utilisé par ScoDoc pour déterminer les assiduités utilisant n'utilisant pas de module particulier (Tout module / Autre module dans ScoDoc). Il aura alors la forme suivante : `{"module": "Autre"}`
|
||||
|
||||
|
||||
#### **assiduite**
|
||||
|
||||
* **Méthode:** GET
|
||||
@ -1728,6 +1733,20 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
* **Exemple d'utilisation:** `/api/assiduite/1`
|
||||
* **Résultat:** Retourne un objet assiduité ou une erreur si l'id n'est pas connu
|
||||
* **Exemple de résultat:** [assiduite.json](samples/sample_assiduite.json.md)
|
||||
*
|
||||
#### **assiduite-justificatifs[-long]**
|
||||
|
||||
* **Méthode:** GET
|
||||
* **Permission: `ScoView`**
|
||||
* **Paramètres:** `assiduite_id`
|
||||
* **Routes:**
|
||||
* `/assiduite/<int:assiduite_id>/justificatifs`
|
||||
* `/assiduite/<int:assiduite_id>/justificatifs/long`
|
||||
* **Exemple d'utilisation:**
|
||||
* `/api/assiduite/123/justificatifs`
|
||||
* `/api/assiduite/123/justificatifs/long`
|
||||
* **Résultat:** Retourne une liste de justificatifs. des objets en utilisant la route `long` sinon les justif_id
|
||||
* **Exemple de résultat:** [assiduite-justificatifs.json](samples/sample_assiduite_justificatifs.json.md)
|
||||
|
||||
#### **assiduites[-query]**
|
||||
|
||||
@ -1745,6 +1764,9 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
* `formsemestre_id` (X : id du formsemestre)
|
||||
* `est_just` (v,t,f,vrai,faux,true,false)
|
||||
* `user_id` (X : id de l'utilisateur)
|
||||
* `order` (retour ordoné par date de début décroisante)
|
||||
* `courant` (retour restreint à l'année courante)
|
||||
* `with_justifs` (ajoute un champs "justificatifs" aux assiduités)
|
||||
* **Routes:**
|
||||
* `/assiduites/<int:etudid>`
|
||||
* `/assiduites/<int:etudid>/query?`
|
||||
@ -1778,6 +1800,8 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
* `est_just` (v,t,f,vrai,faux,true,false)
|
||||
* `user_id` (X : id de l'utilisateur)
|
||||
* `metric` ('compte', 'demi', 'journee', 'heure')
|
||||
* `courant` (retour restreint à l'année courante)
|
||||
* `split` (compte pour chaque état séparément)
|
||||
* **Routes:**
|
||||
* `/assiduites/<int:etudid>/count`
|
||||
* `/assiduites/<int:etudid>/count/query?`
|
||||
@ -1807,6 +1831,9 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
* `date_fin` (X : date format ISO)
|
||||
* `est_just` (v,t,f,vrai,faux,true,false)
|
||||
* `user_id` (X : id de l'utilisateur)
|
||||
* `order` (retour ordoné par date de début décroisante)
|
||||
* `courant` (retour restreint à l'année courante)
|
||||
* `with_justifs` (ajoute un champs "justificatifs" aux assiduités)
|
||||
* **Routes:**
|
||||
* `/assiduites/formsemestre/<int:formsemestre_id>`
|
||||
* `/assiduites/formsemestre/<int:formsemestre_id>/query?`
|
||||
@ -1829,6 +1856,9 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
* `date_fin` (X : date format ISO)
|
||||
* `est_just` (v,t,f,vrai,faux,true,false)
|
||||
* `user_id` (X : id de l'utilisateur)
|
||||
* `metric` ('all', 'compte', 'heure', 'journee', 'demi')
|
||||
* `courant` (retour restreint à l'année courante)
|
||||
* `split` (compte pour chaque état séparément)
|
||||
* **Routes:**
|
||||
* `/assiduites/formsemestre/<int:formsemestre_id>/count`
|
||||
* `/assiduites/formsemestre/<int:formsemestre_id>/count/query?`
|
||||
@ -1851,6 +1881,9 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
* `date_fin` (X : date format ISO)
|
||||
* `est_just` (v,t,f,vrai,faux,true,false)
|
||||
* `user_id` (X : id de l'utilisateur)
|
||||
* `order` (retour ordoné par date de début décroisante)
|
||||
* `courant` (retour restreint à l'année courante)
|
||||
* `with_justifs` (ajoute un champs "justificatifs" aux assiduités)
|
||||
* **Routes:**
|
||||
* `/assiduites/group/query?etudids=`
|
||||
* **Exemple d'utilisation:**
|
||||
@ -1876,9 +1909,6 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
[
|
||||
{
|
||||
"etudid":<int>,
|
||||
|
||||
"date_debut": <string>,
|
||||
"date_fin": <string>,
|
||||
"etat": <string>,
|
||||
"moduleimpl_id"?: <int>,
|
||||
"desc"?:<string>,
|
||||
@ -1909,8 +1939,6 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
```json
|
||||
[
|
||||
{
|
||||
"date_debut": <string>,
|
||||
"date_fin": <string>,
|
||||
"etat": <string>,
|
||||
"moduleimpl_id"?: <int>,
|
||||
"desc"?:<string>
|
||||
@ -1951,9 +1979,7 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
|
||||
> `{"etat": "absent"}`
|
||||
|
||||
* **Résultat:** Modifie l'assiduité désignée. Renvoie une erreur si la
|
||||
modification rend incompatible la plage de l'assiduité par rapport aux autres
|
||||
assiduités du même étudiant.
|
||||
* **Résultat:** Modifie l'assiduité désignée.
|
||||
* **Exemple de résultat:** [assiduite_edit.json](samples/sample_assiduite_edit.json.md)
|
||||
|
||||
#### **assiduites-edit**
|
||||
@ -2041,6 +2067,11 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
* `etat` ( attente, valide, non_valide, modifie)
|
||||
* `date_debut` (X : date format ISO)
|
||||
* `date_fin` (X : date format ISO)
|
||||
* `user_id` (X : l'id de l'utilisateur ayant créé l'objet)
|
||||
* `formsemestre_id` (X: l'id d'un formsemestre. restreint aux date du semestre)
|
||||
* `order` (retoure les justificatifs par ordre décroissant de date_debut)
|
||||
* `courant` (restreint aux justificatifs de l'année courante)
|
||||
* `group_id` (X : id du groupe, restreint aux justificatifs d'un group d'étudiant)
|
||||
* **Routes:**
|
||||
* `/justificatifs/<int:etudid>`
|
||||
* `/justificatifs/<int:etudid>/query`
|
||||
@ -2057,6 +2088,58 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
* **Résultat:** Liste de toutes les objets justificatifs qui correspondent aux critères sélectionnés
|
||||
* **Exemple de résultat:** [justificatifs.json](samples/sample_justificatifs.json.md)
|
||||
|
||||
|
||||
#### **justificatifs-dept[-query]**
|
||||
|
||||
* **Méthode:** GET
|
||||
* **Permission: `ScoView`**
|
||||
* **Paramètres:**
|
||||
* `dept_id`
|
||||
* **Query string:**
|
||||
* `etat` ( attente, valide, non_valide, modifie)
|
||||
* `date_debut` (X : date format ISO)
|
||||
* `date_fin` (X : date format ISO)
|
||||
* `user_id` (X : l'id de l'utilisateur ayant créé l'objet)
|
||||
* `formsemestre_id` (X: l'id d'un formsemestre. restreint aux date du semestre)
|
||||
* `order` (retoure les justificatifs par ordre décroissant de date_debut)
|
||||
* `courant` (restreint aux justificatifs de l'année courante)
|
||||
* `group_id` (X : id du groupe, restreint aux justificatifs d'un group d'étudiant)
|
||||
* **Routes:**
|
||||
* `/justificatifs/dept/<int:dept_id>`
|
||||
* `/justificatifs/dept/<int:dept_id>/query`
|
||||
* **Exemple d'utilisation:**
|
||||
* `/api/justificatifs/dept/3`
|
||||
* `/api/justificatifs/dept/3/query?etat=valide&courant`
|
||||
* **Résultat:** Liste de toutes les objets justificatifs du département donné qui correspondent aux critères sélectionnés
|
||||
* **Exemple de résultat:** [justificatifs-dept.json](samples/sample_justificatifs_dept.json.md)
|
||||
|
||||
|
||||
#### **justificatifs-formsemestre[-query]**
|
||||
|
||||
* **Méthode:** GET
|
||||
* **Permission: `ScoView`**
|
||||
* **Paramètres:**
|
||||
* `formsemestre_id`
|
||||
* **Query string:**
|
||||
* `etat` ( attente, valide, non_valide, modifie)
|
||||
* `date_debut` (X : date format ISO)
|
||||
* `date_fin` (X : date format ISO)
|
||||
* `user_id` (X : l'id de l'utilisateur ayant créé l'objet)
|
||||
* `formsemestre_id` (X: l'id d'un formsemestre. restreint aux date du semestre)
|
||||
* `order` (retoure les justificatifs par ordre décroissant de date_debut)
|
||||
* `courant` (restreint aux justificatifs de l'année courante)
|
||||
* `group_id` (X : id du groupe, restreint aux justificatifs d'un group d'étudiant)
|
||||
* **Routes:**
|
||||
* `/justificatifs/formsemestre/<int:formsemestre_id>`
|
||||
* `/justificatifs/formsemestre/<int:formsemestre_id>/query`
|
||||
* **Exemple d'utilisation:**
|
||||
* `/api/justificatifs/formsemestre/3`
|
||||
* `/api/justificatifs/formsemestre/3/query?etat=valide&courant`
|
||||
* **Résultat:** Liste de toutes les objets justificatifs du formsemestre donné qui correspondent aux critères sélectionnés
|
||||
* **Exemple de résultat:** [justificatifs-formsemestre.json](samples/sample_justificatifs_formsemestre.json.md)
|
||||
|
||||
|
||||
|
||||
#### **justificatif-create**
|
||||
|
||||
* **Méthode:** POST
|
||||
@ -2168,7 +2251,7 @@ Cette API est disponible à partir de ScoDoc 9.6 et remplace les absences.
|
||||
#### **justificatif-export**
|
||||
|
||||
* **Méthode:** POST
|
||||
* **Permission: `AbsChange`**
|
||||
* **Permission: `ScoView`**
|
||||
* **Paramètres:**
|
||||
* `justif_id`
|
||||
* `filename`
|
||||
|
@ -1,18 +1,22 @@
|
||||
### assiduite
|
||||
|
||||
#### GET /assiduite/1
|
||||
|
||||
```json
|
||||
{
|
||||
"assiduite_id": 1,
|
||||
"date_debut": "2022-09-25T08:00:00+0200",
|
||||
"date_fin": "2022-09-25T08:00:00+0200",
|
||||
"desc": null,
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 1,
|
||||
"moduleimpl_id": 8,
|
||||
"user_id": null
|
||||
"assiduite_id": 1,
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 12,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -1,21 +1,38 @@
|
||||
### assiduite_create
|
||||
|
||||
#### POST /assiduite/1/create
|
||||
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
> `[{"date_debut": "2022-10-27T08:00","date_fin": "2022-10-27T10:00","etat": "absent"}]`
|
||||
>
|
||||
> `[{"date_debut": "2023-10-27T08:00","date_fin": "2023-10-27T10:00","etat": "absent"}]`
|
||||
|
||||
```json
|
||||
{
|
||||
"errors": [],
|
||||
"success": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": {
|
||||
"assiduite_id": 60
|
||||
}
|
||||
}
|
||||
]
|
||||
"errors": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": "Duplication: la p\u00e9riode rentre en conflit avec une plage enregistr\u00e9e"
|
||||
}
|
||||
],
|
||||
"success": []
|
||||
}
|
||||
```
|
||||
|
||||
#### POST /assiduite/1/create
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
> `[{"date_debut": "2023-10-27T08:00","date_fin": "2023-10-27T10:00","etat": "absent"}]`
|
||||
|
||||
```json
|
||||
{
|
||||
"errors": [],
|
||||
"success": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": {
|
||||
"assiduite_id": 49
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -1,28 +1,28 @@
|
||||
### assiduite_delete
|
||||
|
||||
#### POST /assiduite/delete
|
||||
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
>
|
||||
> `[2,2,3]`
|
||||
|
||||
```json
|
||||
{
|
||||
"errors": [
|
||||
{
|
||||
"indice": 1,
|
||||
"message": "Assiduite non existante"
|
||||
}
|
||||
],
|
||||
"success": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": "OK"
|
||||
},
|
||||
{
|
||||
"indice": 2,
|
||||
"message": "OK"
|
||||
}
|
||||
]
|
||||
"errors": [
|
||||
{
|
||||
"indice": 1,
|
||||
"message": "Assiduite non existante"
|
||||
}
|
||||
],
|
||||
"success": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": "OK"
|
||||
},
|
||||
{
|
||||
"indice": 2,
|
||||
"message": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -1,37 +1,35 @@
|
||||
### assiduite_edit
|
||||
|
||||
#### POST /assiduite/1/edit
|
||||
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
> `{"moduleimpl_id":2}`
|
||||
|
||||
```json
|
||||
{
|
||||
"OK": true
|
||||
}
|
||||
```
|
||||
|
||||
#### POST /assiduite/1/edit
|
||||
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
>
|
||||
> `{"etat": "retard","moduleimpl_id":3}`
|
||||
|
||||
```json
|
||||
{
|
||||
"OK": true
|
||||
"OK": true
|
||||
}
|
||||
```
|
||||
|
||||
#### POST /assiduite/1/edit
|
||||
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
>
|
||||
> `{"moduleimpl_id":2}`
|
||||
|
||||
```json
|
||||
{
|
||||
"OK": true
|
||||
}
|
||||
```
|
||||
|
||||
#### POST /assiduite/1/edit
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
> `{"etat":"absent"}`
|
||||
|
||||
```json
|
||||
{
|
||||
"OK": true
|
||||
"OK": true
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -1,71 +1,79 @@
|
||||
### assiduites
|
||||
|
||||
#### GET /assiduites/1
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"assiduite_id": 1,
|
||||
"date_debut": "2022-09-25T08:00:00+0200",
|
||||
"date_fin": "2022-09-25T08:00:00+0200",
|
||||
"desc": null,
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 1,
|
||||
"moduleimpl_id": 8,
|
||||
"user_id": null
|
||||
},
|
||||
{
|
||||
"assiduite_id": 2,
|
||||
"date_debut": "2022-09-26T08:00:00+0200",
|
||||
"date_fin": "2022-09-26T09:00:00+0200",
|
||||
"desc": null,
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 1,
|
||||
"moduleimpl_id": 13,
|
||||
"user_id": null
|
||||
},
|
||||
"..."
|
||||
{
|
||||
"assiduite_id": 1,
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 12,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
#### GET /assiduites/1/query?etat=retard
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"assiduite_id": 2,
|
||||
"date_debut": "2022-09-26T08:00:00+0200",
|
||||
"date_fin": "2022-09-26T09:00:00+0200",
|
||||
"desc": null,
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 1,
|
||||
"moduleimpl_id": 13,
|
||||
"user_id": null
|
||||
},
|
||||
{
|
||||
"assiduite_id": 3,
|
||||
"date_debut": "2022-09-27T08:00:00+0200",
|
||||
"date_fin": "2022-09-27T10:00:00+0200",
|
||||
"desc": null,
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 1,
|
||||
"moduleimpl_id": 14,
|
||||
"user_id": null
|
||||
},
|
||||
"..."
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
#### GET /assiduites/1/query?moduleimpl_id=1
|
||||
|
||||
```json
|
||||
["..."]
|
||||
[
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
#### GET /assiduites/1/query?with_justifs=
|
||||
```json
|
||||
[
|
||||
{
|
||||
"assiduite_id": 1,
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"justificatifs": [
|
||||
{
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"etat": "MODIFIE",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"fichier": null,
|
||||
"justif_id": 1,
|
||||
"raison": null,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
}
|
||||
],
|
||||
"moduleimpl_id": 12,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
|
@ -1,32 +1,84 @@
|
||||
### assiduites_count
|
||||
|
||||
#### GET /assiduites/1/count
|
||||
|
||||
```json
|
||||
{
|
||||
"compte": 4,
|
||||
"demi": 3,
|
||||
"heure": 6.0,
|
||||
"journee": 4
|
||||
"compte": 1,
|
||||
"demi": 0,
|
||||
"heure": 0.0,
|
||||
"journee": 1
|
||||
}
|
||||
```
|
||||
|
||||
#### GET /assiduites/1/count/query?etat=present,retard&metric=compte,heure
|
||||
|
||||
```json
|
||||
{
|
||||
"compte": 4,
|
||||
"heure": 6.0
|
||||
"compte": 1,
|
||||
"heure": 0.0
|
||||
}
|
||||
```
|
||||
|
||||
#### GET /assiduites/1/count/query?etat=retard
|
||||
|
||||
```json
|
||||
{
|
||||
"compte": 3,
|
||||
"demi": 3,
|
||||
"heure": 6.0,
|
||||
"journee": 3
|
||||
"compte": 0,
|
||||
"demi": 0,
|
||||
"heure": 0,
|
||||
"journee": 0
|
||||
}
|
||||
```
|
||||
|
||||
#### GET /assiduites/1/count/query?split
|
||||
```json
|
||||
{
|
||||
"absent": {
|
||||
"compte": 0,
|
||||
"demi": 0,
|
||||
"heure": 0,
|
||||
"journee": 0,
|
||||
"justifie": {
|
||||
"compte": 0,
|
||||
"demi": 0,
|
||||
"heure": 0,
|
||||
"journee": 0
|
||||
},
|
||||
"non_justifie": {
|
||||
"compte": 0,
|
||||
"demi": 0,
|
||||
"heure": 0,
|
||||
"journee": 0
|
||||
}
|
||||
},
|
||||
"present": {
|
||||
"compte": 1,
|
||||
"demi": 0,
|
||||
"heure": 0.0,
|
||||
"journee": 1
|
||||
},
|
||||
"retard": {
|
||||
"compte": 0,
|
||||
"demi": 0,
|
||||
"heure": 0,
|
||||
"journee": 0,
|
||||
"justifie": {
|
||||
"compte": 0,
|
||||
"demi": 0,
|
||||
"heure": 0,
|
||||
"journee": 0
|
||||
},
|
||||
"non_justifie": {
|
||||
"compte": 0,
|
||||
"demi": 0,
|
||||
"heure": 0,
|
||||
"journee": 0
|
||||
}
|
||||
},
|
||||
"total": {
|
||||
"compte": 1,
|
||||
"demi": 0,
|
||||
"heure": 0.0,
|
||||
"journee": 1
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
38
docs/samples/sample_assiduites_create.json.md
Normal file
38
docs/samples/sample_assiduites_create.json.md
Normal file
@ -0,0 +1,38 @@
|
||||
### assiduites_create
|
||||
|
||||
#### POST /assiduites/create
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
> `[{"etudid":-1,"date_debut": "2023-10-26T08:00","date_fin": "2023-10-26T10:00","etat": "absent"}]`
|
||||
|
||||
```json
|
||||
{
|
||||
"errors": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": "Cet \u00e9tudiant n'existe pas."
|
||||
}
|
||||
],
|
||||
"success": []
|
||||
}
|
||||
```
|
||||
|
||||
#### POST /assiduites/create
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
> `[{"etudid":1,"date_debut": "2023-10-26T08:00","date_fin": "2023-10-26T10:00","etat": "absent"}]`
|
||||
|
||||
```json
|
||||
{
|
||||
"errors": [],
|
||||
"success": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": {
|
||||
"assiduite_id": 50
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
@ -1,73 +1,119 @@
|
||||
### assiduites_formsemestre
|
||||
|
||||
#### GET /assiduites/formsemestre/1
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"assiduite_id": 1,
|
||||
"date_debut": "2022-09-25T08:00:00+0200",
|
||||
"date_fin": "2022-09-25T08:00:00+0200",
|
||||
"desc": null,
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 1,
|
||||
"moduleimpl_id": 8,
|
||||
"user_id": null
|
||||
},
|
||||
{
|
||||
"assiduite_id": 2,
|
||||
"date_debut": "2022-09-26T08:00:00+0200",
|
||||
"date_fin": "2022-09-26T09:00:00+0200",
|
||||
"desc": null,
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 1,
|
||||
"moduleimpl_id": 13,
|
||||
"user_id": null
|
||||
},
|
||||
"..."
|
||||
{
|
||||
"assiduite_id": 1,
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 12,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
{
|
||||
"assiduite_id": 2,
|
||||
"code_nip": "NIP2",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 2,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 4,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
#### GET /assiduites/formsemestre/1/query?etat=retard
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"assiduite_id": 2,
|
||||
"date_debut": "2022-09-26T08:00:00+0200",
|
||||
"date_fin": "2022-09-26T09:00:00+0200",
|
||||
"desc": null,
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 1,
|
||||
"moduleimpl_id": 13,
|
||||
"user_id": null
|
||||
},
|
||||
"..."
|
||||
{
|
||||
"assiduite_id": 2,
|
||||
"code_nip": "NIP2",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 2,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 4,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
{
|
||||
"assiduite_id": 7,
|
||||
"code_nip": "NIP4",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 4,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 6,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
#### GET /assiduites/formsemestre/1/query?moduleimpl_id=1
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"assiduite_id": 3,
|
||||
"date_debut": "2022-09-27T08:00:00+0200",
|
||||
"date_fin": "2022-09-27T08:00:00+0200",
|
||||
"desc": null,
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 1,
|
||||
"moduleimpl_id": 1,
|
||||
"user_id": null
|
||||
},
|
||||
"..."
|
||||
{
|
||||
"assiduite_id": 27,
|
||||
"code_nip": "NIP10",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 10,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 1,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
{
|
||||
"assiduite_id": 43,
|
||||
"code_nip": "NIP14",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 14,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 1,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
|
@ -1,32 +1,30 @@
|
||||
### assiduites_formsemestre_count
|
||||
|
||||
#### GET /assiduites/formsemestre/1/count
|
||||
|
||||
```json
|
||||
{
|
||||
"compte": 0,
|
||||
"demi": 0,
|
||||
"heure": 0.0,
|
||||
"journee": 0
|
||||
"compte": 48,
|
||||
"demi": 14,
|
||||
"heure": 65.0,
|
||||
"journee": 18
|
||||
}
|
||||
```
|
||||
|
||||
#### GET /assiduites/formsemestre/1/count/query?etat=present,retard&metric=compte,heure
|
||||
|
||||
```json
|
||||
{
|
||||
"compte": 0,
|
||||
"heure": 0.0
|
||||
"compte": 29,
|
||||
"heure": 35.0
|
||||
}
|
||||
```
|
||||
|
||||
#### GET /assiduites/formsemestre/1/count/query?etat=retard
|
||||
|
||||
```json
|
||||
{
|
||||
"compte": 0,
|
||||
"demi": 0,
|
||||
"heure": 0.0,
|
||||
"journee": 0
|
||||
"compte": 14,
|
||||
"demi": 8,
|
||||
"heure": 19.0,
|
||||
"journee": 11
|
||||
}
|
||||
```
|
||||
|
||||
|
62
docs/samples/sample_assiduites_group.json.md
Normal file
62
docs/samples/sample_assiduites_group.json.md
Normal file
@ -0,0 +1,62 @@
|
||||
### assiduites_group
|
||||
|
||||
#### GET /assiduites/group/query?etudids=1,2,3
|
||||
```json
|
||||
{
|
||||
"1": [
|
||||
{
|
||||
"assiduite_id": 1,
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 12,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
}
|
||||
],
|
||||
"2": [
|
||||
{
|
||||
"assiduite_id": 2,
|
||||
"code_nip": "NIP2",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "RETARD",
|
||||
"etudid": 2,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 4,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
}
|
||||
],
|
||||
"3": [
|
||||
{
|
||||
"assiduite_id": 3,
|
||||
"code_nip": "3",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"desc": null,
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"est_just": false,
|
||||
"etat": "PRESENT",
|
||||
"etudid": 3,
|
||||
"external_data": null,
|
||||
"moduleimpl_id": 18,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
32
docs/samples/sample_assiduites_justificatifs.json.md
Normal file
32
docs/samples/sample_assiduites_justificatifs.json.md
Normal file
@ -0,0 +1,32 @@
|
||||
### assiduites_justificatifs
|
||||
|
||||
#### GET /assiduite/1/justificatifs
|
||||
```json
|
||||
[
|
||||
1,
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
#### GET /assiduite/1/justificatifs/long
|
||||
```json
|
||||
[
|
||||
{
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"etat": "MODIFIE",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"fichier": null,
|
||||
"justif_id": 1,
|
||||
"raison": null,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
@ -3,15 +3,19 @@
|
||||
#### GET /justificatif/1
|
||||
```json
|
||||
{
|
||||
"date_debut": "2022-09-25T08:00:00+0200",
|
||||
"date_fin": "2022-09-25T16:00:00+0200",
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"etat": "VALIDE",
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"etat": "MODIFIE",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"fichier": null,
|
||||
"justif_id": 1,
|
||||
"raison": "raison",
|
||||
"user_id": null
|
||||
"raison": null,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -1,22 +1,22 @@
|
||||
### justificatif_create
|
||||
|
||||
#### POST /justificatif/1/create
|
||||
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
> `[{"date_debut": "2022-10-27T08:00","date_fin": "2022-10-27T10:00","etat": "attente"}]`
|
||||
>
|
||||
> `[{"date_debut": "2023-10-27T08:00","date_fin": "2023-10-27T10:00","etat": "attente"}]`
|
||||
|
||||
```json
|
||||
{
|
||||
"errors": [],
|
||||
"success": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": {
|
||||
"couverture": [],
|
||||
"justif_id": 12
|
||||
}
|
||||
}
|
||||
]
|
||||
"errors": [],
|
||||
"success": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": {
|
||||
"couverture": [],
|
||||
"justif_id": 25
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -1,28 +1,28 @@
|
||||
### justificatif_delete
|
||||
|
||||
#### POST /justificatif/delete
|
||||
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
>
|
||||
> `[2,2,3]`
|
||||
|
||||
```json
|
||||
{
|
||||
"errors": [
|
||||
{
|
||||
"indice": 1,
|
||||
"message": "Justificatif non existant"
|
||||
}
|
||||
],
|
||||
"success": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": "OK"
|
||||
},
|
||||
{
|
||||
"indice": 2,
|
||||
"message": "OK"
|
||||
}
|
||||
]
|
||||
"errors": [
|
||||
{
|
||||
"indice": 1,
|
||||
"message": "Justificatif non existant"
|
||||
}
|
||||
],
|
||||
"success": [
|
||||
{
|
||||
"indice": 0,
|
||||
"message": "OK"
|
||||
},
|
||||
{
|
||||
"indice": 2,
|
||||
"message": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -1,31 +1,36 @@
|
||||
### justificatif_edit
|
||||
|
||||
#### POST /justificatif/1/edit
|
||||
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
>
|
||||
> `{"etat":"valide"}`
|
||||
|
||||
```json
|
||||
{
|
||||
"couverture": {
|
||||
"apr\u00e8s": [26],
|
||||
"avant": [1, 26, 38]
|
||||
}
|
||||
"couverture": {
|
||||
"apres": [
|
||||
1
|
||||
],
|
||||
"avant": []
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### POST /justificatif/1/edit
|
||||
|
||||
> `Content-Type: application/json`
|
||||
>
|
||||
>
|
||||
> `{"raison":"MEDIC"}`
|
||||
|
||||
```json
|
||||
{
|
||||
"couverture": {
|
||||
"apr\u00e8s": [26],
|
||||
"avant": [1, 26, 38]
|
||||
}
|
||||
"couverture": {
|
||||
"apres": [
|
||||
1
|
||||
],
|
||||
"avant": [
|
||||
1
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -1,26 +1,113 @@
|
||||
### justificatifs
|
||||
|
||||
#### GET /justificatifs/1
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"date_debut": "2022-09-25T08:00:00+0200",
|
||||
"date_fin": "2022-09-25T16:00:00+0200",
|
||||
"entry_date": "2023-07-28T11:13:45+0200",
|
||||
"etat": "VALIDE",
|
||||
"etudid": 1,
|
||||
"fichier": null,
|
||||
"justif_id": 1,
|
||||
"raison": "raison",
|
||||
"user_id": null
|
||||
},
|
||||
"..."
|
||||
{
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"etat": "MODIFIE",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"fichier": null,
|
||||
"justif_id": 1,
|
||||
"raison": null,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
#### GET /justificatifs/1/query?etat=attente
|
||||
|
||||
```json
|
||||
["..."]
|
||||
[
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
#### GET /justificatifs/dept/1
|
||||
```json
|
||||
[
|
||||
{
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"etat": "MODIFIE",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"fichier": null,
|
||||
"formsemestre": {
|
||||
"id": 1,
|
||||
"title": "TAPI-BUT-FI-S1-2021"
|
||||
},
|
||||
"justif_id": 1,
|
||||
"raison": null,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
{
|
||||
"code_nip": "NIP2",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"etat": "NON_VALIDE",
|
||||
"etudid": 2,
|
||||
"external_data": null,
|
||||
"fichier": null,
|
||||
"formsemestre": {
|
||||
"id": 1,
|
||||
"title": "TAPI-BUT-FI-S1-2021"
|
||||
},
|
||||
"justif_id": 2,
|
||||
"raison": null,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
#### GET /justificatifs/formsemestre/1
|
||||
```json
|
||||
[
|
||||
{
|
||||
"code_nip": "1",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"etat": "MODIFIE",
|
||||
"etudid": 1,
|
||||
"external_data": null,
|
||||
"fichier": null,
|
||||
"justif_id": 1,
|
||||
"raison": null,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
{
|
||||
"code_nip": "NIP2",
|
||||
"date_debut": "2022-08-20T12:00:00.000000+02:00",
|
||||
"date_fin": "2022-08-20T12:00:00.000000+02:00",
|
||||
"entry_date": "2022-08-20T12:00:00.000000+02:00",
|
||||
"etat": "NON_VALIDE",
|
||||
"etudid": 2,
|
||||
"external_data": null,
|
||||
"fichier": null,
|
||||
"justif_id": 2,
|
||||
"raison": null,
|
||||
"user_id": null,
|
||||
"user_name": null,
|
||||
"user_nom_complet": null
|
||||
},
|
||||
"..."
|
||||
]
|
||||
```
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user