diff --git a/InvenTree/InvenTree/helpers.py b/InvenTree/InvenTree/helpers.py index 6dad393349..2595f8b5c3 100644 --- a/InvenTree/InvenTree/helpers.py +++ b/InvenTree/InvenTree/helpers.py @@ -475,7 +475,6 @@ def extract_serial_numbers(serials, expected_quantity, next_number: int): continue else: errors.append(_("Invalid group: {g}").format(g=group)) - continue # plus signals either # 1: 'start+': expected number of serials, starting at start @@ -500,7 +499,6 @@ def extract_serial_numbers(serials, expected_quantity, next_number: int): # no case else: errors.append(_("Invalid group: {g}").format(g=group)) - continue # Group should be a number elif group: diff --git a/InvenTree/part/serializers.py b/InvenTree/part/serializers.py index 549b546a5b..d3956f3c6c 100644 --- a/InvenTree/part/serializers.py +++ b/InvenTree/part/serializers.py @@ -789,21 +789,20 @@ class BomImportExtractSerializer(DataFileExtractSerializer): pass # No direct match, where else can we look? - if part is None: - if part_name or part_ipn: - queryset = Part.objects.all() + if part is None and (part_name or part_ipn): + queryset = Part.objects.all() - if part_name: - queryset = queryset.filter(name=part_name) + if part_name: + queryset = queryset.filter(name=part_name) - if part_ipn: - queryset = queryset.filter(IPN=part_ipn) + if part_ipn: + queryset = queryset.filter(IPN=part_ipn) - if queryset.exists(): - if queryset.count() == 1: - part = queryset.first() - else: - row['errors']['part'] = _('Multiple matching parts found') + if queryset.exists(): + if queryset.count() == 1: + part = queryset.first() + else: + row['errors']['part'] = _('Multiple matching parts found') if part is None: row['errors']['part'] = _('No matching part found') diff --git a/InvenTree/part/test_bom_import.py b/InvenTree/part/test_bom_import.py index 8903660f39..6f9006d487 100644 --- a/InvenTree/part/test_bom_import.py +++ b/InvenTree/part/test_bom_import.py @@ -41,7 +41,7 @@ class BomUploadTest(InvenTreeAPITestCase): assembly=False, ) - def post_bom(self, filename, file_data, part=None, clear_existing=None, expected_code=None, content_type='text/plain'): + def post_bom(self, filename, file_data, clear_existing=None, expected_code=None, content_type='text/plain'): bom_file = SimpleUploadedFile( filename, @@ -49,9 +49,6 @@ class BomUploadTest(InvenTreeAPITestCase): content_type=content_type, ) - if part is None: - part = self.part.pk - if clear_existing is None: clear_existing = False @@ -189,7 +186,7 @@ class BomUploadTest(InvenTreeAPITestCase): self.assertIn('No part column specified', str(response.data)) - response = self.post( + self.post( url, { 'rows': rows, diff --git a/InvenTree/stock/api.py b/InvenTree/stock/api.py index 9723e01c09..ed7a4b8c40 100644 --- a/InvenTree/stock/api.py +++ b/InvenTree/stock/api.py @@ -516,10 +516,8 @@ class StockList(generics.ListCreateAPIView): data['location'] = location.pk # An expiry date was *not* specified - try to infer it! - if 'expiry_date' not in data: - - if part.default_expiry > 0: - data['expiry_date'] = datetime.now().date() + timedelta(days=part.default_expiry) + if 'expiry_date' not in data and part.default_expiry > 0: + data['expiry_date'] = datetime.now().date() + timedelta(days=part.default_expiry) # Attempt to extract serial numbers from submitted data serials = None diff --git a/InvenTree/stock/test_api.py b/InvenTree/stock/test_api.py index 1e09dec907..a9dbe9e723 100644 --- a/InvenTree/stock/test_api.py +++ b/InvenTree/stock/test_api.py @@ -393,7 +393,7 @@ class StockItemTest(StockAPITestCase): self.assertEqual(trackable_part.get_stock_count(), 0) # This should fail, incorrect serial number count - response = self.post( + self.post( self.list_url, data={ 'part': trackable_part.pk,