修改为origin_test

This commit is contained in:
caoqianming 2021-12-10 13:39:36 +08:00
parent 967b349e97
commit ae10c93caf
5 changed files with 29 additions and 4 deletions

View File

@ -0,0 +1,23 @@
# Generated by Django 3.2.9 on 2021-12-10 05:38
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('qm', '0015_alter_testrecord_test_record'),
]
operations = [
migrations.RemoveField(
model_name='testrecord',
name='test_record',
),
migrations.AddField(
model_name='testrecord',
name='origin_test',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='qm.testrecord', verbose_name='原检验记录'),
),
]

View File

@ -69,7 +69,7 @@ class TestRecord(CommonAModel):
step = models.ForeignKey('mtm.step', verbose_name='关联的工序步骤', on_delete=models.CASCADE, null=True, blank=True) step = models.ForeignKey('mtm.step', verbose_name='关联的工序步骤', on_delete=models.CASCADE, null=True, blank=True)
subproduction_plan = models.ForeignKey('pm.subproductionplan', verbose_name='关联的生产子计划', on_delete=models.CASCADE, null=True, blank=True) subproduction_plan = models.ForeignKey('pm.subproductionplan', verbose_name='关联的生产子计划', on_delete=models.CASCADE, null=True, blank=True)
fifo_item = models.ForeignKey('inm.fifoitem', verbose_name='关联的出入库批次', on_delete=models.CASCADE, null=True, blank=True) fifo_item = models.ForeignKey('inm.fifoitem', verbose_name='关联的出入库批次', on_delete=models.CASCADE, null=True, blank=True)
test_record = models.ForeignKey('self', verbose_name='关联的检验记录', on_delete=models.CASCADE, null=True, blank=True) origin_test = models.ForeignKey('self', verbose_name='检验记录', on_delete=models.CASCADE, null=True, blank=True)
remark = models.TextField('备注', default='') remark = models.TextField('备注', default='')

View File

@ -50,6 +50,7 @@ class TestRecordViewSet(ListModelMixin, RetrieveModelMixin, GenericViewSet):
perms_map = {'*': '*'} perms_map = {'*': '*'}
queryset = TestRecord.objects.select_related('fifo_item', 'form').all() queryset = TestRecord.objects.select_related('fifo_item', 'form').all()
serializer_class = TestRecordListSerializer serializer_class = TestRecordListSerializer
filterset_fields = ['wproduct', 'material', 'step', 'subproduction_plan', 'fifo_item', 'origin_test']
ordering = ['-id'] ordering = ['-id']
def get_serializer_class(self): def get_serializer_class(self):

View File

@ -288,6 +288,7 @@ 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)
class Meta: class Meta:
model = TestRecord model = TestRecord
fields = ['form', 'record_data', 'is_testok', 'wproduct'] fields = ['form', 'record_data', 'is_testok', 'wproduct']

View File

@ -201,11 +201,11 @@ class WProductViewSet(ListModelMixin, GenericViewSet):
# 查找最近一条检验记录 # 查找最近一条检验记录
trs = TestRecord.objects.filter(wproduct=wproduct, type=TestRecord.TEST_PROCESS).order_by('-id').first() trs = TestRecord.objects.filter(wproduct=wproduct, type=TestRecord.TEST_PROCESS).order_by('-id').first()
if trs: if trs:
origin_data = TestRecordDetailSerializer(instance=trs).data origin_test = TestRecordDetailSerializer(instance=trs).data
data = RecordFormDetailSerializer(instance=form).data data = RecordFormDetailSerializer(instance=form).data
data['origin_data'] = origin_data data['origin_test'] = origin_test
o_dict = {} o_dict = {}
for i in origin_data['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']
for i in data['form_fields']: for i in data['form_fields']:
i['origin_value'] = o_dict[i['field_key']] i['origin_value'] = o_dict[i['field_key']]