l10n-switzerland-flectra/l10n_ch/report/swissqr_report.xml
2021-07-21 13:01:38 +02:00

164 lines
8.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<flectra>
<data>
<record id="l10n_ch_qr_report" model="ir.actions.report">
<field name="name">QR-bill</field>
<field name="model">account.move</field>
<field name="report_type">qweb-pdf</field>
<field name="report_name">l10n_ch.qr_report_main</field>
<field name="report_file">l10n_ch.qr_report_main</field>
<field name="print_report_name">'QR-bill-%s' % object.name</field>
<field name="paperformat_id" ref="l10n_ch.paperformat_euro_no_margin"/>
<field name="attachment">'QR-bill-' + object.name + '.pdf'</field>
</record>
<template id="assets_common_qr" inherit_id="web.report_assets_common">
<xpath expr="." position="inside">
<link type="text/scss" rel="stylesheet" href="/l10n_ch/static/src/scss/report_swissqr.scss"/>
</xpath>
</template>
<template id="l10n_ch_swissqr_template">
<t t-set="o" t-value="o.with_context(lang=lang)"/>
<t t-call="web.external_layout">
<!-- add class to body tag -->
<script>document.body.className += " l10n_ch_qr";</script>
<!-- add default margin for header (matching A4 European margin) -->
<t t-set="report_header_style">padding-top:6.2mm; padding-left:8.2mm; padding-right:8.2mm;</t>
<t t-set="formated_amount" t-value="'{:,.2f}'.format(o.amount_residual).replace(',','\xa0')"/>
<div class="swissqr_title">
<h1>QR-bill for invoice <t t-esc="o.name"/></h1>
</div>
<div class="swissqr_content">
<div class="swissqr_receipt">
<div id="receipt_title_zone" class="main_title swissqr_column_left">
<span>Receipt</span>
</div>
<div id="receipt_indication_zone" class="swissqr_column_left receipt_indication_zone">
<div class="swissqr_text">
<span class="title">Account / Payable to</span><br/>
<span class="content" t-field="o.partner_bank_id.acc_number"/><br/>
<span class="content" t-field="o.company_id.name"/><br/>
<span class="content" t-field="o.company_id.street"/><br/>
<span class="content" t-field="o.company_id.country_id.code"/>
<span class="content" t-field="o.company_id.zip"/>
<span class="content" t-field="o.company_id.city"/><br/>
</div>
<t t-if="o.partner_bank_id._is_qr_iban()">
<div class="swissqr_text">
<span class="title">Reference</span><br/>
<span class="content" t-esc="o.space_qrr_reference(o.payment_reference)"/><br/>
</div>
</t>
<div class="swissqr_text">
<span class="title">Payable by</span><br/>
<span class="content" t-field="o.partner_id.commercial_partner_id.name"/><br/>
<span class="content" t-field="o.partner_id.street"> </span>
<span class="content" t-field="o.partner_id.street2"/><br/>
<span class="content" t-field="o.partner_id.country_id.code"/>
<span class="content" t-field="o.partner_id.zip"/>
<span class="content" t-field="o.partner_id.city"/><br/>
</div>
</div>
<div id="receipt_amount_zone" class="swissqr_column_left receipt_amount_zone">
<div class="swissqr_text">
<div class="column">
<span class="title">Currency</span><br/>
<span class="content" t-field="o.currency_id.name"/>
</div>
<div class="column">
<span class="title">Amount</span><br/>
<span class="content" t-esc="formated_amount"/>
</div>
</div>
</div>
<div id="receipt_acceptance_point_zone" class="receipt_acceptance_point_zone">
<div class="swissqr_text content">
<span class="title">Acceptance point</span>
</div>
</div>
</div>
<div class="swissqr_body">
<div class="main_title swissqr_column_left">
<span>Payment Part</span>
</div>
<img class="swissqr" t-att-src="qr_code_urls[o.id]"/>
<div id="indications_zone" class="swissqr_column_right indication_zone">
<div class="swissqr_text">
<span class="title">Account / Payable to</span><br/>
<span class="content" t-field="o.partner_bank_id.acc_number"/><br/>
<span class="content" t-field="o.company_id.name"/><br/>
<span class="content" t-field="o.company_id.street"/><br/>
<span class="content" t-field="o.company_id.country_id.code"/>
<span class="content" t-field="o.company_id.zip"/>
<span class="content" t-field="o.company_id.city"/><br/>
</div>
<t t-if="o.partner_bank_id._is_qr_iban()">
<div class="swissqr_text">
<span class="title">Reference</span><br/>
<span class="content" t-esc="o.space_qrr_reference(o.payment_reference)"/><br/>
</div>
</t>
<t t-set="additional_info" t-value="(o.ref or o.name if o.partner_bank_id._is_qr_iban() else o.payment_reference or o.ref or o.name)"/>
<t t-if="additional_info">
<div class="swissqr_text">
<span class="title">Additional information</span><br/>
<span class="content" t-esc="additional_info"/>
</div>
</t>
<div class="swissqr_text">
<span class="title">Payable by</span><br/>
<span class="content" t-field="o.partner_id.commercial_partner_id.name"/><br/>
<span class="content" t-field="o.partner_id.street"> </span>
<span class="content" t-field="o.partner_id.street2"/><br/>
<span class="content" t-field="o.partner_id.country_id.code"/>
<span class="content" t-field="o.partner_id.zip"/>
<span class="content" t-field="o.partner_id.city"/><br/>
</div>
</div>
<div id="amount_zone" class="swissqr_column_left amount_zone">
<div class="swissqr_text">
<div class="column">
<span class="title">Currency</span><br/>
<span class="content" t-field="o.currency_id.name"/>
</div>
<div class="column">
<span class="title">Amount</span><br/>
<span class="content" t-esc="formated_amount"/>
</div>
</div>
</div>
</div>
</div>
</t>
</template>
<template id="l10n_ch.qr_report_main">
<t t-call="web.html_container">
<t t-foreach="docs" t-as="o">
<t t-set="lang" t-value="o.partner_id.lang"/>
<t t-call="l10n_ch.l10n_ch_swissqr_template" t-lang="lang"/>
</t>
</t>
</template>
</data>
</flectra>