From 62c4bc9da79f5700a282620542d5f3e13bafd164 Mon Sep 17 00:00:00 2001 From: Hans Henrik Gabelgaard Date: Thu, 7 Mar 2024 16:24:39 +0100 Subject: [PATCH] [FIX] account_payment_order: Filter bank on company --- account_payment_order/models/account_move_line.py | 7 +++++-- account_payment_order/models/account_payment_line.py | 4 +++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/account_payment_order/models/account_move_line.py b/account_payment_order/models/account_move_line.py index 244000a98..75d229f50 100644 --- a/account_payment_order/models/account_move_line.py +++ b/account_payment_order/models/account_move_line.py @@ -3,7 +3,6 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). from odoo import api, fields, models -from odoo.fields import first class AccountMoveLine(models.Model): @@ -70,7 +69,11 @@ class AccountMoveLine(models.Model): # in this case if payment_order.payment_type == "outbound": amount_currency *= -1 - partner_bank_id = self.partner_bank_id.id or first(self.partner_id.bank_ids).id + partner_bank_id = self.partner_bank_id.id + if not partner_bank_id: + partner_bank_id = self.partner_id.bank_ids.filtered( + lambda bank: not bank.company_id or bank.company_id == self.company_id + )[:1].id vals = { "order_id": payment_order.id, "partner_bank_id": partner_bank_id, diff --git a/account_payment_order/models/account_payment_line.py b/account_payment_order/models/account_payment_line.py index 83d2614bc..fc41ff415 100644 --- a/account_payment_order/models/account_payment_line.py +++ b/account_payment_order/models/account_payment_line.py @@ -142,7 +142,9 @@ class AccountPaymentLine(models.Model): def partner_id_change(self): partner_bank = False if self.partner_id.bank_ids: - partner_bank = self.partner_id.bank_ids[0] + partner_bank = self.partner_id.bank_ids.filtered( + lambda bank: not bank.company_id or bank.company_id == self.company_id + )[:1] self.partner_bank_id = partner_bank @api.onchange("move_line_id")