mirror of
https://github.com/OCA/account-reconcile.git
synced 2025-01-20 12:27:39 +02:00
31 lines
962 B
Python
31 lines
962 B
Python
# Copyright 2019 Camptocamp SA
|
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
|
|
|
|
from odoo import _, models
|
|
from odoo.exceptions import UserError
|
|
from odoo.tools import config
|
|
|
|
|
|
class AccountMoveLine(models.Model):
|
|
_inherit = "account.move.line"
|
|
|
|
def reconcile(self):
|
|
if config["test_enable"] and not self.env.context.get("test_partner_mismatch"):
|
|
return super().reconcile()
|
|
|
|
# to be consistent with parent method
|
|
if not self:
|
|
return True
|
|
partners = set()
|
|
for line in self:
|
|
if line.account_id.internal_type in ("receivable", "payable"):
|
|
partners.add(line.partner_id.id)
|
|
if len(partners) > 1:
|
|
raise UserError(
|
|
_(
|
|
"The partner has to be the same on all"
|
|
" lines for receivable and payable accounts!"
|
|
)
|
|
)
|
|
return super().reconcile()
|