diff --git a/tienda_ilusion/don_confiao/api_views.py b/tienda_ilusion/don_confiao/api_views.py index d70c9f1..bfeddb6 100644 --- a/tienda_ilusion/don_confiao/api_views.py +++ b/tienda_ilusion/don_confiao/api_views.py @@ -422,4 +422,6 @@ class CustomersFromTrytonView(APIView): def __update_customer(self, customer, tryton_party): customer.name = tryton_party.get('name') customer.external_id = tryton_party.get('id') + if tryton_party.get('addresses') and tryton_party.get('addresses')[0]: + customer.address_external_id = tryton_party.get('addresses')[0] customer.save() diff --git a/tienda_ilusion/don_confiao/tests/test_customers_from_tryton.py b/tienda_ilusion/don_confiao/tests/test_customers_from_tryton.py index 47b68a6..3924f4d 100644 --- a/tienda_ilusion/don_confiao/tests/test_customers_from_tryton.py +++ b/tienda_ilusion/don_confiao/tests/test_customers_from_tryton.py @@ -33,7 +33,7 @@ class TestCustomersFromTryton(TestCase): read_args = ([5, 6, 7, 8], ['id', 'name', 'addresses'], {'company': 1}) if (args == (party_read, read_args)): return [ - {'id': 5, 'name': 'Carlos', 'addresses': []}, + {'id': 5, 'name': 'Carlos', 'addresses': [303]}, {'id': 6, 'name': 'Cristian', 'addresses': []}, {'id': 7, 'name': 'Ana', 'addresses': [302]}, {'id': 8, 'name': 'José', 'addresses': []}, @@ -65,4 +65,4 @@ class TestCustomersFromTryton(TestCase): updated_customer = Customer.objects.get(id=1) self.assertEqual(updated_customer.external_id, str(5)) self.assertEqual(updated_customer.name, 'Carlos') - self.assertIn(updated_customer.address_external_id, ['', None]) + self.assertIn(updated_customer.address_external_id, str(303)) diff --git a/tienda_ilusion/don_confiao/tests/test_exportar_ventas_para_tryton.py b/tienda_ilusion/don_confiao/tests/test_exportar_ventas_para_tryton.py index a5efa8d..78c13c2 100644 --- a/tienda_ilusion/don_confiao/tests/test_exportar_ventas_para_tryton.py +++ b/tienda_ilusion/don_confiao/tests/test_exportar_ventas_para_tryton.py @@ -19,7 +19,7 @@ class TestExportarVentasParaTryton(TestCase): self.customer = Customer.objects.create( name='Camilo', external_id=1, - address_external_id=1 + address_external_id=307, ) self.sale = Sale.objects.create( customer=self.customer, @@ -100,4 +100,4 @@ class TestExportarVentasParaTryton(TestCase): self.assertEqual(updated_sale.external_id, external_id) mock_connect.assert_called_once() mock_call.assert_called_once() - mock_call.assert_called_with('model.sale.sale.create', [[{'company': 1, 'shipment_address': '1', 'invoice_address': '1', 'currency': 31, 'description': '', 'party': '1', 'reference': 'don_confiao 1', 'sale_date': {'__class__': 'date', 'year': 2024, 'month': 9, 'day': 2}, 'lines': [['create', [{'product': '1', 'quantity': {'__class__': 'Decimal', 'decimal': '2.00'}, 'type': 'line', 'unit': '1', 'unit_price': {'__class__': 'Decimal', 'decimal': '3000.00'}}, {'product': '1', 'quantity': {'__class__': 'Decimal', 'decimal': '3.00'}, 'type': 'line', 'unit': '1', 'unit_price': {'__class__': 'Decimal', 'decimal': '5000.00'}}]]]}], {'company': 1, 'shops': [1]}]) + mock_call.assert_called_with('model.sale.sale.create', [[{'company': 1, 'shipment_address': '307', 'invoice_address': '307', 'currency': 31, 'description': '', 'party': '1', 'reference': 'don_confiao 1', 'sale_date': {'__class__': 'date', 'year': 2024, 'month': 9, 'day': 2}, 'lines': [['create', [{'product': '1', 'quantity': {'__class__': 'Decimal', 'decimal': '2.00'}, 'type': 'line', 'unit': '1', 'unit_price': {'__class__': 'Decimal', 'decimal': '3000.00'}}, {'product': '1', 'quantity': {'__class__': 'Decimal', 'decimal': '3.00'}, 'type': 'line', 'unit': '1', 'unit_price': {'__class__': 'Decimal', 'decimal': '5000.00'}}]]]}], {'company': 1, 'shops': [1]}])