Description
Chaque personne a une collection avec ses dernières versions de plannings en cours (correspondant à la vue mixte). Chaque ressource est le planning d'une personne pendant 24 heures. Une personne a une ressource de type planning (même s'il est vide) pour toutes les périodes de 24 heures qui commencent à une date pour laquelle la personne a une affectation de structure.
URI | <uri_personne>/plannings_mixte |
---|---|
Catégorie | http://schemas.holydis.com/tsq/2010#planning_mixte |
Disponible en écriture |
Non |
Paramètres spécifiques
Paramètre | Description |
---|---|
datetime-min | Filtre les plannings disponibles après la date spécifiée ou le même jour. |
datetime-max | Filtre les plannings disponibles avant la date spécifiée ou le même jour. |
valide | Filtre les plannings à ceux qui sont validés (true) ou non validés (false). |
valide-datetime-min | Filtre les plannings à ceux qui ont été validés (date disponible dans le champ DateValidation) après la date spécifiée ou le même jour. Ce paramètre n'est pas compatible avec le paramètre valide à true. |
valide-datetime-max | Filtre les plannings à ceux qui ont été validés (date disponible dans le champ DateValidation) avant la date spécifiée ou le même jour. Ce paramètre n'est pas compatible avec le paramètre valide à true. |
orderby | Indique l'ordre dans lequel les plannings doivent apparaître dans la collection : lastmodified (par défaut, triés dans l'ordre chronologique inverse de la date de dernière modification) ou date (dans l'ordre chronologique de leur période). |
La période passée en paramètre prend en compte l'heure de changement de jour. Si une heure de changement de jour différente de celle du calendrier de la personne est passée en paramètre, cela peut avoir un impact sur la période récupérée. Si une datetime-min est renseignée avec une heure inférieure à l'heure de changement de jour de la personne, alors c'est le jour précédent qui sera considéré pour récupérer les plannings. Si une datetime-max est renseignée avec une heure supérieure à l'heure de changement de jour de la personne, alors c'est le jour suivant qui sera considéré pour récupérer les plannings.
Exemple 1 : Pour une personne dont l'identifiant en base est 16000 avec un calendrier ayant une heure de changement de jour à 04:00, la requête suivante récupère les plannings de cette personne du 19/01/2022 au 27/01/2022 :
GET /[URI_de_base]/api/feed/personnes/16000/plannings_mixte?datetime-min=2022-01-20T03:00:00&datetime-max=2022-01-26T06:00:00
Exemple 2 : Pour une personne dont l'identifiant en base est 16000 avec un calendrier ayant une heure de changement de jour à 04:00. La requête suivante :
GET /[URI_de_base]/api/feed/personnes/16000/plannings_mixte?datetime-min=2022-01-20&datetime-max=2022-01-20
récupère les plannings de cette personne du 19/01/2022 uniquement. En effet pour Timesquare le 20/01/2022 à 00:00 correspond au 19/01/2022 car l'heure de changement de jour est à 04:00.
Eléments
Elément | Description |
---|---|
periode | La période de temps couverte par le planning. Cette période de 24h indique l'horodatage de début et de fin. Elle indique également l'heure de changement de jour associée au calendrier auquel la personne est affectée pour la date du planning. Si la personne n'a pas d'affectation de calendrier pour cette date, c'est l'heure de changement de jour du calendrier par défaut de la structure à laquelle la personne est affectée. Toutes les périodes pour lesquelles il existe un planning sont dans le fuseau horaire du calendrier de la personne sur la période. |
jourFixe | Indique si la journée de planning est fixe (true) ou pas (false). |
publie | Indique si la journée planning est publiée (true) ou pas (false). |
valide | Indique si la journée de planning est validée (true) ou pas (false). |
composantsPlanning? | Les composants (le contenu) du planning. Si l'élément n'est pas présent c'est qu'il n'y a pas de composant et qu'aucun ne peut être ajouté. Ça arrive si la personne est hors contrat (elle n'a pas d'affectation de contrat pour la date du début de la période du planning) ou qu'elle a un jour fermé dans son calendrier pour la date. |
dateValidation? | La date de la validation si le planning est validé. |
dureeQuotidienne? | La durée quotidienne du planning. Exemple : PT8H30M pour une durée quotidienne de 5h30. L'élément n'est pas présent si elle n'a pas de valeur et dans ce cas on a une durée hebdomadaire à la place. Cette propriété est calculée, elle va être ignorée par le serveur lors d'une modification. |
dureeBonification | La durée de la bonification pour cette journée du planning. Exemple : PT0H15M en XML pour une durée de bonification de 15 minutes. S'il n'y a pas de bonification, la balise n'apparaît pas. |
dureeHebdo? | La durée hebdomadaire. C'est la durée de la semaine qui contient ce planning au cas où la durée quotidienne n'a pas de valeur. Cette propriété est calculée, elle va être ignorée par le serveur lors d'une modification. |
timeZoneId | L’identifiant de fuseau horaire. Exemple : Europe/Paris. Pour lire les données en fonction du fuseau horaire de Europe/Lisbonne, il faut ajouter en en-tête de la requête le paramètre User-TimeZoneId avec comme valeur l’identifiant du fuseau de Lisbonne, en l’occurrence Europe/Lisbonne. En l’absence du paramètre en en-tête, les données sont renvoyées brutes (dans le fuseau horaire de la ressource). |
typejour | Le type de jour. |
versionPlanning | La version de planning. |
Si la personne est hors structure, le Web Service renvoie une erreur 500.
Exemples de requêtes
Lecture
Lire la dernière version de planning en cours de la personne dont l’identifiant en base est 16000 sur un jour donné (le 23/06/2022)
GET /[URI_de_base]/api/feed/personnes/16000/plannings_mixte/2022-06-23
Lire les plannings mixtes de la personne dont l’identifiant en base est 16004 sur une période donnée (du 13/02/2023 au 19/02/2023)
GET /[URI_de_base]/api/feed/personnes/16004/plannings_mixte?datetime-min=2023-02-13&datetime-max=2023-02-19
Exemple de résultat XML de la requête
Exemple de résultat JSON de la requête
Lire les dernières versions de plannings validés de la personne dont l’identifiant en base est 16000 sur une période donnée (du 20/06/2022 au 26/06/2022)
GET /[URI_de_base]/api/feed/personnes/16000/plannings_mixte?datetime-min=2022-06-20&datetime-max=2022-06-26&valide=true
Lire les dernières versions de plannings non validés de la personne dont l’identifiant en base est 16000 sur une période donnée (du 20/06/2022 au 26/06/2022)
GET /[URI_de_base]/api/feed/personnes/16000/plannings_mixte?datetime-min=2022-06-20&datetime-max=2022-06-26&valide=false
Lire les dernières versions de plannings validés sur une période donnée (du 20/06/2022 au 26/06/2022) pour la personne dont l’identifiant en base est 16000
GET /[URI_de_base]/api/feed/personnes/16000/plannings_mixte?valide-datetime-min=2022-06-20&valide-datetime-max=2022-06-26
Lire les dernières versions de plannings échangés sur une période donnée (du 20/06/2022 au 26/06/2022) pour la personne dont l’identifiant en base est 16000
GET /[URI_de_base]/api/feed/personnes/16000/plannings_mixte?echange-datetime-min=2022-06-20&echange-datetime-max=2022-06-26
Messages d'erreur fonctionnels
- Erreur 400 Date renseignée non valide
- Erreur 400 [DATETIME MIN] n'est pas au format xsd:dateTime
- Erreur 400 [DATETIME MAX] n'est pas au format xsd:dateTime
- Erreur 400 Date renseignée non valide
Commentaires
0 commentaire
Vous devez vous connecter pour laisser un commentaire.