From 9fd99cdee6316884bd9fddd389c2200262be46bb Mon Sep 17 00:00:00 2001 From: Fredrik Jonsson <frjo@xdeb.org> Date: Wed, 18 Sep 2019 10:01:45 +0200 Subject: [PATCH] Added export submission command. --- .../commands/export_submissions_csv.py | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 opentech/apply/funds/management/commands/export_submissions_csv.py diff --git a/opentech/apply/funds/management/commands/export_submissions_csv.py b/opentech/apply/funds/management/commands/export_submissions_csv.py new file mode 100644 index 000000000..83c667f79 --- /dev/null +++ b/opentech/apply/funds/management/commands/export_submissions_csv.py @@ -0,0 +1,26 @@ +import csv + +from django.core.management.base import BaseCommand + +from opentech.apply.funds.models import ApplicationSubmission + + +class Command(BaseCommand): + help = "Export submission stats to a csv file." + + def handle(self, *args, **options): + with open('export_submissions.csv', 'w', newline='') as csvfile: + writer = csv.writer(csvfile, quoting=csv.QUOTE_ALL) + writer.writerow(['Submission title', 'Submission author', 'Submission e-mail', 'Submission value', 'Submission duration', 'Submission stage', 'Submission phase', 'Submission screening', 'Submission date', 'Round/Lab/Fellowship']) + for submission in ApplicationSubmission.objects.all(): + if submission.round: + submission_type = submission.round + else: + submission_type = submission.page + + try: + value = submission.value + except KeyError: + value = 0 + + writer.writerow([submission.title, submission.full_name, submission.email, value, submission.duration, submission.stage, submission.phase, submission.screening_status, submission.submit_time.strftime('%Y-%m-%d'), submission_type]) -- GitLab