diff options
| author | oco-odoo <oco@odoo.com> | 2020-01-16 18:04:26 +0000 |
|---|---|---|
| committer | oco-odoo <oco@odoo.com> | 2020-01-16 18:04:26 +0000 |
| commit | 8e4158af810bcf475214946fa64d3b0ce4d3b26d (patch) | |
| tree | bee0b38b9179a025c0f23d2ed1b445a647bbf986 /addons/account_payment | |
| parent | 1a7c21328f551ee0ec904606209d642a84071446 (diff) | |
[IMP] account: add 'partial' and 'reversed' payment states to invoices
- 'partial' payment state corresponds to invoices whose payable/receivable move line has been partially reconciled with some other line.
- 'reversed' payment state corresponds to entries that have been cancelled by the creation of a single reverse entry (using the dedicated button on the form view). This state can be set on invoice as well as on regular entries.
=> To stay consistent with the naming conventions, this commit also renames invoice_payment_state field to payment_state, since it's no longer only applicable on invoices.
closes odoo/odoo#41723
Related: odoo/enterprise#7202
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Diffstat (limited to 'addons/account_payment')
| -rw-r--r-- | addons/account_payment/views/account_portal_templates.xml | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/addons/account_payment/views/account_portal_templates.xml b/addons/account_payment/views/account_portal_templates.xml index 0300c85645b..e30c5e61394 100644 --- a/addons/account_payment/views/account_portal_templates.xml +++ b/addons/account_payment/views/account_portal_templates.xml @@ -7,7 +7,7 @@ <td class="text-center"> <t t-set="tx_ids" t-value="invoice.transaction_ids.filtered(lambda tx: tx.state in ('pending', 'authorized', 'done'))"/> <t t-set="pending_manual_txs" t-value="tx_ids.filtered(lambda tx: tx.state == 'pending' and tx.acquirer_id.provider in ('transfer', 'manual'))"/> - <a t-if="invoice.state == 'posted' and invoice.invoice_payment_state == 'not_paid' and invoice.amount_total and invoice.type == 'out_invoice' and (pending_manual_txs or not tx_ids)" + <a t-if="invoice.state == 'posted' and invoice.payment_state in ('not_paid', 'partial') and invoice.amount_total and invoice.type == 'out_invoice' and (pending_manual_txs or not tx_ids)" t-att-href="invoice.get_portal_url(anchor='portal_pay')" title="Pay Now" aria-label="Pay now" class="btn btn-sm btn-primary" role="button"> <i class="fa fa-arrow-circle-right"/><span class='d-none d-md-inline'> Pay Now</span> </a> @@ -16,7 +16,7 @@ <xpath expr="//t[@t-foreach='invoices']/tr/td[hasclass('tx_status')]" position="replace"> <t t-set="last_tx" t-value="invoice.get_portal_last_transaction()"/> <td class="tx_status text-center"> - <t t-if="invoice.state == 'posted' and invoice.invoice_payment_state == 'not_paid' and (last_tx.state not in ['pending', 'authorized', 'done', 'cancel'] or (last_tx.state == 'pending' and last_tx.acquirer_id.provider in ('transfer', 'manual')))"> + <t t-if="invoice.state == 'posted' and invoice.payment_state in ('not_paid', 'partial') and (last_tx.state not in ['pending', 'authorized', 'done', 'cancel'] or (last_tx.state == 'pending' and last_tx.acquirer_id.provider in ('transfer', 'manual')))"> <span class="badge badge-pill badge-info"><i class="fa fa-fw fa-clock-o"></i><span class="d-none d-md-inline"> Waiting for Payment</span></span> </t> <t t-if="invoice.state == 'posted' and last_tx.state == 'authorized'"> @@ -25,7 +25,7 @@ <t t-if="invoice.state == 'posted' and last_tx.state == 'pending' and last_tx.acquirer_id.provider not in ('transfer', 'manual')"> <span class="badge badge-pill badge-warning"><span class="d-none d-md-inline"> Pending</span></span> </t> - <t t-if="invoice.state == 'posted' and invoice.invoice_payment_state == 'paid' or last_tx.state == 'done'"> + <t t-if="invoice.state == 'posted' and invoice.payment_state == 'paid' or last_tx.state == 'done'"> <span class="badge badge-pill badge-success"><i class="fa fa-fw fa-check"></i><span class="d-none d-md-inline"> Paid</span></span> </t> <t t-if="invoice.state == 'cancel'"> @@ -36,7 +36,7 @@ </template> <template id="portal_invoice_payment" name="Invoice Payment"> - <div class="row" t-if="not tx_ids and invoice.state == 'posted' and invoice.invoice_payment_state == 'not_paid' and invoice.amount_total" id="portal_pay"> + <div class="row" t-if="not tx_ids and invoice.state == 'posted' and invoice.payment_state in ('not_paid', 'partial') and invoice.amount_total" id="portal_pay"> <div class="modal fade" id="pay_with" role="dialog"> <div class="modal-dialog"> <div class="modal-content"> @@ -71,14 +71,14 @@ <t t-set="tx_ids" t-value="invoice.transaction_ids.filtered(lambda tx: tx.state in ('pending', 'authorized', 'done'))"/> <t t-set="pending_manual_txs" t-value="tx_ids.filtered(lambda tx: tx.state == 'pending' and tx.acquirer_id.provider in ('transfer', 'manual'))"/> <div> - <a href="#" t-if="invoice.state == 'posted' and invoice.invoice_payment_state == 'not_paid' and invoice.amount_total and invoice.type == 'out_invoice' and (pending_manual_txs or not tx_ids)" + <a href="#" t-if="invoice.state == 'posted' and invoice.payment_state in ('not_paid', 'partial') and invoice.amount_total and invoice.type == 'out_invoice' and (pending_manual_txs or not tx_ids)" class="btn btn-primary btn-block mb-2" data-toggle="modal" data-target="#pay_with"> <i class="fa fa-fw fa-arrow-circle-right"/> Pay Now </a> - <div t-if="tx_ids and not pending_manual_txs and invoice.invoice_payment_state != 'paid'" class="alert alert-info py-1 mb-2" > + <div t-if="tx_ids and not pending_manual_txs and invoice.payment_state != 'paid'" class="alert alert-info py-1 mb-2" > <i class="fa fa-fw fa-check-circle"/> Pending </div> - <div t-if="invoice.invoice_payment_state == 'paid'" class="alert alert-success py-1 mb-2" > + <div t-if="invoice.payment_state == 'paid'" class="alert alert-success py-1 mb-2" > <i class="fa fa-fw fa-check-circle"/> Paid </div> </div> @@ -91,7 +91,7 @@ </t> </div> <t t-set="tx_ids" t-value="invoice.transaction_ids.filtered(lambda tx: tx.state in ('authorized', 'done'))"/> - <div t-if="not tx_ids and invoice.state == 'posted' and invoice.invoice_payment_state == 'not_paid' and invoice.amount_total" id="portal_pay"> + <div t-if="not tx_ids and invoice.state == 'posted' and invoice.payment_state in ('not_paid', 'partial') and invoice.amount_total" id="portal_pay"> <div t-if="pms or acquirers" id="payment_method"> <t t-call="account_payment.portal_invoice_payment"/> </div> @@ -136,7 +136,7 @@ <b>Communication: </b><span t-esc='invoice.ref'/> </div> </t> - <t t-if="success == 'pay_invoice' and invoice.invoice_payment_state == 'paid'"> + <t t-if="success == 'pay_invoice' and invoice.payment_state == 'paid'"> Done, your online payment has been successfully processed. Thank you for your order. </t> </xpath> |
