From 3e2c2b8ceab6fbeda0f9d69a6ade71514e300bc0 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Sun, 27 Dec 2020 00:37:59 +0100 Subject: [PATCH] account_payment_partner: FIX form view of account.move Replace python constraint by check_company=True on payment_mode_id of account.move --- account_payment_partner/models/account_move.py | 16 ++-------------- .../tests/test_account_payment_partner.py | 8 ++++---- .../views/account_move_view.xml | 10 +++------- 3 files changed, 9 insertions(+), 25 deletions(-) diff --git a/account_payment_partner/models/account_move.py b/account_payment_partner/models/account_move.py index 8fdcc5a5c..2c4a94cac 100644 --- a/account_payment_partner/models/account_move.py +++ b/account_payment_partner/models/account_move.py @@ -2,8 +2,7 @@ # Copyright 2014 Serv. Tecnol. Avanzados - Pedro M. Baeza # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -from odoo import _, api, fields, models -from odoo.exceptions import ValidationError +from odoo import api, fields, models class AccountMove(models.Model): @@ -21,6 +20,7 @@ class AccountMove(models.Model): store=True, ondelete="restrict", readonly=False, + check_company=True, ) bank_account_required = fields.Boolean( related="payment_mode_id.payment_method_id.bank_account_required", readonly=True @@ -101,18 +101,6 @@ class AccountMove(models.Model): move_vals["partner_bank_id"] = self.partner_bank_id.id return move_vals - @api.constrains("company_id", "payment_mode_id") - def _check_payment_mode_company_constrains(self): - for rec in self.sudo(): - if rec.payment_mode_id and rec.company_id != rec.payment_mode_id.company_id: - raise ValidationError( - _( - "The company of the invoice %s does not match " - "with that of the payment mode" - ) - % rec.name - ) - def partner_banks_to_show(self): self.ensure_one() if self.partner_bank_id: diff --git a/account_payment_partner/tests/test_account_payment_partner.py b/account_payment_partner/tests/test_account_payment_partner.py index 3764d14ed..3226d4ec6 100644 --- a/account_payment_partner/tests/test_account_payment_partner.py +++ b/account_payment_partner/tests/test_account_payment_partner.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). from odoo import _, fields -from odoo.exceptions import ValidationError +from odoo.exceptions import UserError, ValidationError from odoo.tests import common @@ -288,7 +288,7 @@ class TestAccountPaymentPartner(common.SavepointCase): self.assertEqual(invoice.payment_mode_id, aml[0].payment_mode_id) def test_invoice_constrains(self): - with self.assertRaises(ValidationError): + with self.assertRaises(UserError): self.move_model.create( { "partner_id": self.supplier.id, @@ -306,7 +306,7 @@ class TestAccountPaymentPartner(common.SavepointCase): "company_id": self.company.id, } ) - with self.assertRaises(ValidationError): + with self.assertRaises(UserError): self.supplier_payment_mode.company_id = self.company_2 def test_payment_mode_constrains_02(self): @@ -343,7 +343,7 @@ class TestAccountPaymentPartner(common.SavepointCase): ], } ) - with self.assertRaises(ValidationError): + with self.assertRaises(UserError): self.supplier_payment_mode.company_id = self.company_2 def test_invoice_refund(self): diff --git a/account_payment_partner/views/account_move_view.xml b/account_payment_partner/views/account_move_view.xml index b2a8d8ed1..6b1655145 100644 --- a/account_payment_partner/views/account_move_view.xml +++ b/account_payment_partner/views/account_move_view.xml @@ -23,22 +23,18 @@ account.move - + - + [('partner_id', '=', partner_bank_filter_type_domain),