mirror of
https://github.com/inventree/InvenTree.git
synced 2025-05-05 23:08:48 +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.status_codes import StockStatus, StockHistoryCode
|
||||||
from InvenTree.models import InvenTreeTree, InvenTreeAttachment
|
from InvenTree.models import InvenTreeTree, InvenTreeAttachment
|
||||||
from InvenTree.fields import InvenTreeModelMoneyField, InvenTreeURLField
|
from InvenTree.fields import InvenTreeModelMoneyField, InvenTreeURLField
|
||||||
|
from InvenTree.serializers import extract_int
|
||||||
|
|
||||||
from users.models import Owner
|
from users.models import Owner
|
||||||
|
|
||||||
@ -236,17 +237,7 @@ class StockItem(MPTTModel):
|
|||||||
serial_int = 0
|
serial_int = 0
|
||||||
|
|
||||||
if serial is not None:
|
if serial is not None:
|
||||||
|
serial_int = extract_int(str(serial))
|
||||||
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
|
|
||||||
|
|
||||||
self.serial_int = serial_int
|
self.serial_int = serial_int
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ from company.serializers import SupplierPartSerializer
|
|||||||
|
|
||||||
import InvenTree.helpers
|
import InvenTree.helpers
|
||||||
import InvenTree.serializers
|
import InvenTree.serializers
|
||||||
from InvenTree.serializers import InvenTreeDecimalField
|
from InvenTree.serializers import InvenTreeDecimalField, extract_int
|
||||||
|
|
||||||
from part.serializers import PartBriefSerializer
|
from part.serializers import PartBriefSerializer
|
||||||
|
|
||||||
@ -72,6 +72,11 @@ class StockItemSerializerBrief(InvenTree.serializers.InvenTreeModelSerializer):
|
|||||||
'supplier_part',
|
'supplier_part',
|
||||||
'uid',
|
'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):
|
class StockItemSerializer(InvenTree.serializers.InvenTreeModelSerializer):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user