mirror of
https://github.com/bringout/oca-ocb-accounting.git
synced 2026-04-23 06:22:05 +02:00
103 lines
5.6 KiB
XML
103 lines
5.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<template id="report_payment_receipt_document">
|
|
<t t-call="web.external_layout">
|
|
<t t-set="o" t-value="o.with_context(lang=lang)"/>
|
|
<div class="page">
|
|
<h3><strong>Payment Receipt: <span t-field="o.name"/></strong></h3>
|
|
<div class="mb-4 mt-3">
|
|
<div class="row">
|
|
<div class="col-6" t-if="o.date">
|
|
Payment Date: <span t-field="o.date"/>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-6" t-if="o.partner_type">
|
|
<t t-if="o.partner_type == 'customer'">
|
|
Customer:
|
|
</t>
|
|
<t t-if="o.partner_type == 'supplier'">
|
|
Vendor:
|
|
</t><span t-field="o.partner_id"/>
|
|
</div>
|
|
<div class="col-6" t-if="o.payment_method_id">
|
|
Payment Method: <span t-field="o.payment_method_id.name"/>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-6" t-if="o.amount">
|
|
Payment Amount: <span t-field="o.amount" t-options="{'widget': 'monetary', 'display_currency': o.currency_id}"/>
|
|
</div>
|
|
<div class="col-6" t-if="o.ref">
|
|
Memo: <span t-field="o.ref"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<t t-set="invoices" t-value="o.reconciled_invoice_ids or o.reconciled_bill_ids"/>
|
|
<!-- Check if invoices include different currencies -->
|
|
<t t-foreach="invoices" t-as="inv">
|
|
<t t-if="any(inv.currency_id != par[2].currency_id for par in inv._get_reconciled_invoices_partials()[0])" t-set="otherCurrency" t-value="True"/>
|
|
</t>
|
|
|
|
<table class="table table-sm">
|
|
<thead>
|
|
<tr>
|
|
<th><span>Invoice Date</span></th>
|
|
<th><span>Invoice Number</span></th>
|
|
<th><span>Reference</span></th>
|
|
<!-- Add a column if there are different currencies -->
|
|
<th t-if="otherCurrency" class="text-end"><span>Amount In Currency</span></th>
|
|
<th class="text-end"><span>Amount</span></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<t t-foreach="invoices" t-as="inv">
|
|
<!-- MOVE -->
|
|
<t t-if="inv.move_type != 'entry'">
|
|
<tr>
|
|
<td><span t-field="inv.invoice_date"/></td>
|
|
<td><span t-field="inv.name"/></td>
|
|
<td><span t-field="inv.ref"/></td>
|
|
<td t-if="otherCurrency"/>
|
|
<td class="text-end"><span t-field="inv.amount_total"/></td>
|
|
</tr>
|
|
<!-- PAYMENTS/REVERSALS -->
|
|
<tr t-foreach="inv._get_reconciled_invoices_partials()[0]" t-as="par">
|
|
<t t-set="payment" t-value="par[2]"/>
|
|
<td><span t-field="payment.move_id.date"/></td>
|
|
<td><span t-field="payment.move_id.name"/></td>
|
|
<td><span t-field="payment.move_id.ref"/></td>
|
|
<t t-set="amountPayment" t-value="-par[0].amount"/>
|
|
<t t-set="amountInvoice" t-value="-par[1]"/>
|
|
<t t-set="currencyPayment" t-value="payment.currency_id"/>
|
|
<t t-set="currencyInvoice" t-value="inv.currency_id"/>
|
|
<!-- Fill the column "Amount In Currency" only if necessary -->
|
|
<td t-if="otherCurrency" class="text-end"><span t-if="currencyPayment != currencyInvoice" t-esc="amountPayment" t-options="{'widget': 'monetary', 'display_currency': currencyPayment}"/></td>
|
|
<td class="text-end"><span t-esc="amountInvoice" t-options="{'widget': 'monetary', 'display_currency': currencyInvoice}"/></td>
|
|
</tr>
|
|
<!-- BALANCE -->
|
|
<tr>
|
|
<td/>
|
|
<td><strong>Due Amount for <span t-field="inv.name"/></strong></td>
|
|
<td/>
|
|
<td t-if="otherCurrency"/>
|
|
<td class="text-end"><strong><span t-field="inv.amount_residual"/></strong></td>
|
|
</tr>
|
|
</t>
|
|
</t>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</t>
|
|
</template>
|
|
|
|
<template id="report_payment_receipt">
|
|
<t t-call="web.html_container">
|
|
<t t-foreach="docs" t-as="o">
|
|
<t t-set="lang" t-value="o.partner_id.lang or o.company_id.partner_id.lang"/>
|
|
<t t-call="account.report_payment_receipt_document" t-lang="lang"/>
|
|
</t>
|
|
</t>
|
|
</template>
|
|
</odoo>
|