Fix bug in customer importer when used via datasync
This commit is contained in:
parent
343cffa1be
commit
00242f48cc
|
@ -573,6 +573,13 @@ class CustomerImporter(ToRattail):
|
||||||
|
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
def get_group(self, group_id):
|
||||||
|
if hasattr(self, 'groups'):
|
||||||
|
return self.groups.get(group_id)
|
||||||
|
return self.session.query(model.CustomerGroup)\
|
||||||
|
.filter(model.CustomerGroup.id == group_id)\
|
||||||
|
.first()
|
||||||
|
|
||||||
def update_object(self, customer, data, local_data=None):
|
def update_object(self, customer, data, local_data=None):
|
||||||
customer = super(CustomerImporter, self).update_object(customer, data, local_data)
|
customer = super(CustomerImporter, self).update_object(customer, data, local_data)
|
||||||
|
|
||||||
|
@ -628,12 +635,13 @@ class CustomerImporter(ToRattail):
|
||||||
if 'group_id' in self.fields:
|
if 'group_id' in self.fields:
|
||||||
group_id = data['group_id']
|
group_id = data['group_id']
|
||||||
if group_id:
|
if group_id:
|
||||||
group = self.groups.get(group_id)
|
group = self.get_group(group_id)
|
||||||
if not group:
|
if not group:
|
||||||
group = model.CustomerGroup()
|
group = model.CustomerGroup()
|
||||||
group.id = group_id
|
group.id = group_id
|
||||||
group.name = "(auto-created)"
|
group.name = "(auto-created)"
|
||||||
self.session.add(group)
|
self.session.add(group)
|
||||||
|
if hasattr(self, 'groups'):
|
||||||
self.groups[group.id] = group
|
self.groups[group.id] = group
|
||||||
if group in customer.groups:
|
if group in customer.groups:
|
||||||
if group is not customer.groups[0]:
|
if group is not customer.groups[0]:
|
||||||
|
@ -647,12 +655,13 @@ class CustomerImporter(ToRattail):
|
||||||
if 'group_id_2' in self.fields:
|
if 'group_id_2' in self.fields:
|
||||||
group_id = data['group_id_2']
|
group_id = data['group_id_2']
|
||||||
if group_id:
|
if group_id:
|
||||||
group = self.groups.get(group_id)
|
group = self.get_group(group_id)
|
||||||
if not group:
|
if not group:
|
||||||
group = model.CustomerGroup()
|
group = model.CustomerGroup()
|
||||||
group.id = group_id
|
group.id = group_id
|
||||||
group.name = "(auto-created)"
|
group.name = "(auto-created)"
|
||||||
self.session.add(group)
|
self.session.add(group)
|
||||||
|
if hasattr(self, 'groups'):
|
||||||
self.groups[group.id] = group
|
self.groups[group.id] = group
|
||||||
if group in customer.groups:
|
if group in customer.groups:
|
||||||
if len(customer.groups) > 1:
|
if len(customer.groups) > 1:
|
||||||
|
|
Loading…
Reference in a new issue