mirror of
https://github.com/OCA/bank-payment.git
synced 2025-02-02 10:37:31 +02:00
account_banking_mandate_sale: black, isort, etc.
This commit is contained in:
@@ -2,21 +2,20 @@
|
|||||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
{
|
{
|
||||||
'name': 'Account Banking Mandate Sale',
|
"name": "Account Banking Mandate Sale",
|
||||||
'version': '14.0.1.0.0',
|
"version": "14.0.1.0.0",
|
||||||
'category': 'Banking addons',
|
"category": "Banking addons",
|
||||||
'license': 'AGPL-3',
|
"license": "AGPL-3",
|
||||||
'summary': "Adds mandates on sale orders",
|
"summary": "Adds mandates on sale orders",
|
||||||
'author': "Odoo Community Association (OCA), "
|
"author": "Odoo Community Association (OCA), " "Akretion",
|
||||||
"Akretion",
|
"website": "https://github.com/OCA/bank-payment",
|
||||||
'website': 'https://github.com/OCA/bank-payment',
|
"depends": [
|
||||||
'depends': [
|
"account_payment_sale",
|
||||||
'account_payment_sale',
|
"sale_commercial_partner",
|
||||||
'sale_commercial_partner',
|
"account_banking_mandate",
|
||||||
'account_banking_mandate',
|
|
||||||
],
|
],
|
||||||
'data': [
|
"data": [
|
||||||
'views/sale_order.xml',
|
"views/sale_order.xml",
|
||||||
],
|
],
|
||||||
'installable': True,
|
"installable": True,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,35 +10,40 @@ class SaleOrder(models.Model):
|
|||||||
# This field commercial_partner_id should be moved
|
# This field commercial_partner_id should be moved
|
||||||
# in an OCA base module named for example sale_commercial_partner
|
# in an OCA base module named for example sale_commercial_partner
|
||||||
mandate_id = fields.Many2one(
|
mandate_id = fields.Many2one(
|
||||||
'account.banking.mandate',
|
"account.banking.mandate",
|
||||||
string='Direct Debit Mandate',
|
string="Direct Debit Mandate",
|
||||||
ondelete='restrict',
|
ondelete="restrict",
|
||||||
check_company=True,
|
check_company=True,
|
||||||
readonly=False,
|
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(
|
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):
|
def _prepare_invoice(self):
|
||||||
"""Copy mandate from sale order to invoice"""
|
"""Copy mandate from sale order to invoice"""
|
||||||
vals = super()._prepare_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
|
return vals
|
||||||
|
|
||||||
@api.depends("partner_id")
|
@api.depends("partner_id")
|
||||||
def _compute_payment_mode(self):
|
def _compute_payment_mode(self):
|
||||||
"""Select by default the first valid mandate of the partner"""
|
"""Select by default the first valid mandate of the partner"""
|
||||||
super()._compute_payment_mode()
|
super()._compute_payment_mode()
|
||||||
abm_obj = self.env['account.banking.mandate']
|
abm_obj = self.env["account.banking.mandate"]
|
||||||
for order in self:
|
for order in self:
|
||||||
if order.mandate_required and order.partner_id:
|
if order.mandate_required and order.partner_id:
|
||||||
mandate = abm_obj.search([
|
mandate = abm_obj.search(
|
||||||
('state', '=', 'valid'),
|
[
|
||||||
('partner_id', '=', order.commercial_partner_id.id),
|
("state", "=", "valid"),
|
||||||
('company_id', '=', order.company_id.id),
|
("partner_id", "=", order.commercial_partner_id.id),
|
||||||
], limit=1)
|
("company_id", "=", order.company_id.id),
|
||||||
|
],
|
||||||
|
limit=1,
|
||||||
|
)
|
||||||
order.mandate_id = mandate or False
|
order.mandate_id = mandate or False
|
||||||
else:
|
else:
|
||||||
order.mandate_id = False
|
order.mandate_id = False
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
© 2016 Akretion (Alexis de Lattre <alexis.delattre@akretion.com>)
|
© 2016 Akretion (Alexis de Lattre <alexis.delattre@akretion.com>)
|
||||||
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<odoo>
|
<odoo>
|
||||||
|
|
||||||
<record id="view_order_form" model="ir.ui.view">
|
<record id="view_order_form" model="ir.ui.view">
|
||||||
@@ -13,8 +12,10 @@
|
|||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<field name="fiscal_position_id" position="after">
|
<field name="fiscal_position_id" position="after">
|
||||||
<field name="commercial_partner_id" invisible="1" />
|
<field name="commercial_partner_id" invisible="1" />
|
||||||
<field name="mandate_id"
|
<field
|
||||||
attrs="{'invisible': [('mandate_required', '=', False)]}"/>
|
name="mandate_id"
|
||||||
|
attrs="{'invisible': [('mandate_required', '=', False)]}"
|
||||||
|
/>
|
||||||
<field name="mandate_required" invisible="1" />
|
<field name="mandate_required" invisible="1" />
|
||||||
</field>
|
</field>
|
||||||
</field>
|
</field>
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
# Copyright 2016-2020 Akretion (Alexis de Lattre <alexis.delattre@akretion.com>)
|
# Copyright 2016-2020 Akretion (Alexis de Lattre <alexis.delattre@akretion.com>)
|
||||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
# 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):
|
class SaleAdvancePaymentInv(models.TransientModel):
|
||||||
_inherit = 'sale.advance.payment.inv'
|
_inherit = "sale.advance.payment.inv"
|
||||||
|
|
||||||
def _prepare_invoice_values(self, order, name, amount, so_line):
|
def _prepare_invoice_values(self, order, name, amount, so_line):
|
||||||
"""Copy mandate from sale order to invoice"""
|
"""Copy mandate from sale order to invoice"""
|
||||||
vals = super()._prepare_invoice_values(order, name, amount, so_line)
|
vals = super()._prepare_invoice_values(order, name, amount, so_line)
|
||||||
if order.mandate_id:
|
if order.mandate_id:
|
||||||
vals['mandate_id'] = order.mandate_id.id
|
vals["mandate_id"] = order.mandate_id.id
|
||||||
return vals
|
return vals
|
||||||
|
|||||||
Reference in New Issue
Block a user