wpm post bug
This commit is contained in:
parent
6a4c99f18c
commit
a28282e331
|
@ -3,7 +3,7 @@ from rest_framework.serializers import ModelSerializer
|
||||||
from apps.inm.models import FIFO, FIFOItem, MaterialBatch, WareHouse
|
from apps.inm.models import FIFO, FIFOItem, MaterialBatch, WareHouse
|
||||||
from apps.inm.signals import update_inm
|
from apps.inm.signals import update_inm
|
||||||
from apps.mtm.models import Material, RecordForm, Step
|
from apps.mtm.models import Material, RecordForm, Step
|
||||||
from apps.mtm.serializers import MaterialSimpleSerializer
|
from apps.mtm.serializers import MaterialSimpleSerializer, StepSimpleSerializer
|
||||||
|
|
||||||
from apps.pm.models import SubProductionPlan, SubProductionProgress
|
from apps.pm.models import SubProductionPlan, SubProductionProgress
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
|
@ -80,6 +80,15 @@ class WMaterialListSerializer(serializers.ModelSerializer):
|
||||||
model = WMaterial
|
model = WMaterial
|
||||||
fields = '__all__'
|
fields = '__all__'
|
||||||
|
|
||||||
|
class WProductListSerializer(serializers.ModelSerializer):
|
||||||
|
"""
|
||||||
|
半成品列表
|
||||||
|
"""
|
||||||
|
m_state_ = MaterialSimpleSerializer(source='m_state', read_only=True)
|
||||||
|
p_state_ = StepSimpleSerializer(source='p_state', read_only=True)
|
||||||
|
class Meta:
|
||||||
|
model = WProduct
|
||||||
|
fields = '__all__'
|
||||||
|
|
||||||
class OperationInitSerializer(serializers.Serializer):
|
class OperationInitSerializer(serializers.Serializer):
|
||||||
step = serializers.PrimaryKeyRelatedField(queryset=Step.objects.all(), label="子工序ID")
|
step = serializers.PrimaryKeyRelatedField(queryset=Step.objects.all(), label="子工序ID")
|
||||||
|
@ -136,6 +145,7 @@ class OperationSubmitSerializer(serializers.Serializer):
|
||||||
input = DoInputSerializer(many=True, required=False)
|
input = DoInputSerializer(many=True, required=False)
|
||||||
output = DoOutputSerializer(many=True, required=False)
|
output = DoOutputSerializer(many=True, required=False)
|
||||||
forms = OperationRecordSerializer(many=True, required=False)
|
forms = OperationRecordSerializer(many=True, required=False)
|
||||||
|
remark = serializers.CharField(required=False, label='操作备注')
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,10 +3,11 @@ from rest_framework import urlpatterns
|
||||||
from django.urls import path, include
|
from django.urls import path, include
|
||||||
from rest_framework.routers import DefaultRouter
|
from rest_framework.routers import DefaultRouter
|
||||||
|
|
||||||
from apps.wpm.views import DoFormInit, DoFormSubmit, WMaterialViewSet, WPlanViewSet
|
from apps.wpm.views import DoFormInit, DoFormSubmit, WMaterialViewSet, WPlanViewSet, WProductViewSet
|
||||||
|
|
||||||
router = DefaultRouter()
|
router = DefaultRouter()
|
||||||
router.register('wmaterial', WMaterialViewSet, basename='wmaterial')
|
router.register('wmaterial', WMaterialViewSet, basename='wmaterial')
|
||||||
|
router.register('wproduct', WProductViewSet, basename='wproduct')
|
||||||
router.register('subplan', WPlanViewSet, basename='wplan')
|
router.register('subplan', WPlanViewSet, basename='wplan')
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('do/init/', DoFormInit.as_view()),
|
path('do/init/', DoFormInit.as_view()),
|
||||||
|
|
|
@ -14,7 +14,7 @@ from apps.system.mixins import CreateUpdateModelAMixin, OptimizationMixin
|
||||||
from rest_framework.decorators import action
|
from rest_framework.decorators import action
|
||||||
from apps.wpm.models import WMaterial, WProduct, Operation, OperationMaterial, OperationRecord, OperationRecordItem
|
from apps.wpm.models import WMaterial, WProduct, Operation, OperationMaterial, OperationRecord, OperationRecordItem
|
||||||
|
|
||||||
from apps.wpm.serializers import PickSerializer, OperationInitSerializer, OperationSubmitSerializer, WMaterialListSerializer
|
from apps.wpm.serializers import PickSerializer, OperationInitSerializer, OperationSubmitSerializer, WMaterialListSerializer, WProductListSerializer
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
# Create your views here.
|
# Create your views here.
|
||||||
class WPlanViewSet(ListModelMixin, GenericViewSet):
|
class WPlanViewSet(ListModelMixin, GenericViewSet):
|
||||||
|
@ -50,6 +50,18 @@ class WMaterialViewSet(CreateUpdateModelAMixin, ListModelMixin, GenericViewSet):
|
||||||
serializer.save()
|
serializer.save()
|
||||||
return Response()
|
return Response()
|
||||||
|
|
||||||
|
class WProductViewSet(ListModelMixin, GenericViewSet):
|
||||||
|
"""
|
||||||
|
半成品
|
||||||
|
"""
|
||||||
|
perms_map={'*':'*'}
|
||||||
|
queryset = WProduct.objects.select_related('p_state', 'm_state').all()
|
||||||
|
serializer_class = WProductListSerializer
|
||||||
|
filterset_fields = ['p_state', 'subproduction_plan', 'm_state', 'production_plan', 'p_state__process']
|
||||||
|
search_fields = ['number']
|
||||||
|
ordering_fields = ['id']
|
||||||
|
ordering = ['id']
|
||||||
|
|
||||||
class DoFormInit(CreateAPIView, GenericAPIView):
|
class DoFormInit(CreateAPIView, GenericAPIView):
|
||||||
perms_map={'*':'*'}
|
perms_map={'*':'*'}
|
||||||
serializer_class=OperationInitSerializer
|
serializer_class=OperationInitSerializer
|
||||||
|
@ -114,7 +126,7 @@ class DoFormSubmit(CreateAPIView, GenericAPIView):
|
||||||
if 'wproducts' in data and data['wproducts']:
|
if 'wproducts' in data and data['wproducts']:
|
||||||
action_obj.wproducts = data['wproducts']
|
action_obj.wproducts = data['wproducts']
|
||||||
action_obj.m_state = vdata[0].m_state
|
action_obj.m_state = vdata[0].m_state
|
||||||
action_obj.remark = data['remark'] # 操作备注
|
action_obj.remark = vdata.get('remark', '') # 操作备注
|
||||||
action_obj.create_by = request.user
|
action_obj.create_by = request.user
|
||||||
action_obj.save()
|
action_obj.save()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue