Développement #54746
Permettre de modifier son inscription à un évènement récurrent
0%
Description
#54332 permet la réservation d'une semaine type, c'est à dire l'inscription à un évènement récurrent à l'année.
Sauf que tout de suite après vient le besoin de modifier cette réservation, actuellement c'est impossible (sauf à aller faire quelques centaines d'appels pour gérer les réservations une à une, bref).
Il faut que, si une réservation lundi/mardi toute l'année a été posée, un nouvel appel à l'api avec le même user_external_id et spécifiant mardi/mercredi supprime les réservations du lundi et réserve le mercredi.
Files
Associated revisions
History
Updated by Valentin Deniaud over 3 years ago
- Has duplicate Développement #55368: api fillslots (réservation multiple), gestion mise à jour de réservations added
Updated by Valentin Deniaud over 3 years ago
- Status changed from Nouveau to Rejeté
Description plus complète dans le nouveau ticket.
Updated by Valentin Deniaud over 3 years ago
- Has duplicate deleted (Développement #55368: api fillslots (réservation multiple), gestion mise à jour de réservations)
Updated by Valentin Deniaud over 3 years ago
- Status changed from Rejeté to Nouveau
Valentin Deniaud a écrit :
Description plus complète dans le nouveau ticket.
Pas le même besoin, #55368#note-5.
Updated by Valentin Deniaud over 3 years ago
- File 0001-api-allow-changing-recurrence-bookings-54746.patch 0001-api-allow-changing-recurrence-bookings-54746.patch added
- Status changed from Nouveau to Solution proposée
- Patch proposed changed from No to Yes
Updated by Valentin Deniaud over 3 years ago
- File 0001-api-allow-changing-recurrence-bookings-54746.patch 0001-api-allow-changing-recurrence-bookings-54746.patch added
Nouvelle version plus mieux.
Updated by Lauréline Guérin over 3 years ago
events_to_unbook = list( agenda.event_set.filter(booking__user_external_id=user_external_id) .exclude(pk__in=events_to_book) .values_list('pk', flat=True) )
S'il existe des events non récurrents sur cet agenda, ça risque de les unbook ?
Updated by Valentin Deniaud over 3 years ago
- File 0001-api-allow-changing-recurrence-bookings-54746.patch 0001-api-allow-changing-recurrence-bookings-54746.patch added
Lauréline Guerin a écrit :
S'il existe des events non récurrents sur cet agenda, ça risque de les unbook ?
Yep, j'ai ajouté un primary_event__isnull=False
et un bout de test associé.
Updated by Lauréline Guérin over 3 years ago
- Status changed from Solution proposée to Solution validée
Updated by Valentin Deniaud over 3 years ago
- File 0001-api-allow-changing-recurrence-bookings-54746.patch 0001-api-allow-changing-recurrence-bookings-54746.patch added
- Status changed from Solution validée to Solution proposée
Je me suis rendu compte d'un vrai problème : si on appelle à nouveau avec les mêmes paramètres, ça ne marche pas parce qu'on se mange
if not events_to_book.exists(): if full_events: raise APIError(_('all events are all full'), err_class='all events are all full') raise APIError(_('no event recurrences to book'), err_class='no event recurrences to book')
Avec le comportement de modification introduit ici je trouve que ces contrôles n'ont plus de sens, je propose de juste les enlever (un workflow pourra toujours checker que booking_count != 0
si jamais c'est important qu'un appel pose toujours des réservations).
En plus il faut permettre d'envoyer le paramètre 'slots' vide pour annuler toutes les résas, mais je vais ouvrir un autre ticket pour ne pas bloquer ici et parce que ça impacte l'autre api de réservation multiple.
Updated by Lauréline Guérin over 3 years ago
- Status changed from Solution proposée to Solution validée
Updated by Valentin Deniaud over 3 years ago
- Status changed from Solution validée to Résolu (à déployer)
commit 96b10d052bc60e78f23cbd30a9eb94236d48c417 Author: Valentin Deniaud <vdeniaud@entrouvert.com> Date: Mon Jul 5 17:29:16 2021 +0200 api: allow changing recurrence bookings (#54746)
Updated by Frédéric Péters over 3 years ago
- Status changed from Résolu (à déployer) to Solution déployée
api: allow changing recurrence bookings (#54746)