X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/3b6b5d7d78c28fb9ffdadcdadb727e4274feb6c2..ea7671fcbd5bd829b16771670263aebaf29c69c1:/src/club/management/commands/send_receipts.py diff --git a/src/club/management/commands/send_receipts.py b/src/club/management/commands/send_receipts.py index bbe120973..acf8bc417 100644 --- a/src/club/management/commands/send_receipts.py +++ b/src/club/management/commands/send_receipts.py @@ -7,6 +7,7 @@ from django.core.management.base import BaseCommand, CommandError from django.utils.timezone import now from club.models import PayUOrder from funding.models import Funding +from paypal.models import BillingAgreement class Command(BaseCommand): @@ -17,6 +18,9 @@ class Command(BaseCommand): parser.add_argument( '--emails', help='Send only to these emails.') + parser.add_argument( + '--resend', action='store_true', + help='This is a re-send.') def handle(self, *args, **options): year = options['year'] @@ -27,9 +31,15 @@ class Command(BaseCommand): 'schedule__email', flat=True ).distinct() ) + emails.update( + BillingAgreement.objects.all().order_by( + 'schedule__email').values_list( + 'schedule__email', flat=True + ).distinct() + ) emails.update( Funding.objects.exclude(email='').filter( - payed_at__year=year + completed_at__year=year ).order_by('email').values_list( 'email', flat=True ).distinct() @@ -40,4 +50,7 @@ class Command(BaseCommand): for email in emails: print(email) - PayUOrder.send_receipt(email, year) + try: + PayUOrder.send_receipt(email, year, resend=options['resend']) + except: + print('ERROR')