2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-07-01 03:00:54 +00:00

Part: Extend logic for "latest" serial number

- Return value if it is a string
- Remove 'getNextSerialNumber' function
- Improve functionality of function which returns serial number placeholder string
This commit is contained in:
Oliver Walters
2020-09-01 20:16:46 +10:00
parent e6c0a04131
commit 74f25ee7f9
5 changed files with 57 additions and 48 deletions

View File

@ -372,14 +372,14 @@ class VariantTest(StockTest):
self.assertFalse(chair.checkIfSerialNumberExists(30))
self.assertEqual(chair.getNextSerialNumber(), 23)
self.assertEqual(chair.getLatestSerialNumber(), '22')
# Same operations on a sub-item
variant = Part.objects.get(pk=10003)
self.assertEqual(variant.getNextSerialNumber(), 23)
self.assertEqual(variant.getLatestSerialNumber(), '22')
# Create a new serial number
n = variant.getHighestSerialNumber()
n = variant.getLatestSerialNumber()
item = StockItem(
part=variant,
@ -394,10 +394,8 @@ class VariantTest(StockTest):
# Verify items with a non-numeric serial don't offer a next serial.
item.serial = "string"
item.save()
self.assertEqual(variant.getNextSerialNumber(), None)
# And the same for the range when serializing.
self.assertEqual(variant.getSerialNumberString(5), None)
self.assertEqual(variant.getLatestSerialNumber(), "string")
# This should pass, although not strictly an int field now.
item.serial = int(n) + 1

View File

@ -1234,8 +1234,9 @@ class StockItemCreate(AjaxCreateView):
part = self.get_part(form=form)
if part is not None:
sn = part.getNextSerialNumber()
form.field_placeholder['serial_numbers'] = _('Next available serial number is') + ' ' + str(sn)
# Add placeholder text for the serial number field
form.field_placeholder['serial_numbers'] = part.getSerialNumberString()
form.rebuild_layout()
@ -1353,11 +1354,6 @@ class StockItemCreate(AjaxCreateView):
part = Part.objects.get(id=part_id)
quantity = Decimal(form['quantity'].value())
sn = part.getNextSerialNumber()
form.field_placeholder['serial_numbers'] = _("Next available serial number is") + " " + str(sn)
form.rebuild_layout()
except (Part.DoesNotExist, ValueError, InvalidOperation):
part = None
quantity = 1