From ac29c1ed077f9c6d1aa0b8a28e109a839ce895af Mon Sep 17 00:00:00 2001 From: Jared Kipe Date: Fri, 19 Jun 2020 11:08:08 -0700 Subject: [PATCH] [FIX] connector_opencart: Delivery and Invoice address types set before creation. --- connector_opencart/models/sale_order/importer.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/connector_opencart/models/sale_order/importer.py b/connector_opencart/models/sale_order/importer.py index 819e532a..b33f4f5f 100644 --- a/connector_opencart/models/sale_order/importer.py +++ b/connector_opencart/models/sale_order/importer.py @@ -213,7 +213,7 @@ class SaleOrderImporter(Component): def _partner_matches(self, partner, values): for key, value in values.items(): - if key in ('active', 'parent_id'): + if key in ('active', 'parent_id', 'type'): continue if key == 'state_id': @@ -227,7 +227,7 @@ class SaleOrderImporter(Component): return True def _make_partner_name(self, firstname, lastname): - name = (str(firstname) + ' ' + str(lastname)).strip() + name = (str(firstname or '').strip() + ' ' + str(lastname or '').strip()).strip() if not name: return 'Undefined' return name @@ -295,12 +295,14 @@ class SaleOrderImporter(Component): if not self._partner_matches(partner, partner_values): partner_values['parent_id'] = partner.id - partner_values['active'] = False - shipping_partner = self._create_partner(copy(partner_values)) + shipping_values = copy(partner_values) + shipping_values['type'] = 'delivery' + shipping_partner = self._create_partner(shipping_values) else: shipping_partner = partner invoice_values = self._get_partner_values(info_string='payment_') + invoice_values['type'] = 'invoice' if (not self._partner_matches(partner, invoice_values) and not self._partner_matches(shipping_partner, invoice_values)): @@ -310,8 +312,7 @@ class SaleOrderImporter(Component): invoice_partner = possible break else: - partner_values['parent_id'] = partner.id - partner_values['active'] = False + invoice_values['parent_id'] = partner.id invoice_partner = self._create_partner(copy(invoice_values)) elif self._partner_matches(partner, invoice_values): invoice_partner = partner