From 082afadb5bbe4533ba40b9fe3af50ff8cc74c226 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Mon, 26 Mar 2018 10:21:41 +0200 Subject: [PATCH] Backend UX: Use actual tax rates for invoice preview --- src/pretix/base/services/invoices.py | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/pretix/base/services/invoices.py b/src/pretix/base/services/invoices.py index 981006731..6a34c0af6 100644 --- a/src/pretix/base/services/invoices.py +++ b/src/pretix/base/services/invoices.py @@ -265,11 +265,20 @@ def build_preview_invoice_pdf(event): invoice.save() invoice.lines.all().delete() - InvoiceLine.objects.create( - invoice=invoice, description=_("Sample product A"), - gross_value=119, tax_value=19, - tax_rate=19 - ) + if event.tax_rules.exists(): + for i, tr in enumerate(event.tax_rules.all()): + tax = tr.tax(Decimal('100.00')) + InvoiceLine.objects.create( + invoice=invoice, description=_("Sample product {}").format(i + 1), + gross_value=tax.gross, tax_value=tax.tax, + tax_rate=tax.rate + ) + else: + InvoiceLine.objects.create( + invoice=invoice, description=_("Sample product A"), + gross_value=100, tax_value=0, tax_rate=0 + ) + return event.invoice_renderer.generate(invoice)