From 94e58660083f978a76ac4aa3390cd6e51307b8b0 Mon Sep 17 00:00:00 2001 From: Suherdy Yacob Date: Sat, 30 May 2026 09:38:17 +0700 Subject: [PATCH] feat: skip loyalty member creation for internal users and bulk imports in res.partner --- models/res_partner.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/models/res_partner.py b/models/res_partner.py index a39c409..e5ec1d9 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -41,6 +41,22 @@ class ResPartner(models.Model): @api.model_create_multi def create(self, vals_list): partners = super().create(vals_list) + + # Check context or stack trace to see if we are creating an internal user or employee + import sys + is_internal_creation = False + frame = sys._getframe() + while frame: + filename = frame.f_code.co_filename + if 'res_users.py' in filename or 'hr_employee.py' in filename: + is_internal_creation = True + break + frame = frame.f_back + + # Also respect standard Odoo install and import bypass flags + if is_internal_creation or self.env.context.get('install_mode') or self.env.context.get('import_file'): + return partners + for partner in partners: if partner.is_company: continue