fix: warehouse
This commit is contained in:
parent
a54bab5bce
commit
54a1856f15
@ -1813,16 +1813,19 @@ class WarehouseViewSet(ModelViewSet, PermissionsAwareDocumentCountMixin):
|
|||||||
try:
|
try:
|
||||||
print(request.data)
|
print(request.data)
|
||||||
serializer = WarehouseSerializer(data=request.data)
|
serializer = WarehouseSerializer(data=request.data)
|
||||||
name = request.data.get("name", "")
|
name = ""
|
||||||
type = request.data.get("type", Warehouse.WAREHOUSE)
|
type = Warehouse.WAREHOUSE
|
||||||
parent_warehouse = request.data.get("parent_warehouse", None)
|
parent_warehouse = None
|
||||||
|
if serializer.is_valid():
|
||||||
|
name = serializer.validated_data.get("name", "")
|
||||||
|
type = serializer.validated_data.get("type", Warehouse.WAREHOUSE)
|
||||||
|
parent_warehouse = serializer.validated_data.get('parent_warehouse',None)
|
||||||
check_warehouse = Warehouse.objects.filter(
|
check_warehouse = Warehouse.objects.filter(
|
||||||
name = name,
|
name = name,
|
||||||
type = type,
|
type = type,
|
||||||
parent_warehouse=parent_warehouse
|
parent_warehouse=parent_warehouse
|
||||||
)
|
)
|
||||||
print(check_warehouse)
|
|
||||||
if check_warehouse:
|
if check_warehouse:
|
||||||
return Response({'status':400,
|
return Response({'status':400,
|
||||||
'message':'created fail'},status=status.HTTP_400_BAD_REQUEST)
|
'message':'created fail'},status=status.HTTP_400_BAD_REQUEST)
|
||||||
@ -1834,15 +1837,14 @@ class WarehouseViewSet(ModelViewSet, PermissionsAwareDocumentCountMixin):
|
|||||||
return Response({'status': 400,
|
return Response({'status': 400,
|
||||||
'message': 'parent_warehouse is required for Boxcase type'}, status=status.HTTP_400_BAD_REQUEST)
|
'message': 'parent_warehouse is required for Boxcase type'}, status=status.HTTP_400_BAD_REQUEST)
|
||||||
|
|
||||||
id = request.data.get('parent_warehouse',0)
|
|
||||||
if serializer.is_valid(raise_exception=True):
|
if serializer.is_valid(raise_exception=True):
|
||||||
parent_warehouse =Warehouse.objects.filter(id=id).first()
|
parent_warehouse = Warehouse.objects.filter(id=parent_warehouse.id if parent_warehouse else 0).first()
|
||||||
|
|
||||||
if request.data.get("type", "") == "" and not parent_warehouse:
|
if serializer.validated_data.get("type", "") == "" and not parent_warehouse:
|
||||||
serializer.save(type = Warehouse.WAREHOUSE)
|
serializer.save(type = Warehouse.WAREHOUSE)
|
||||||
elif request.data.get("type", "") == Warehouse.SHELF and getattr(parent_warehouse, 'type', "") == Warehouse.WAREHOUSE :
|
elif serializer.validated_data.get("type", "") == Warehouse.SHELF and getattr(parent_warehouse, 'type', "") == Warehouse.WAREHOUSE :
|
||||||
serializer.save(type = Warehouse.SHELF, parent_warehouse = parent_warehouse)
|
serializer.save(type = Warehouse.SHELF, parent_warehouse = parent_warehouse)
|
||||||
elif request.data.get("type", "") == Warehouse.BOXCASE and getattr(parent_warehouse, 'type', "") == Warehouse.SHELF :
|
elif serializer.validated_data.get("type", "") == Warehouse.BOXCASE and getattr(parent_warehouse, 'type', "") == Warehouse.SHELF :
|
||||||
serializer.save(type = Warehouse.BOXCASE, parent_warehouse = parent_warehouse)
|
serializer.save(type = Warehouse.BOXCASE, parent_warehouse = parent_warehouse)
|
||||||
else:
|
else:
|
||||||
return Response({'status':400,
|
return Response({'status':400,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user