test_init修改

This commit is contained in:
caoqianming 2021-12-15 10:17:21 +08:00
parent 275068a7a5
commit 24738bfde0
2 changed files with 9 additions and 7 deletions

View File

@ -288,9 +288,10 @@ class WpmTestRecordCreateSerializer(serializers.ModelSerializer):
record_data = WpmTestRecordItemCreateSerializer(many=True) record_data = WpmTestRecordItemCreateSerializer(many=True)
wproduct = serializers.PrimaryKeyRelatedField(queryset=WProduct.objects.all(), required=True) wproduct = serializers.PrimaryKeyRelatedField(queryset=WProduct.objects.all(), required=True)
is_testok = serializers.BooleanField(required=False) is_testok = serializers.BooleanField(required=False)
origin_test = serializers.PrimaryKeyRelatedField(queryset=TestRecord.objects.all(), default=None)
class Meta: class Meta:
model = TestRecord model = TestRecord
fields = ['form', 'record_data', 'is_testok', 'wproduct', 'is_submited'] fields = ['form', 'record_data', 'is_testok', 'wproduct', 'is_submited', 'origin_test']
class WpmTestFormInitSerializer(serializers.Serializer): class WpmTestFormInitSerializer(serializers.Serializer):
wproduct = serializers.PrimaryKeyRelatedField(queryset=WProduct.objects.all(), required=True) wproduct = serializers.PrimaryKeyRelatedField(queryset=WProduct.objects.all(), required=True)

View File

@ -197,14 +197,16 @@ class WProductViewSet(ListModelMixin, GenericViewSet):
if wproduct.test: if wproduct.test:
raise exceptions.APIException('存在进行中检验') raise exceptions.APIException('存在进行中检验')
data = RecordFormDetailSerializer(instance=form).data
data['origin_test'] = None
# 如果是复检, 需要带入原数据 # 如果是复检, 需要带入原数据
if wproduct.act_state == WProduct.WPR_ACT_STATE_TORETEST: if wproduct.act_state == WProduct.WPR_ACT_STATE_TORETEST:
# 查找最近一条检验记录 # 查找最近一条检验记录
trs = wproduct.last_process_test trs = wproduct.last_process_test
if trs: if trs:
origin_test = TestRecordDetailSerializer(instance=trs).data origin_test = TestRecordDetailSerializer(instance=trs).data
data = RecordFormDetailSerializer(instance=form).data data['origin_test_'] = origin_test
data['origin_test'] = origin_test data['origin_test'] = origin_test.get('id', None)
o_dict = {} o_dict = {}
for i in origin_test['record_data']: for i in origin_test['record_data']:
o_dict[i['field_key']] = i['field_value'] o_dict[i['field_key']] = i['field_value']
@ -213,8 +215,6 @@ class WProductViewSet(ListModelMixin, GenericViewSet):
i['is_hidden'] = o_dict[i['is_hidden']] if i['is_hidden'] in o_dict else False i['is_hidden'] = o_dict[i['is_hidden']] if i['is_hidden'] in o_dict else False
else: else:
raise exceptions.APIException('原工序检验记录不存在') raise exceptions.APIException('原工序检验记录不存在')
else:
data = RecordFormDetailSerializer(instance=form).data
# 后续加入系统自带数据 # 后续加入系统自带数据
return Response(data) return Response(data)
@ -239,7 +239,8 @@ class WProductViewSet(ListModelMixin, GenericViewSet):
savedict = dict(create_by = self.request.user, savedict = dict(create_by = self.request.user,
material=wproduct.material, number=wproduct.number, subproduction_plan=wproduct.subproduction_plan, step=wproduct.step) material=wproduct.material, number=wproduct.number, subproduction_plan=wproduct.subproduction_plan, step=wproduct.step)
if wproduct.act_state == WProduct.WPR_ACT_STATE_TORETEST: if wproduct.act_state == WProduct.WPR_ACT_STATE_TORETEST:
savedict['origin_test'] = wproduct.last_process_test if not vdata['origin_test']:
raise exceptions.APIException('自检记录不存在')
savedict['type'] = TestRecord.TEST_PROCESS_RE savedict['type'] = TestRecord.TEST_PROCESS_RE
elif wproduct.act_state == WProduct.WPR_ACT_STATE_TOFINALTEST: elif wproduct.act_state == WProduct.WPR_ACT_STATE_TOFINALTEST:
savedict['type'] = TestRecord.TEST_FINAL savedict['type'] = TestRecord.TEST_FINAL