From 01f7a7034703027dcb94cf524ee3b3a94356feac Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Wed, 3 Feb 2021 17:29:15 +0100 Subject: [PATCH] ADd some extensibility features to MultiSheetListExporter --- src/pretix/base/exporter.py | 8 +++++++- src/pretix/plugins/reports/exporters.py | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/pretix/base/exporter.py b/src/pretix/base/exporter.py index 8e73a4e117..91da572d9c 100644 --- a/src/pretix/base/exporter.py +++ b/src/pretix/base/exporter.py @@ -242,7 +242,10 @@ class MultiSheetListExporter(ListExporter): pass def iterate_sheet(self, form_data, sheet): - raise NotImplementedError() # noqa + if hasattr(self, 'iterate_' + sheet): + yield from getattr(self, 'iterate_' + sheet)(form_data) + else: + raise NotImplementedError() # noqa def _render_sheet_csv(self, form_data, sheet, output_file=None, **kwargs): total = 0 @@ -288,6 +291,9 @@ class MultiSheetListExporter(ListExporter): n_sheets = len(self.sheets) for i_sheet, (s, l) in enumerate(self.sheets): ws = wb.create_sheet(str(l)) + if hasattr(self, 'prepare_xlsx_sheet_' + s): + getattr(self, 'prepare_xlsx_sheet_' + s)(ws) + total = 0 counter = 0 for i, line in enumerate(self.iterate_sheet(form_data, sheet=s)): diff --git a/src/pretix/plugins/reports/exporters.py b/src/pretix/plugins/reports/exporters.py index bf793d5b37..4812003762 100644 --- a/src/pretix/plugins/reports/exporters.py +++ b/src/pretix/plugins/reports/exporters.py @@ -581,7 +581,7 @@ class OrderTaxListReport(MultiSheetListExporter): if date_until: if isinstance(date_until, str): - date_from = parse(date_until).date() + date_until = parse(date_until).date() if isinstance(date_until, date): date_until = make_aware(datetime.combine( date_until + timedelta(days=1),