diff --git a/account_banking_mandate_sale/__manifest__.py b/account_banking_mandate_sale/__manifest__.py index 5aa1755d7..51bbe7840 100644 --- a/account_banking_mandate_sale/__manifest__.py +++ b/account_banking_mandate_sale/__manifest__.py @@ -2,21 +2,20 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { - 'name': 'Account Banking Mandate Sale', - 'version': '14.0.1.0.0', - 'category': 'Banking addons', - 'license': 'AGPL-3', - 'summary': "Adds mandates on sale orders", - 'author': "Odoo Community Association (OCA), " - "Akretion", - 'website': 'https://github.com/OCA/bank-payment', - 'depends': [ - 'account_payment_sale', - 'sale_commercial_partner', - 'account_banking_mandate', + "name": "Account Banking Mandate Sale", + "version": "14.0.1.0.0", + "category": "Banking addons", + "license": "AGPL-3", + "summary": "Adds mandates on sale orders", + "author": "Odoo Community Association (OCA), " "Akretion", + "website": "https://github.com/OCA/bank-payment", + "depends": [ + "account_payment_sale", + "sale_commercial_partner", + "account_banking_mandate", ], - 'data': [ - 'views/sale_order.xml', + "data": [ + "views/sale_order.xml", ], - 'installable': True, + "installable": True, } diff --git a/account_banking_mandate_sale/models/sale_order.py b/account_banking_mandate_sale/models/sale_order.py index 08bbc2b04..ddb400831 100644 --- a/account_banking_mandate_sale/models/sale_order.py +++ b/account_banking_mandate_sale/models/sale_order.py @@ -10,35 +10,40 @@ class SaleOrder(models.Model): # This field commercial_partner_id should be moved # in an OCA base module named for example sale_commercial_partner mandate_id = fields.Many2one( - 'account.banking.mandate', - string='Direct Debit Mandate', - ondelete='restrict', + "account.banking.mandate", + string="Direct Debit Mandate", + ondelete="restrict", check_company=True, readonly=False, - domain="[('partner_id', '=', commercial_partner_id), ('state', 'in', ('draft', 'valid')), ('company_id', '=', company_id)]", - ) + domain="[('partner_id', '=', commercial_partner_id), " + "('state', 'in', ('draft', 'valid')), " + "('company_id', '=', company_id)]", + ) mandate_required = fields.Boolean( - related='payment_mode_id.payment_method_id.mandate_required', + related="payment_mode_id.payment_method_id.mandate_required", ) def _prepare_invoice(self): """Copy mandate from sale order to invoice""" vals = super()._prepare_invoice() - vals['mandate_id'] = self.mandate_id.id or False + vals["mandate_id"] = self.mandate_id.id or False return vals @api.depends("partner_id") def _compute_payment_mode(self): """Select by default the first valid mandate of the partner""" super()._compute_payment_mode() - abm_obj = self.env['account.banking.mandate'] + abm_obj = self.env["account.banking.mandate"] for order in self: if order.mandate_required and order.partner_id: - mandate = abm_obj.search([ - ('state', '=', 'valid'), - ('partner_id', '=', order.commercial_partner_id.id), - ('company_id', '=', order.company_id.id), - ], limit=1) + mandate = abm_obj.search( + [ + ("state", "=", "valid"), + ("partner_id", "=", order.commercial_partner_id.id), + ("company_id", "=", order.company_id.id), + ], + limit=1, + ) order.mandate_id = mandate or False else: order.mandate_id = False diff --git a/account_banking_mandate_sale/views/sale_order.xml b/account_banking_mandate_sale/views/sale_order.xml index c6ecae69d..1cab55954 100644 --- a/account_banking_mandate_sale/views/sale_order.xml +++ b/account_banking_mandate_sale/views/sale_order.xml @@ -1,21 +1,22 @@ - + - account_banking_mandate_sale.sale_order.form sale.order - + - - - + + + diff --git a/account_banking_mandate_sale/wizard/sale_make_invoice_advance.py b/account_banking_mandate_sale/wizard/sale_make_invoice_advance.py index e449d679e..bc91d6448 100644 --- a/account_banking_mandate_sale/wizard/sale_make_invoice_advance.py +++ b/account_banking_mandate_sale/wizard/sale_make_invoice_advance.py @@ -1,15 +1,15 @@ # Copyright 2016-2020 Akretion (Alexis de Lattre ) # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -from odoo import api, models +from odoo import models class SaleAdvancePaymentInv(models.TransientModel): - _inherit = 'sale.advance.payment.inv' + _inherit = "sale.advance.payment.inv" def _prepare_invoice_values(self, order, name, amount, so_line): """Copy mandate from sale order to invoice""" vals = super()._prepare_invoice_values(order, name, amount, so_line) if order.mandate_id: - vals['mandate_id'] = order.mandate_id.id + vals["mandate_id"] = order.mandate_id.id return vals