mirror of
https://github.com/OCA/bank-payment.git
synced 2025-02-02 10:37:31 +02:00
[IMP] Mandate Sale: mandate visible only if mandate required
This commit is contained in:
committed by
Alexis de Lattre
parent
c9a49db3e6
commit
79fb4f18eb
@@ -16,6 +16,10 @@ class SaleOrder(models.Model):
|
||||
'account.banking.mandate', string='Direct Debit Mandate',
|
||||
ondelete='restrict', readonly=True,
|
||||
states={'draft': [('readonly', False)], 'sent': [('readonly', False)]})
|
||||
mandate_required = fields.Boolean(
|
||||
related='payment_mode_id.payment_method_id.mandate_required',
|
||||
readonly=True,
|
||||
)
|
||||
|
||||
@api.multi
|
||||
def _prepare_invoice(self):
|
||||
@@ -27,11 +31,12 @@ class SaleOrder(models.Model):
|
||||
@api.onchange('payment_mode_id')
|
||||
def payment_mode_change(self):
|
||||
"""Select by default the first valid mandate of the partner"""
|
||||
if (
|
||||
self.payment_mode_id.payment_method_id.mandate_required and
|
||||
self.partner_id):
|
||||
self.ensure_one()
|
||||
if self.mandate_required and self.partner_id:
|
||||
mandates = self.env['account.banking.mandate'].search([
|
||||
('state', '=', 'valid'),
|
||||
('partner_id', '=', self.commercial_partner_id.id),
|
||||
])
|
||||
self.mandate_id = mandates[:1]
|
||||
else:
|
||||
self.mandate_id = False
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
* Alexis de Lattre <alexis.delattre@akretion.com>
|
||||
* Thomas Binsfeld <thomas.binsfeld@acsone.eu>
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
|
||||
<odoo>
|
||||
|
||||
|
||||
<record id="view_order_form" model="ir.ui.view">
|
||||
<field name="name">account_banking_mandate_sale.sale_order.form</field>
|
||||
<field name="model">sale.order</field>
|
||||
@@ -15,10 +14,11 @@
|
||||
<field name="fiscal_position_id" position="after">
|
||||
<field name="commercial_partner_id" invisible="1"/>
|
||||
<field name="mandate_id"
|
||||
domain="[('partner_id', '=', commercial_partner_id), ('state', 'in', ('draft', 'valid'))]"/>
|
||||
domain="[('partner_id', '=', commercial_partner_id), ('state', 'in', ('draft', 'valid'))]"
|
||||
attrs="{'invisible': [('mandate_required', '=', False)]}"/>
|
||||
<field name="mandate_required" invisible="1"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
</odoo>
|
||||
|
||||
Reference in New Issue
Block a user