mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
also validate serial number
This commit is contained in:
parent
29cd2ee9bd
commit
b0fb5657e8
@ -39,6 +39,7 @@ import label.models
|
||||
from InvenTree.status_codes import StockStatus, StockHistoryCode
|
||||
from InvenTree.models import InvenTreeTree, InvenTreeAttachment
|
||||
from InvenTree.fields import InvenTreeModelMoneyField, InvenTreeURLField
|
||||
from InvenTree.serializers import extract_int
|
||||
|
||||
from users.models import Owner
|
||||
|
||||
@ -236,17 +237,7 @@ class StockItem(MPTTModel):
|
||||
serial_int = 0
|
||||
|
||||
if serial is not None:
|
||||
|
||||
serial = str(serial)
|
||||
|
||||
# Look at the start of the string - can it be "integerized"?
|
||||
result = re.match(r'^(\d+)', serial)
|
||||
|
||||
if result and len(result.groups()) == 1:
|
||||
try:
|
||||
serial_int = int(result.groups()[0])
|
||||
except:
|
||||
serial_int = 0
|
||||
serial_int = extract_int(str(serial))
|
||||
|
||||
self.serial_int = serial_int
|
||||
|
||||
|
@ -32,7 +32,7 @@ from company.serializers import SupplierPartSerializer
|
||||
|
||||
import InvenTree.helpers
|
||||
import InvenTree.serializers
|
||||
from InvenTree.serializers import InvenTreeDecimalField
|
||||
from InvenTree.serializers import InvenTreeDecimalField, extract_int
|
||||
|
||||
from part.serializers import PartBriefSerializer
|
||||
|
||||
@ -72,6 +72,11 @@ class StockItemSerializerBrief(InvenTree.serializers.InvenTreeModelSerializer):
|
||||
'supplier_part',
|
||||
'uid',
|
||||
]
|
||||
|
||||
def validate_serial(self, value):
|
||||
if extract_int(value) > 2147483647:
|
||||
raise serializers.ValidationError('serial is to to big')
|
||||
return value
|
||||
|
||||
|
||||
class StockItemSerializer(InvenTree.serializers.InvenTreeModelSerializer):
|
||||
|
Loading…
Reference in New Issue
Block a user