def render_pdf(self):
if self.sponsoring.billingReferenceOptOut:
billRef = str(self.sponsoring.id)
else:
billRef = self.sponsoring.billingReference
context = {
"POSTAL_ADDRESS" : self.sponsoring.getBillingAddress(),
"INVOICE_NUMBER" : self.invoiceNumber,
"INVOICE_REF" : billRef,
"DUE_DATE" : self.dueDate.strftime("%d.%m.%Y"),
"PACKAGE_NAME" : self.sponsoring.package.name,
"PACKAGE_DESCRIPTION" : "\n".join(self.sponsoring.getPacketDescription()),
"VAT" : str(settings.INVOICE_VAT),
"PRICE_NET" : str(self.sponsoring.package.price.quantize(Decimal("0.01"))),
"PRICE_GROSS" : str(self.sponsoring.package.getPriceGross()),
"VAT_TOTAL" : str(self.sponsoring.package.getVATAmount()),
}
temp = odtemplate.ODTTemplate(self.template.template.path)
temp.render(context)
if not os.path.exists(settings.MEDIA_ROOT + "invoice_pdfs"):
os.mkdir(settings.MEDIA_ROOT + "invoice_pdfs")
pdfpath = settings.MEDIA_ROOT + "invoice_pdfs/" + self.getInvoiceFilename()
temp.savePDF(pdfpath)
self.pdf.name = "invoice_pdfs/" + self.getInvoiceFilename()
self.save()
评论列表
文章目录