Development #54383
Caluire Axel: endpoint set_activity_agenda_typical_week
0%
Description
Lors de l'inscription à une activité, besoin de passer une "semaine type"
(à définir)
Fichiers
Révisions associées
Historique
Mis à jour par Lauréline Guérin il y a presque 3 ans
- Fichier 0001-caluire-axel-set_activity_agenda_typical_week-endpoi.patch 0001-caluire-axel-set_activity_agenda_typical_week-endpoi.patch ajouté
- Sujet changé de Caluire Axel: endpoint set_agenda_annual à Caluire Axel: endpoint set_activity_agenda_typical_week
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Nicolas Roche il y a presque 3 ans
Sur ce test j'aurais mis les asserts dans la boucle.
def test_set_activity_agenda_typical_week_endpoint_extrascolaire
Donc on écrabouille tout,
'MATIN': 'X'
pas de get_bookings
pour voir les temps d'accueils passés, pour lesquels les services ont fait des pointages et sur lesquels les parents ne peuvent plus rien faire.
Même pas peur d'écraser les F / S / T = gris = jours sur lesquels aucune action n'est permise ?
Si je comprend bien, ce endpoint sera utilisé par les parents en tout début d'ouverture d'une activité, avant que les agents ne repassent sur les agendas pour poser des F / S / T ?
Et donc la démarche wcs qui autorise ça devra être adaptée/contrôlée/ouverte puis fermée soit en début d'année, soit à chaque fois qu'on ouvre une nouvelle activité ?
Perso j'essayerai de n'autoriser la réservation pour un jour que si get_bookings
me renvoie 'MATIN' à '.' pour ce jour,
histoire d'avoir quand même un garde fou.
Ok même pas peur, mais ça devient compliqué à suivre, alors je déroule pour être sûr d'avoir bien compris.
- Au début je ne suis pas inscrit à VERNEMAT.
$ curl 'https://passerelle.dev.publik.love/caluire-axel/test/child_activities_info?NameID=local&idpersonne=50632&schooling_date=2021-07-11' | json_pp | grep IDENTACTIVITE ya pas VERNEMAT
- Et donc je n'ai pas de créneau sur cette activité.
$ curl 'https://passerelle.dev.publik.love/caluire-axel/test/get_agenda?NameID=local&idpersonne=50632&activity_id=VERNEMAT&start_date=2021-06-21&end_date=2021-06-22' | json_pp "err_desc" : "Activity not found"
- Je décide de m'y inscrire.
$ curl 'https://passerelle.dev.publik.love/caluire-axel/test/register_activity?NameID=local' -d '{"child_id": "50632", "activity_id": "VERNEMAT", "registration_start_date": "2021-06-21", "registration_end_date": "2021-06-22"}' | json_pp "created" : true,
- A présent j'y suis inscrit.
$ curl 'https://passerelle.dev.publik.love/caluire-axel/test/child_activities_info?NameID=local&idpersonne=50632&schooling_date=2021-07-11' | json_pp | grep IDENTACTIVITE à présent il y a VERNEMAT
- Et j'ai des créneaux réservables.
$ curl 'https://passerelle.dev.publik.love/caluire-axel/test/get_agenda?NameID=local&idpersonne=50632&activity_id=VERNEMAT&start_date=2021-06-21&end_date=2021-06-22' | json_pp il y a des créneaux avec "MATIN" : ".",
- Je décide de réserver tous les lundis
$ curl 'https://passerelle.dev.publik.love/caluire-axel/test/set_activity_agenda_typical_week?NameID=local' -d '{"child_id": "50632", "activity_id": "VERNEMAT", "booking_list": ["monday"], "start_date": "2021-06-21", "end_date": "2021-06-22"}' ça pose un X sur le 21
- Et en fait je décide de réserver tous les mardis
$ curl 'https://passerelle.dev.publik.love/caluire-axel/test/set_activity_agenda_typical_week?NameID=local' -d '{"child_id": "50632", "activity_id": "VERNEMAT", "booking_list": ["tuesday"], "start_date": "2021-06-21", "end_date": "2021-06-22"}' ça pose un X sur le 22
Mais là je me retrouve avec lundi et mardi de réservé.
Il ne faudrait pas faire comme dans set_agenda où l'on repasse 'MATIN' à D (sauf qu'ici se serait '.') ?.
Mis à jour par Lauréline Guérin il y a presque 3 ans
Yep tu as raison, merci. Je reprends tout ça :)
Mis à jour par Lauréline Guérin il y a presque 3 ans
Mis à jour par Nicolas Roche il y a presque 3 ans
- Statut changé de Solution proposée à Solution validée
Ok, si le parent réserve les lundis puis change d'avis et swith pour les mardis,
alors les lundis passent de '.' à 'X' puis à 'D'.
On aurais peut-être préféré qu'il revienne à '.', mais non c'est vraiment appréciable d'avoir le code factorisé ici, et donc d'avoir le même comportement que sur les réservations.
A prendre ou à laisser :
- test_set_activity_agenda_typical_week_endpoint_prefill_extrascolaire
J'aurais mis les asserts dans la boucle.
J'aurais pas mis preffil dans le nom du test.
- test_set_activity_agenda_typical_week_endpoint_disabled
Je n'aurais pas paramétré disabled à None dans le test parce que c'est fait nulle part dans le code.
Mis à jour par Lauréline Guérin il y a presque 3 ans
On aurais peut-être préféré qu'il revienne à '.', mais non c'est vraiment appréciable d'avoir le code factorisé ici, et donc d'avoir le même comportement que sur les réservations.
C'est surtout que techniquement, il y a eu réservation, puis annulation. Donc autant le noter.
J'aurais mis les asserts dans la boucle.
C'est juste
J'aurais pas mis preffil dans le nom du test.
ok corrigé (copier/coller)
Je n'aurais pas paramétré disabled à None dans le test parce que c'est fait nulle part dans le code.
Si c'est None, alors le jour n'est pas renvoyé par get_agenda: on teste le cas où il y a un trou dans l'agenda (ça peut arriver)
Mis à jour par Lauréline Guérin il y a presque 3 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 74dff67f2f8de362c2b735d3c0a4c054933718be Author: Lauréline Guérin <zebuline@entrouvert.com> Date: Fri Jun 18 09:43:54 2021 +0200 caluire-axel: set_activity_agenda_typical_week endpoint (#54383)
Mis à jour par Frédéric Péters il y a presque 3 ans
- Statut changé de Résolu (à déployer) à Solution déployée
caluire-axel: set_activity_agenda_typical_week endpoint (#54383)