operationrecord增加wproduct筛选条件
This commit is contained in:
parent
630edfc785
commit
5efd8fe32a
|
@ -2,10 +2,11 @@ from django.db.models import base
|
|||
from rest_framework import urlpatterns
|
||||
from django.urls import path, include
|
||||
from rest_framework.routers import DefaultRouter
|
||||
from apps.develop.views import CleanDataView, UpdateCuttingView
|
||||
from apps.develop.views import CleanDataView, UpdateCuttingView, UpdateLastTestResult
|
||||
|
||||
urlpatterns = [
|
||||
path('cleandata/', CleanDataView.as_view()),
|
||||
path('update_cutting/', UpdateCuttingView.as_view())
|
||||
path('update_cutting/', UpdateCuttingView.as_view()),
|
||||
path('update_last_result/', UpdateLastTestResult.as_view())
|
||||
]
|
||||
|
||||
|
|
|
@ -47,3 +47,18 @@ class UpdateCuttingView(APIView):
|
|||
WproductFlow.objects.filter(wproduct=i).update(coperation=op)
|
||||
WpmServies.update_cutting_list_with_operation(op)
|
||||
return Response()
|
||||
|
||||
from apps.qm.models import TestRecord
|
||||
class UpdateLastTestResult(APIView):
|
||||
permission_classes = [IsAdminUser]
|
||||
@transaction.atomic
|
||||
def post(self, request, format=None):
|
||||
"""
|
||||
更新最后一次检验结果
|
||||
"""
|
||||
for i in WProduct.objects.all():
|
||||
tr = TestRecord.objects.filter(wproduct=i, is_submited=True).order_by('-id').first()
|
||||
if tr:
|
||||
i.last_test_result = tr.is_testok
|
||||
i.save()
|
||||
return Response()
|
||||
|
|
|
@ -2,7 +2,7 @@ from django_filters import rest_framework as filters
|
|||
from apps.mtm.models import Material, Step
|
||||
|
||||
from apps.wpm.services import WpmServies
|
||||
from .models import Operation, OperationMaterial, WMaterial, WProduct
|
||||
from .models import Operation, OperationMaterial, OperationRecord, WMaterial, WProduct
|
||||
|
||||
class WMaterialFilterSet(filters.FilterSet):
|
||||
|
||||
|
@ -40,3 +40,14 @@ class CuttingFilterSet(filters.FilterSet):
|
|||
class Meta:
|
||||
model = OperationMaterial
|
||||
fields = ['operation', 'subproduction_plan', 'material']
|
||||
|
||||
|
||||
class OperationRecordFilterSet(filters.FilterSet):
|
||||
wproduct = filters.NumberFilter(method='filter_wproduct')
|
||||
class Meta:
|
||||
model = OperationRecord
|
||||
fields = ['operation', 'form']
|
||||
|
||||
def filter_wproduct(self, queryset, name, value):
|
||||
queryset = queryset.filter(operation__ow_operation__wproduct__id=value)
|
||||
return queryset
|
|
@ -19,7 +19,7 @@ from apps.system.mixins import CreateUpdateModelAMixin, OptimizationMixin
|
|||
from rest_framework.decorators import action
|
||||
from apps.wf.models import Workflow
|
||||
from apps.wf.serializers import WorkflowSimpleSerializer
|
||||
from apps.wpm.filters import CuttingFilterSet, WMaterialFilterSet, WProductFilterSet
|
||||
from apps.wpm.filters import CuttingFilterSet, OperationRecordFilterSet, WMaterialFilterSet, WProductFilterSet
|
||||
from apps.wpm.models import OperationEquip, OperationWproduct, Pick, PickWproduct, WMaterial, WProduct, Operation, OperationMaterial, OperationRecord, OperationRecordItem, WprouctTicket
|
||||
|
||||
from apps.wpm.serializers import CuttingListSerializer, OperationEquipListSerializer, OperationEquipUpdateSerializer, OperationMaterialCreate1ListSerailizer, OperationMaterialCreate1Serailizer, OperationMaterialCreate2ListSerailizer, OperationMaterialCreate2Serailizer, OperationMaterialCreate3Serializer, OperationMaterialListSerializer, OperationRecordDetailSerializer, OperationRecordListSerializer, OperationRecordSubmitSerializer, OperationUpdateSerializer, OperationWproductListSerializer, OperationCreateSerializer, OperationDetailSerializer, OperationListSerializer, PickHalfSerializer, PickHalfsSerializer, PickSerializer, OperationInitSerializer, OperationSubmitSerializer, ScrapSerializer, WMaterialListSerializer, WProductCardSerializer, WProductDetailSerializer, WProductListSerializer, WplanPutInSerializer, WpmTestFormInitSerializer, WpmTestRecordCreateSerializer, WproductMtestSerializer, WproductPutInSerializer, WproductPutInsSerializer, WproductTicketListSerializer
|
||||
|
@ -781,7 +781,7 @@ class OperationRecordViewSet(ListModelMixin, DestroyModelMixin, UpdateModelMixin
|
|||
perms_map={'*':'*'}
|
||||
queryset = OperationRecord.objects.select_related('operation', 'form').all()
|
||||
serializer_class = OperationRecordListSerializer
|
||||
filterset_fields = ['operation', 'form']
|
||||
filterset_class = OperationRecordFilterSet
|
||||
ordering_fields = ['id']
|
||||
ordering = ['-id']
|
||||
|
||||
|
|
Loading…
Reference in New Issue