Development #35771
planitec : champs personnalisés sur réservation
0%
Description
La dernière version de l'API Planitec permet d'ajouter/modifier des champs personnalisés sur une réservation.
A implémenter ici sur endpoint de création de réservation et mise à jour de réservation.
Fichiers
Révisions associées
Historique
Mis à jour par Emmanuel Cazenave il y a plus de 4 ans
- Fichier 0001-planitec-handle-extensions-on-reservtion-35771.patch 0001-planitec-handle-extensions-on-reservtion-35771.patch ajouté
- Tracker changé de Support à Development
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Je ne gère que le type 'string' parce que c'est le cas d'usage.
Et pour ne pas à avoir à écrire des dictionnaires python coté wcs dans les appels webservice, je propose un format aplati :
'extension_0_name': 'foo' 'extension_0_value': 'foovalue' 'extension_1_name': 'bar' 'extension_1_value': 'barvalue'
Mis à jour par Thomas Noël il y a plus de 4 ans
Je trouve la partie avec le split un peu compliquée, j'aurais fait :
if field_name.startswith('extension_'): try: extension_id, extension_property = field_name[10:].split('_', 1) except ValueError: raise APIError("Wrong extension format for : '%s'" % field_name) extensions[extension_id][extension_property] = field_value
et en dessous dans la vérification de la présence de name et value, un truc explicite au lieu du double for:
if 'name' not in extension or 'value' not in extension: raise APIError("Missing '%s' in extension" % key)
Voilà... mais tu peux pousser ton code... ou le refaire le train de retour. À ton aise.
(Aussi, les tests ne couvrent pas les cas non passants)
Mis à jour par Thomas Noël il y a plus de 4 ans
- Statut changé de Solution proposée à Solution validée
(je valide donc quand même, hein)
Mis à jour par Emmanuel Cazenave il y a plus de 4 ans
Yes beaucoup mieux avec ta simplification, tests étendus également, le tout dans la branche (j'attends une confirmation du métier dans #35664 pour pousser ça).
Mis à jour par Emmanuel Cazenave il y a plus de 4 ans
- Statut changé de Solution validée à Résolu (à déployer)
Ça ne marche pas (ça ne fait rien) mais je pousse quand même pour permettre une éventuelle séance de debug avec l'éditeur, je ne comprends pas le problème.
commit 8db639426feb1d497fca0e427851eb7e3a734299 Author: Emmanuel Cazenave <ecazenave@entrouvert.com> Date: Mon Sep 9 15:06:15 2019 +0200 planitec: handle extensions on reservation (#35771)
Mis à jour par Frédéric Péters il y a plus de 4 ans
- Statut changé de Résolu (à déployer) à Solution déployée
planitec: handle extensions on reservation (#35771)