X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/d5a5399ebf7c51aae90dd4df2a803faaa08807d9..8b3e9a48c7cab6a4274d55bab64ab8f8e196009e:/src/paypal/models.py?ds=inline diff --git a/src/paypal/models.py b/src/paypal/models.py index 3baf99eba..69d2f006a 100644 --- a/src/paypal/models.py +++ b/src/paypal/models.py @@ -1,5 +1,5 @@ -# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later. -# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. +# This file is part of Wolne Lektury, licensed under GNU Affero GPLv3 or later. +# Copyright © Fundacja Wolne Lektury. See NOTICE for more information. # # from django.contrib.auth import get_user_model from django.contrib.auth.models import User @@ -25,3 +25,21 @@ class BillingAgreement(models.Model): def get_donations(self, year): from .rest import get_donations return get_donations(self.agreement_id, year) + + def update_donations(self, year): + from .rest import get_donations + for donation in get_donations(self.agreement_id, year): + Donation.objects.get_or_create( + transaction_id=donation['transaction_id'], + defaults={ + 'timestamp': donation['timestamp'], + 'amount': donation['amount'], + } + ) + + +class Donation(models.Model): + billing_agreement = models.ForeignKey(BillingAgreement, models.CASCADE) + transaction_id = models.CharField(max_length=255, db_index=True) + timestamp = models.DateTimeField() + amount = models.DecimalField(decimal_places=2, max_digits=10)