diff --git a/apps/wpm/views.py b/apps/wpm/views.py index 7af96c82..3b7d5df2 100644 --- a/apps/wpm/views.py +++ b/apps/wpm/views.py @@ -491,20 +491,21 @@ class MlogbInViewSet(CreateModelMixin, UpdateModelMixin, DestroyModelMixin, Cust ins: Mlogb = instance if ins.mlog.submit_time is not None: raise ParseError('生产日志已提交不可编辑') - qs = Mlogb.objects.none() + qs = None if ins.mlogb_to: - qs = qs|Mlogb.objects.filter(id=ins.mlogb_to.id) + qs = Mlogb.objects.filter(id=ins.mlogb_to.id) ftestIds = list(Ftest.objects.filter(mlogbw_ftest__mlogb__in=qs).values_list('id', flat=True)) qs.delete() if ftestIds: Ftest.objects.filter(id__in=ftestIds).delete() - elif ins.mtask: + elif ins.parent is None and ins.mtask: query_dict = {"material_out__isnull": False, "mlog": ins.mlog, "mtask": ins.mtask} route = ins.mtask.route if route.batch_bind: query_dict["batch__contains"] = ins.batch - qs = Mlogb.objects.filter(**query_dict) | qs - # 需要删除子集ftest记录 + qs = Mlogb.objects.filter(**query_dict) + # 需要删除子集ftest记录 + if qs: ftestIds = list(Ftest.objects.filter(mlogbw_ftest__mlogb__in=qs).values_list('id', flat=True)) qs.delete() if ftestIds: