出入库记录列表

This commit is contained in:
caoqianming 2021-10-28 15:40:26 +08:00
parent 4453b4789f
commit 4ac2698ba5
3 changed files with 34 additions and 5 deletions

View File

@ -1,6 +1,6 @@
from rest_framework import serializers
from apps.inm.models import FIFO, FIFODetail, IProduct, WareHouse,Inventory
from apps.inm.models import FIFO, FIFODetail, IProduct, MaterialBatch, WareHouse,Inventory
from apps.system.serializers import UserSimpleSerializer
from apps.mtm.serializers import MaterialSimpleSerializer
@ -28,6 +28,19 @@ class InventorySerializer(serializers. ModelSerializer):
model = Inventory
fields = '__all__'
class MaterialBatchSerializer(serializers. ModelSerializer):
material_= MaterialSimpleSerializer(source='material', read_only=True)
warehouse_ = WareHouseSimpleSerializer(source='warehouse', read_only=True)
class Meta:
model = MaterialBatch
fields = '__all__'
class FIFOListSerializer(serializers.ModelSerializer):
warehouse_ = WareHouseSimpleSerializer(source='warehouse', read_only=True)
operator_ = UserSimpleSerializer(source='operator', read_only=True)
class Meta:
model=FIFO
fields = '__all__'
class IProductInPurSerializer(serializers.ModelSerializer):
class Meta:

View File

@ -1,12 +1,13 @@
from django.db.models import base
from rest_framework import urlpatterns
from apps.inm.views import FIFOViewSet, WarehouseViewSet,InventoryViewSet
from apps.inm.views import FIFOViewSet, MaterialBatchViewSet, WarehouseViewSet,InventoryViewSet
from django.urls import path, include
from rest_framework.routers import DefaultRouter
router = DefaultRouter()
router.register('warehouse', WarehouseViewSet, basename='warehouse')
router.register('inventory', InventoryViewSet, basename='inventory')
router.register('materialbatch', MaterialBatchViewSet, basename='materialbatch')
router.register('fifo', FIFOViewSet, basename='fifo')
urlpatterns = [
path('', include(router.urls)),

View File

@ -3,8 +3,8 @@ from rest_framework import serializers
from rest_framework.mixins import ListModelMixin
from rest_framework.viewsets import GenericViewSet, ModelViewSet
from apps.inm.models import WareHouse,Inventory
from apps.inm.serializers import FIFOInPurSerializer, WareHouseSerializer, WareHouseCreateUpdateSerializer,InventorySerializer
from apps.inm.models import FIFO, MaterialBatch, WareHouse,Inventory
from apps.inm.serializers import FIFOInPurSerializer, FIFOListSerializer, MaterialBatchSerializer, WareHouseSerializer, WareHouseCreateUpdateSerializer,InventorySerializer
from apps.system.mixins import CreateUpdateModelAMixin, OptimizationMixin
from rest_framework.decorators import action
from rest_framework.response import Response
@ -39,11 +39,26 @@ class InventoryViewSet(ListModelMixin, GenericViewSet):
ordering_fields = ['create_time']
ordering = ['-create_time']
class FIFOViewSet(GenericViewSet):
class MaterialBatchViewSet(ListModelMixin, GenericViewSet):
perms_map = {'*': '*'}
queryset = MaterialBatch.objects.select_related('material', 'warehouse').all()
serializer_class = MaterialBatchSerializer
filterset_fields = []
search_fields = ['material', 'warehouse']
ordering_fields = ['create_time']
ordering = ['-create_time']
class FIFOViewSet(ListModelMixin, GenericViewSet):
"""
出入库记录
"""
perms_map = {'*': '*'}
queryset = FIFO.objects.all()
def get_serializer_class(self):
if self.action == 'list':
return FIFOListSerializer
@action(methods=['post'], detail=False, perms_map={'post':'*'}, serializer_class=FIFOInPurSerializer)
def in_pur(self, request, pk=None):
"""