Development #14023
Attacher un BasketItem local aux transactions (sur des factures, remote_items)
0%
Description
Pour l'historique des transactions, il ne faut pas dépendre d'un connecteur où le détail des factures peut changer au fil du temps (notamment à cause de cet attribut "amount" qui représente le montant restant à payer, mais aussi parce qu'après un temps les factures peuvent être archivées dans le logiciel métier et ne plus être disponibles).
Au moment du paiement, quand ça fait :
if transaction.remote_items: for item_id in transaction.remote_items.split(','): regie.pay_invoice(item_id, transaction.order_id, transaction.end_date)
Il faudrait récupérer les factures, en créer des "Item" locaux, et attacher ceux-ci à l'objet transaction.
Fichiers
Demandes liées
Révisions associées
Historique
Mis à jour par Frédéric Péters il y a plus de 7 ans
- Lié à Development #14040: export CSV de la liste des transactions ajouté
Mis à jour par Frédéric Péters il y a plus de 7 ans
- Sujet changé de Attacher un Item local aux transactions à Attacher un BasketItem local aux transactions (sur des factures, remote_items)
Mis à jour par Jean-Baptiste Jaillet il y a plus de 7 ans
J'ai fait les modifs et donc les tests : et le tests pète car un BasketItem ne peut pas avoir de user à Null, mais on autorise les paiements non authentifiés...
Est ce qu'on créer un user bidon anonyme ou il faut faire autrement?
Mis à jour par Jean-Baptiste Jaillet il y a plus de 7 ans
- Lié à Bug #14223: Permettre un utilisateur None dans un BasketItem ajouté
Mis à jour par Thomas Noël il y a plus de 7 ans
Jean-Baptiste Jaillet a écrit :
J'ai fait les modifs et donc les tests : et le tests pète car un BasketItem ne peut pas avoir de user à Null, mais on autorise les paiements non authentifiés...
Est ce qu'on créer un user bidon anonyme ou il faut faire autrement?
Faire proprement : il faut ajouter un null=True dans BasketItem.user, puisque cela va être le cas, et gérer cela là où c'est nécessaire (a priori nulle part).
(Pour se protéger un peu, on pourrait ajouter une contrainte lors du save, et imposer que user est None seulement si le basketitem est payé)
Mis à jour par Jean-Baptiste Jaillet il y a plus de 7 ans
- Fichier 0001-lingo-attached-BasketItem-to-transaction-14023.patch 0001-lingo-attached-BasketItem-to-transaction-14023.patch ajouté
- Patch proposed changé de Non à Oui
Voilà. Avec le patch
Mis à jour par Jean-Baptiste Jaillet il y a plus de 7 ans
- Statut changé de Nouveau à En cours
- Assigné à mis à Jean-Baptiste Jaillet
Mis à jour par Jean-Baptiste Jaillet il y a plus de 7 ans
- Fichier 0001-lingo-attached-BasketItem-to-transaction-14023.patch 0001-lingo-attached-BasketItem-to-transaction-14023.patch ajouté
Mise à jour du patch comme discuté avec Thomas, faire récupérer les items avant de payer (puisqu'ils peuvent potentiellement disparaître une fois payés sur le système distant).
Mis à jour par Thomas Noël il y a plus de 7 ans
manque le source_url à positionner vers l'URL sur la régie (ça sert pas vraiment, mais bon, comme ça on l'a)
Mis à jour par Jean-Baptiste Jaillet il y a plus de 7 ans
- Fichier 0001-lingo-attached-BasketItem-to-transaction-14023.patch 0001-lingo-attached-BasketItem-to-transaction-14023.patch ajouté
Il y avait un petit oubli sur le source_url : je l'ai reconstruit pour qu'il soit identique à la variable url dans regie.get_invoice()
Mis à jour par Jean-Baptiste Jaillet il y a plus de 7 ans
- Statut changé de En cours à Résolu (à déployer)
Mis à jour par Frédéric Péters il y a plus de 7 ans
Il y avait un petit oubli sur le source_url : je l'ai reconstruit pour qu'il soit identique à la variable url dans regie.get_invoice()
Mauvaise idée, parce que là ça fait un lien vers le json passerelle présenté à l'usager. #14323
Mis à jour par Frédéric Péters il y a plus de 5 ans
- Statut changé de Résolu (à déployer) à Solution déployée
lingo: attached BasketItem to transaction (#14023)