2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-06-18 04:55:44 +00:00

Extract serial numbers from submitted form data

This commit is contained in:
Oliver
2022-02-15 13:19:41 +11:00
parent 037232c177
commit 24c13b04b6
2 changed files with 20 additions and 4 deletions

View File

@ -245,9 +245,10 @@ class BuildOutputCreateSerializer(serializers.Serializer):
Perform form validation
"""
build = self.get_build()
part = self.get_part()
serials = None
# Cache a list of serial numbers (to be used in the "save" method)
self.serials = None
quantity = data['quantity']
serial_numbers = data.get('serial_numbers', '')
@ -255,7 +256,7 @@ class BuildOutputCreateSerializer(serializers.Serializer):
if serial_numbers:
try:
serials = extract_serial_numbers(serial_numbers, quantity, part.getLatestSerialNumberInt())
self.serials = extract_serial_numbers(serial_numbers, quantity, part.getLatestSerialNumberInt())
except DjangoValidationError as e:
raise ValidationError({
'serial_numbers': e.messages,
@ -264,7 +265,7 @@ class BuildOutputCreateSerializer(serializers.Serializer):
# Check for conflicting serial numbesr
existing = []
for serial in serials:
for serial in self.serials:
if part.checkIfSerialNumberExists(serial):
existing.append(serial)