修改qm bug
This commit is contained in:
parent
3664971a17
commit
229ab9b34a
|
@ -50,12 +50,6 @@ class TestRecordCreateSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = TestRecord
|
model = TestRecord
|
||||||
fields = ['form', 'record_data', 'is_testok', 'fifo_item']
|
fields = ['form', 'record_data', 'is_testok', 'fifo_item']
|
||||||
|
|
||||||
def create(self, validated_data):
|
|
||||||
validated_data.pop('record_data')
|
|
||||||
if 'is_testok' not in validated_data:
|
|
||||||
raise serializers.ValidationError('未填写检测结论')
|
|
||||||
return super().create(validated_data)
|
|
||||||
|
|
||||||
class TestRecordListSerializer(serializers.ModelSerializer):
|
class TestRecordListSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
|
@ -3,6 +3,9 @@ from apps.qm.models import Standard, TestItem, TestRecord, TestRecordItem
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
from rest_framework.viewsets import ModelViewSet
|
from rest_framework.viewsets import ModelViewSet
|
||||||
from apps.system.mixins import CreateUpdateModelAMixin
|
from apps.system.mixins import CreateUpdateModelAMixin
|
||||||
|
from rest_framework.exceptions import APIException
|
||||||
|
from rest_framework.response import Response
|
||||||
|
from rest_framework import status
|
||||||
# Create your views here.
|
# Create your views here.
|
||||||
class StandardViewSet(CreateUpdateModelAMixin, ModelViewSet):
|
class StandardViewSet(CreateUpdateModelAMixin, ModelViewSet):
|
||||||
"""
|
"""
|
||||||
|
@ -56,10 +59,17 @@ class TestRecordViewSet(ModelViewSet):
|
||||||
return TestRecordDetailSerializer
|
return TestRecordDetailSerializer
|
||||||
return super().get_serializer_class()
|
return super().get_serializer_class()
|
||||||
|
|
||||||
def perform_create(self, serializer):
|
def create(self, request, *args, **kwargs):
|
||||||
|
serializer = self.get_serializer(data=request.data)
|
||||||
|
serializer.is_valid(raise_exception=True)
|
||||||
|
vdata = serializer.validated_data
|
||||||
|
record_data = vdata.pop('record_data')
|
||||||
|
if 'is_testok' not in vdata:
|
||||||
|
raise APIException('未填写检测结论')
|
||||||
|
|
||||||
obj = serializer.save(create_by = self.request.user)
|
obj = serializer.save(create_by = self.request.user)
|
||||||
tris = []
|
tris = []
|
||||||
for m in self.request.data['record_data']: # 保存记录详情
|
for m in record_data: # 保存记录详情
|
||||||
form_field = m['form_field']
|
form_field = m['form_field']
|
||||||
m['field_name'] = form_field.field_name
|
m['field_name'] = form_field.field_name
|
||||||
m['field_key'] = form_field.field_key
|
m['field_key'] = form_field.field_key
|
||||||
|
@ -76,4 +86,6 @@ class TestRecordViewSet(ModelViewSet):
|
||||||
if obj.fifo_item:
|
if obj.fifo_item:
|
||||||
obj.fifo_item.is_testok = True if obj.is_testok else False
|
obj.fifo_item.is_testok = True if obj.is_testok else False
|
||||||
obj.fifo_item.is_tested = True
|
obj.fifo_item.is_tested = True
|
||||||
obj.fifo_item.save()
|
obj.fifo_item.save()
|
||||||
|
|
||||||
|
return Response(status=status.HTTP_201_CREATED)
|
Loading…
Reference in New Issue