feat: 检验项和缺陷项删除的时候同步删除qct

This commit is contained in:
caoqianming 2025-04-16 19:12:49 +08:00
parent b5c21b7472
commit 9179803fda
1 changed files with 9 additions and 5 deletions

View File

@ -34,6 +34,11 @@ class DefectViewSet(CustomModelViewSet):
filterset_fields = ["cate", "okcate"]
search_fields = ["name", "code"]
@transaction.atomic
def perform_destroy(self, instance):
QctDefect.objects.filter(defect=instance).delete()
instance.delete()
class QctViewSet(CustomModelViewSet):
"""
检测模板
@ -136,11 +141,10 @@ class TestItemViewSet(CustomModelViewSet):
item["affects_name"] = ";".join([affects_dict.get(x, '未知') for x in affects])
return data
def destroy(self, request, *args, **kwargs):
ins = self.get_object()
if FtestItem.objects.filter(testitem=ins).exists():
raise ParseError("质检项目已使用,无法删除")
return super().destroy(request, *args, **kwargs)
@transaction.atomic
def perform_destroy(self, instance):
QctTestItem.objects.filter(testitem=instance).delete()
instance.delete()
class QuaStatViewSet(ListModelMixin, BulkUpdateModelMixin, CustomGenericViewSet):