From a4278c5b387b8a1c03ad35aaefabfd4e29e102b7 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Fri, 30 Jul 2021 11:00:00 +0200 Subject: [PATCH 1/3] lingo: factorize basket item creation for paid remote invoices --- combo/apps/lingo/models.py | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/combo/apps/lingo/models.py b/combo/apps/lingo/models.py index 9d7eb647..66a671f1 100644 --- a/combo/apps/lingo/models.py +++ b/combo/apps/lingo/models.py @@ -878,20 +878,22 @@ class Transaction(models.Model): ) else: logger.info('notified payment for remote item %s from transaction %s', item_id, self) - subject = _('Invoice #%s') % remote_item.display_id - local_item = BasketItem.objects.create( - user=self.user, - regie=regie, - source_url='', - subject=subject, - amount=remote_item.amount, - payment_date=self.end_date, - ) - self.items.add(local_item) + self.items.add(self.create_paid_invoice_basket_item(remote_item)) self.to_be_paid_remote_items = ','.join(to_be_paid_remote_items) or None self.save(update_fields=['to_be_paid_remote_items']) + def create_paid_invoice_basket_item(self, remote_item): + subject = _('Invoice #%s') % remote_item.display_id + return BasketItem.objects.create( + user=self.user, + regie=remote_item.regie, + source_url='', + subject=subject, + amount=remote_item.amount, + payment_date=self.end_date, + ) + def handle_backend_response(self, response, callback=True): logger.debug('lingo: regie "%s" handling response for transaction "%%s"' % self.regie, self.order_id) if self.status == response.result: -- 2.32.0.rc0