采购订单入库

This commit is contained in:
caoqianming 2022-02-10 09:16:09 +08:00
parent efdc534a02
commit 7528f49709
3 changed files with 16 additions and 14 deletions

View File

@ -80,7 +80,7 @@ class FIFOItemCreateSerializer(serializers.ModelSerializer):
class Meta:
model = FIFOItem
fields = ['warehouse',
'material', 'batch', 'fifo', 'files', 'pu_order_item']
'material', 'batch', 'fifo', 'files', 'pu_order_item', 'count']
def create(self, validated_data):
fifo = validated_data['fifo']
@ -97,7 +97,7 @@ class FIFOItemCreateSerializer(serializers.ModelSerializer):
class FIFOItemUpdateSerializer(serializers.ModelSerializer):
class Meta:
model = FIFOItem
fields = ['warehouse', 'batch', 'files']
fields = ['warehouse', 'batch', 'files', 'count']
class FIFOItemSerializer(serializers.ModelSerializer):
warehouse_ = WareHouseSimpleSerializer(source='warehouse', read_only=True)

View File

@ -25,7 +25,8 @@ class WarehouseViewSet(CreateUpdateModelAMixin, ModelViewSet):
"""
仓库-增删改查
"""
perms_map = {'*': '*'}
perms_map = {'get': '*', 'post':'warehouse_create',
'put':'warehouse_update', 'delete':'warehouse_delete'}
queryset = WareHouse.objects.select_related('create_by').all()
serializer_class = WareHouseSerializer
search_fields = ['name', 'number', 'place']
@ -43,7 +44,7 @@ class InventoryViewSet(ListModelMixin, GenericViewSet):
"""
仓库物料表
"""
perms_map = {'*': '*'}
perms_map = {'get': '*'}
queryset = Inventory.objects.select_related(
'material', 'warehouse').filter(count__gt=0).all()
serializer_class = InventorySerializer
@ -54,7 +55,7 @@ class InventoryViewSet(ListModelMixin, GenericViewSet):
class MaterialBatchViewSet(ListModelMixin, GenericViewSet):
perms_map = {'*': '*'}
perms_map = {'get': '*'}
queryset = MaterialBatch.objects.select_related(
'material', 'warehouse').filter(count__gt=0).all()
serializer_class = MaterialBatchSerializer
@ -81,7 +82,8 @@ class FIFOItemViewSet(ListModelMixin, CreateModelMixin, DestroyModelMixin, Updat
"""
出入库记录详情表
"""
perms_map = {'*': '*'}
perms_map = {'get': '*', 'post':'fifoitem_create',
'put':'fifoitem_update', 'delete':'fifoitem_delete'}
queryset = FIFOItem.objects.select_related('material', 'fifo').prefetch_related('files').all()
serializer_class = FIFOItemSerializer
filterset_fields = ['material', 'fifo',
@ -115,7 +117,7 @@ class FIFOItemViewSet(ListModelMixin, CreateModelMixin, DestroyModelMixin, Updat
raise ValidationError('该出入库记录已审核')
return super().destroy(request, *args, **kwargs)
@action(methods=['post'], detail=False, perms_map={'post': '*'}, serializer_class=InmTestRecordCreateSerializer)
@action(methods=['post'], detail=False, perms_map={'post': 'fifoitem_test'}, serializer_class=InmTestRecordCreateSerializer)
def test(self, request, pk=None):
"""
检验
@ -147,7 +149,7 @@ class FIFOViewSet(ListModelMixin, DestroyModelMixin, GenericViewSet):
"""
出入库记录
"""
perms_map = {'*': '*'}
perms_map = {'get': '*', 'delete':'fifo_delete'}
queryset = FIFO.objects.select_related('auditor', 'create_by')
serializer_class = FIFOListSerializer
filterset_fields = '__all__'
@ -166,7 +168,7 @@ class FIFOViewSet(ListModelMixin, DestroyModelMixin, GenericViewSet):
raise exceptions.APIException('该记录已审核,不可删除')
return super().destroy(request, *args, **kwargs)
@action(methods=['post'], detail=False, perms_map={'post': '*'}, serializer_class=FIFOInPurSerializer)
@action(methods=['post'], detail=False, perms_map={'post': 'fifo_in_pur'}, serializer_class=FIFOInPurSerializer)
def in_pur(self, request, pk=None):
"""
采购入库
@ -176,7 +178,7 @@ class FIFOViewSet(ListModelMixin, DestroyModelMixin, GenericViewSet):
serializer.save(create_by=request.user)
return Response()
@action(methods=['post'], detail=False, perms_map={'post': '*'},
@action(methods=['post'], detail=False, perms_map={'post': 'fifo_in_other'},
serializer_class=FIFOInOtherSerializer)
def in_other(self, request, pk=None):
"""
@ -187,7 +189,7 @@ class FIFOViewSet(ListModelMixin, DestroyModelMixin, GenericViewSet):
serializer.save(create_by=request.user)
return Response()
@action(methods=['post'], detail=True, perms_map={'post': '*'}, serializer_class=serializers.Serializer)
@action(methods=['post'], detail=True, perms_map={'post': 'fifo_audit'}, serializer_class=serializers.Serializer)
def audit(self, request, pk=None):
"""
审核通过
@ -213,7 +215,7 @@ class IProductViewSet(ListModelMixin, GenericViewSet):
"""
半成品库存表
"""
perms_map = {'*': '*'}
perms_map = {'get': '*'}
queryset = IProduct.objects.select_related(
'material', 'warehouse',
'wproduct__subproduction_plan__production_plan__order',

View File

@ -45,7 +45,7 @@ def get_file_list(file_path):
return dir_list
class LogView(APIView):
permission_classes = [IsAuthenticated]
@swagger_auto_schema(manual_parameters=[
openapi.Parameter('name', openapi.IN_QUERY, description='日志文件名', type=openapi.TYPE_STRING)
])
@ -82,7 +82,7 @@ class LogView(APIView):
class LogDetailView(APIView):
permission_classes = [IsAuthenticated]
def get(self, request, name):
"""
查看日志详情