Merge branch 'master' of https://gitlab.com/lilcity/backend into hotfix/LIL-683

remotes/origin/hotfix/LIL-691
gzbender 7 years ago
commit 4bc5ac962a
  1. 15
      apps/notification/management/commands/send_certificates.py

@ -1,3 +1,5 @@
from datetime import datetime
from django.core.management.base import BaseCommand
from email.mime.image import MIMEImage
from django.contrib.staticfiles.storage import staticfiles_storage
@ -22,6 +24,11 @@ class Command(BaseCommand):
dest='email',
help='Test email',
)
parser.add_argument(
'--date',
dest='date',
help='Date in format 22-03-2018',
)
parser.add_argument(
'--dry-run',
action='store_true',
@ -44,11 +51,13 @@ class Command(BaseCommand):
file.close()
return
date = datetime.strptime(options['date'], '%d-%m-%Y') if options.get('date') else now().date()
today = now().date()
users = SchoolPayment.objects.filter(date_end=today, add_days=False).values_list('user_id', flat=True)
users = set(list(SchoolPayment.objects.filter(date_end=date, add_days=False).values_list('user_id', flat=True)))
user_notifications_qs = UserNotification.objects.filter(user_id__in=users)
user_notifications = {un.user.id: un for un in user_notifications_qs}
notified_users = user_notifications_qs.filter(certificate_last_email__date=today).values_list('user_id', flat=True)
user_notifications = {un.user_id: un for un in user_notifications_qs}
notified_users = user_notifications_qs.filter(certificate_last_email__date=today).values_list(
'user_id', flat=True).distinct()
for user_id in users:
if user_id in notified_users:
continue

Loading…
Cancel
Save