Connecteur appelé par le module schedule.
Il s'agit d'une route qui fournira pour un utilisateur donné l'ensemble de ses plannings d'emploi du temps sur une période indiquée.
Paramètres d'appels
URL en méthode POST
<host>/<uri>/<username>?startDate=<jourdebut>&endDate=<jourfin>
- host : adresse du serveur
- uri : chemin éventuel vers le service
- username : Identifiant (login) de l’utilisateur connecté.
Le login de l’utilisateur sera récupéré côté backend de multi, via le TGT fourni par le client.
Ce login sera ensuite transmis au connecteur qui se chargera de définir les droits de l’utilisateur concernant les résultats de la recherche possibles à retourner.
Paramètres :
- jourdebut : jour de début de la période recherchée au format YYYY-MM-JJ
- jourfin : jour de fin de la période recherchée au format YYYY-MM-JJ
Format de retour
Format attendu
{ messages: [ { level: string, text: string } ], plannings: [ { id: string, label: string, default: boolean, type: string, messages: [ { level: string, text: string } ], events: [ { id: string, startDateTime: string, endDateTime: string, course : { id: string, label: string, color: string, type: string, online: boolean, url: string }, rooms: [ { id: string, label: string, type: string } ], teachers: [ { id: string, displayname: string, email: string } ], groups: [ { id: string, label: string } ] } ] } ] }
messages : liste de messages plus ou moins critiques en rapport avec l’emploi du temps demandé
level : niveau de criticité du message
text : contenu du message
plannings : liste des plannings de l’utilisateur (l’utilisateur peut avoir plusieurs planning à afficher. Cas par exemple d’un étudiant qui suit plusieurs formations en parallèle ou bien d’un enseignant qui enseigne à plusieurs endroits)
id : identifiant unique du planning de l’utilisateur
label : nom du planning
default : indique s’il s’agit du planning à afficher par défaut (! l’utilisateur peut posséder plusieurs planning par défaut)
type (nullable) : type de planning
STUDENT = planning personnalisé d’un étudiant
TEACHER = planning personnalisé d’un enseignant
COURSE = planning général d’une formation
messages : liste de messages en rapport avec le planning
level : niveau de criticité du message
text : contenu du message
events : liste des cours attaché au planning
id : identifiant unique de chaque événement attaché au planning
startDateTime : datetime de début de la séance
endDateTime : datetime de fin de séance
course : informations concernant le cours en question
id : identifiant unique du cours
label : nom du cours
color : code couleur HTML associé au cours
type (nullable) : type de cours :
online : indique si le cours est en distanciel ou non (! un cours peut être hybride = à la fois en distanciel et en présentiel)
url (nullable) : url du cours en ligne
rooms : salles où est dispensé le cours (! un cours peut être dispensé dans plusieurs salles différentes en même temps)
id : identifiant unique de la salle
label : nom de la salle
type (nullable) : type de salle
teachers : liste des enseignants assignés au cours (! un cours peut être dispensé par un ou plusieurs enseignants à la fois)
id : identifiant unique de l’enseignant
displayname : nom et prénom de l’enseignant
email (nullable) : email de l’enseignant
groups : liste des groupes propres à la formation concernés par le cours
id : identifiant unique du groupe
label : nom du groupe
Cas d'erreur
- Code HTTP 200 : en cas de résultats ou non (tableau vide)
- Erreur HTTP 4xx ou 5xx : En cas de problème ou erreur
Exemple
{ "messages": [], "plannings": [ { "id": "username-plan1", "label": "Mon planning de M1-Psychologie clinique (Psycho. cognition et interactions) (FC) (NCY)", "default": true, "type": "USER", "messages": [ { "level": "INFO", "text": "Votre emploi du temps personnalisé tient compte de vos inscriptions aux groupes et options. Vous pouvez également consulter le planning général de votre formation qui affiche tous les groupes et toutes les options." } ], "events": [ { "id": 277497, "startDateTime": "2023-11-14T09:00:00+01:00", "endDateTime": "2023-11-14T13:00:00+01:00", "course": { "id": "11-28573", "label": "TD UE706 EC1 Neurone, structure, fonction et neurotransmission", "color": "#ffff00", "type": "TD", "online": false, "url": null }, "rooms": [ { "id": 212275, "label": "CLSH_A415b", "type": "Salle banalisée", "building": "Bâtiment A" } ], "teachers": [ { "id": 5711, "displayname": "DURAND Henri", "email": "henri.dudu@univ.fr" } ], "groups": [ { "id": 58093, "label": "TD UE706 EC1 Neurone, structure, fonction et neurotransmission" }, { "id": 158785, "label": "TD UE706 EC1 Neurone, structure, fonction et neurotransmission" } ] } ] }, { "id": "username-plan2", "label": "Planning général de M1-Psychologie clinique (Psycho. cognition et interactions) (FC) (NCY)", "default": false, "type": "VET", "messages": [], "events": [ { "id": 277497, "startDateTime": "2023-11-14T09:00:00+01:00", "endDateTime": "2023-11-14T13:00:00+01:00", "course": { "id": "11-28573", "label": "TD UE706 EC1 Neurone, structure, fonction et neurotransmission", "color": "#ffff00", "type": "TD", "online": false, "url": null }, "rooms": [ { "id": 212275, "label": "CLSH_A415b", "type": "Salle banalisée", "building": "Bâtiment A" } ], "teachers": [ { "id": 5711, "displayname": "DURAND Henri", "email": "henri.dudu@univ.fr" } ], "groups": [ { "id": 158785, "label": "TD UE706 EC1 Neurone, structure, fonction et neurotransmission" } ] } ] } ] }