mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Fixes for barcode decoding
This commit is contained in:
parent
a4267f76e8
commit
ccda637e3c
@ -68,7 +68,7 @@ class InvenTreeBarcodePlugin(BarcodePlugin):
|
||||
# Initially try casting to an integer
|
||||
try:
|
||||
pk = int(data)
|
||||
except (ValueError):
|
||||
except (TypeError, ValueError):
|
||||
pk = None
|
||||
|
||||
if pk is None:
|
||||
@ -89,6 +89,17 @@ class InvenTreeBarcodePlugin(BarcodePlugin):
|
||||
|
||||
for k in self.data.keys():
|
||||
if k.lower() == 'stocklocation':
|
||||
|
||||
pk = None
|
||||
|
||||
# First try simple integer lookup
|
||||
try:
|
||||
pk = int(self.data[k])
|
||||
except (TypeError, ValueError):
|
||||
pk = None
|
||||
|
||||
if pk is None:
|
||||
# Lookup by 'id' field
|
||||
try:
|
||||
pk = self.data[k]['id']
|
||||
except (AttributeError, KeyError):
|
||||
@ -106,6 +117,16 @@ class InvenTreeBarcodePlugin(BarcodePlugin):
|
||||
|
||||
for k in self.data.keys():
|
||||
if k.lower() == 'part':
|
||||
|
||||
pk = None
|
||||
|
||||
# Try integer lookup first
|
||||
try:
|
||||
pk = int(self.data[k])
|
||||
except (TypeError, ValueError):
|
||||
pk = None
|
||||
|
||||
if pk is None:
|
||||
try:
|
||||
pk = self.data[k]['id']
|
||||
except (AttributeError, KeyError):
|
||||
|
Loading…
Reference in New Issue
Block a user