X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/df6d939e24b62fb0424a0793e6ded1317a5b4915..8b3e9a48c7cab6a4274d55bab64ab8f8e196009e:/src/paypal/models.py diff --git a/src/paypal/models.py b/src/paypal/models.py index 6d45bcdb5..69d2f006a 100644 --- a/src/paypal/models.py +++ b/src/paypal/models.py @@ -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)