diff --git a/addons/payment/models/payment_provider.py b/addons/payment/models/payment_provider.py index f92dfd67ed7..6de3adb3069 100644 --- a/addons/payment/models/payment_provider.py +++ b/addons/payment/models/payment_provider.py @@ -636,6 +636,10 @@ class PaymentProvider(models.Model): """ return + @api.model + def _get_removal_domain(self, provider_code): + return [('code', '=', provider_code)] + @api.model def _remove_provider(self, provider_code): """ Remove the module-specific data of the given provider. @@ -643,7 +647,7 @@ class PaymentProvider(models.Model): :param str provider_code: The code of the provider whose data to remove. :return: None """ - providers = self.search([('code', '=', provider_code)]) + providers = self.search(self._get_removal_domain(provider_code)) providers.write(self._get_removal_values()) def _get_removal_values(self): diff --git a/addons/payment_custom/models/payment_provider.py b/addons/payment_custom/models/payment_provider.py index 158903ab993..ffd005bc0ad 100644 --- a/addons/payment_custom/models/payment_provider.py +++ b/addons/payment_custom/models/payment_provider.py @@ -1,6 +1,7 @@ # Part of Odoo. See LICENSE file for full copyright and licensing details. from odoo import _, api, fields, models +from odoo.osv.expression import OR class PaymentProvider(models.Model): @@ -62,6 +63,14 @@ class PaymentProvider(models.Model): f'