Add proper importing for Customer/Person data from CORE API

includes datasync support.  i think it even works right, but we'll see
This commit is contained in:
Lance Edgar 2020-03-16 19:45:54 -05:00
parent 4a409bb80a
commit 8f9f77b6b7
3 changed files with 256 additions and 16 deletions

View file

@ -31,6 +31,25 @@ from rattail import importing
# core importer overrides
##############################
class PersonImporter(importing.model.PersonImporter):
extension_attr = '_corepos'
extension_fields = [
'corepos_customer_id',
]
def cache_query(self):
query = super(PersonImporter, self).cache_query()
model = self.config.get_model()
# we want to ignore people with no CORE ID, if that's (part of) our key
if 'corepos_customer_id' in self.key:
query = query.join(model.CorePerson)\
.filter(model.CorePerson.corepos_customer_id != None)
return query
class VendorImporter(importing.model.VendorImporter):
extension_attr = '_corepos'