X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/1249091e84840ca27aa6047db36c8e899328f15c..0b270a76ad73162f894285c360a0ee87fa84e536:/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 d29c37274..402cd08dd 100644 --- a/src/club/management/commands/send_receipts.py +++ b/src/club/management/commands/send_receipts.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 datetime import timedelta import traceback @@ -8,6 +8,7 @@ from django.utils.timezone import now from club.models import PayUOrder from funding.models import Funding from paypal.models import BillingAgreement +from pz.models import Payment class Command(BaseCommand): @@ -18,6 +19,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'] @@ -36,11 +40,20 @@ class Command(BaseCommand): ) emails.update( Funding.objects.exclude(email='').filter( - payed_at__year=year + completed_at__year=year ).order_by('email').values_list( 'email', flat=True ).distinct() ) + emails.update( + Payment.objects.exclude(debit__email='').filter( + realised=True, + is_dd=True, + booking_date__year=year, + ).order_by('debit__email').values_list( + 'debit__email', flat=True + ).distinct() + ) if options['emails']: emails = options['emails'].split(',') @@ -48,6 +61,7 @@ class Command(BaseCommand): for email in emails: print(email) try: - PayUOrder.send_receipt(email, year) + PayUOrder.send_receipt(email, year, resend=options['resend']) except: print('ERROR') + raise