Skip to content

Instantly share code, notes, and snippets.

@arseniy-panfilov
Created July 18, 2016 12:51
Show Gist options
  • Save arseniy-panfilov/e56096c6e617f59e0417d9b09d2ab9bf to your computer and use it in GitHub Desktop.
Save arseniy-panfilov/e56096c6e617f59e0417d9b09d2ab9bf to your computer and use it in GitHub Desktop.
wkhtmltopdf example
{% load staticfiles %}
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
@font-face {
font-family: 'robotoregular';
src: url(data:application/font-woff;charset=utf-8;base64,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);
font-weight: normal;
font-style: normal;
}
.invoice-table {
font-family: 'robotoregular', 'Times New Roman', sans-serif;
border-collapse: collapse;
width: 100%;
border: 1px solid white;
page-break-after: always;
}
tr.invoice-row > td:first-child {
padding-left: 25px;
}
.invoice-table > tbody > tr > td {
border: 3px solid black;
padding: 5px;
}
.invoice-table > tbody > tr > td:first-child {
vertical-align: bottom;
width: 30%;
}
.heading {
width: 100%;
text-align: center;
font-weight: bold;
text-transform: uppercase;
}
.font-size-14 {
font-size: 14px;
}
.font-size-13 {
font-size: 13px;
}
span.period {
display: block;
float: right;
margin-right: 20%;
}
table.payment-details {
border-collapse: collapse;
margin-top: 10px;
width: 100%;
border-width: 0px;
}
table.payment-details thead td {
text-align: center;
}
table.payment-details td {
border: 0.3mm solid black;
vertical-align: top;
padding: 2px;
height: 20px;
}
table.payment-details tbody td {
text-align: right;
}
table.payment-details tbody td:first-child {
text-align: left;
}
span.sign-date {
margin-left: 150px;
}
span.years-space {
display: inline-block;
width: 20px;
}
</style>
</head>
<body style="margin:0; border: 0;">
{% for tariff in tariffs %}
<table class="invoice-table" width="100%">
<tbody>
{% for type in "ik" %}
<tr class="invoice-row">
<td style="border-{% if type == 'i' %}top{% else %}bottom{% endif %}-width: 0px; border-left-width: 0px;">
Кассир
</td>
<td style="border-{% if type == 'i' %}top{% else %}bottom{% endif %}-width: 0px; border-right-width: 0px;">
<div class="heading">
{% if type == 'i' %}
Извещение
{% else %}
Квитанция
{% endif %}
</div>
<p class="font-size-14">
получатель платежа: МУП "Объединение Истринские электросети" ИНН 5017034511
р.с.40702810501700141205 в Истринском филиале Банка "Возрождение" (ПАО) г.Истра МО
БИК 044525181 к.с.30101810900000000181
</p>
<p>лицевой счёт:&nbsp;{{ account_number }}</p>
<p>адрес:&nbsp;{{ address }}</p>
<p>ФИО:&nbsp;{{ fullname }}<span class="period">период:</span></p>
<table class="payment-details font-size-13">
<col width="18%">
<col width="15%">
<col width="15%">
<col width="12%">
<col width="10%">
<col width="10%">
<col width="18%">
<thead>
<tr>
<td rowspan="2">
Наим. тарифа
</td>
<td colspan="2">
Показания счетчика
</td>
<td rowspan="2">
Расход,<br/> кВт-час
</td>
<td rowspan="2">
Тариф,<br/> руб
</td>
<td rowspan="2">
Пеня,<br/> руб
</td>
<td rowspan="2">
Сумма к оплате, <br/>руб
</td>
</tr>
<tr>
<td>
предыдущее
</td>
<td>
текущее
</td>
</tr>
</thead>
<tbody>
<tr>
<td>{{ tariff.title }}</td>
<td>{{ tariff.previous }}</td>
<td>{{ tariff.current }}</td>
<td>{{ tariff.consumption }}</td>
<td>{{ tariff.rate }}</td>
<td>{{ tariff.fine }}</td>
<td>{{ tariff.total }}</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr style="border-bottom:0.3mm solid black">
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr style="border-top:0.3mm solid black">
{% for i in '12345' %}
<td style="border:0; border-top:0.3mm solid black;">&nbsp;</td>
{% endfor %}
<td style="border:0; border-right: 0.3mm solid black;">всего</td>
<td class="total-cell">{{ tariff.total }}</td>
</tr>
</tbody>
</table>
<div class="sign font-size-14">
Подпись абонента:
<span class="sign-date">
"___"_____________&nbsp;20<span class="years-space">&nbsp;</span>г.
</span>
</div>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endfor %}
</body>
</html>
from wkhtmltopdf.views import PDFTemplateView
class InvoiceView(PDFTemplateView):
template_name = 'dashboard/invoice/template.html'
def render_to_response(self, context, **response_kwargs):
user = self.request.user
customer = user.customer
context['account_number'] = user.username
context['address'] = customer.address(annotated=True)
context['fullname'] = customer.name
# .. и так далее
return super(InvoiceView, self).render_to_response(context, **response_kwargs)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment