feat: skip loyalty member creation for internal users and bulk imports in res.partner
This commit is contained in:
parent
c7388700aa
commit
94e5866008
@ -41,6 +41,22 @@ class ResPartner(models.Model):
|
|||||||
@api.model_create_multi
|
@api.model_create_multi
|
||||||
def create(self, vals_list):
|
def create(self, vals_list):
|
||||||
partners = super().create(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:
|
for partner in partners:
|
||||||
if partner.is_company:
|
if partner.is_company:
|
||||||
continue
|
continue
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user