From 9315efe6f4dbe32547dede13ee7a43774fa0170c Mon Sep 17 00:00:00 2001 From: caoqianming Date: Fri, 3 Nov 2023 09:07:33 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=B8=80=E4=BA=9B=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/models.py | 2 +- apps/wpm/views.py | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/wpm/models.py b/apps/wpm/models.py index cb8357b1..824ed964 100644 --- a/apps/wpm/models.py +++ b/apps/wpm/models.py @@ -145,7 +145,7 @@ class Mlog(CommonADModel): class Mlogb(BaseModel): mlog = models.ForeignKey(Mlog, verbose_name='关联日志', - on_delete=models.CASCADE) + on_delete=models.CASCADE, related_name='b_mlog') material_out = models.ForeignKey( Material, verbose_name='产物', on_delete=models.CASCADE, related_name='mlogb_material_out') count_ok = models.PositiveIntegerField('合格数量', default=0) diff --git a/apps/wpm/views.py b/apps/wpm/views.py index 44d00818..b1cf9951 100644 --- a/apps/wpm/views.py +++ b/apps/wpm/views.py @@ -1,4 +1,5 @@ from django.db import transaction +from django.db.models import Prefetch from django.shortcuts import render from rest_framework.decorators import action from rest_framework.exceptions import ParseError @@ -12,7 +13,7 @@ from apps.utils.viewsets import CustomGenericViewSet, CustomModelViewSet from apps.utils.mixins import BulkCreateModelMixin from .filters import SfLogExpFilter, SfLogFilter, WMaterialFilter, MlogFilter, HandoverFilter -from .models import SfLog, SfLogExp, StLog, WMaterial, Mlog, Handover +from .models import SfLog, SfLogExp, StLog, WMaterial, Mlog, Handover, Mlogb from .serializers import (SflogExpSerializer, SfLogSerializer, StLogSerializer, WMaterialSerializer, MlogSerializer, MlogRelatedSerializer, DeptBatchSerializer, HandoverSerializer, GenHandoverSerializer, GenHandoverWmSerializer) from .services import mlog_submit, update_mtask, handover_submit @@ -124,7 +125,7 @@ class MlogViewSet(CustomModelViewSet): serializer_class = MlogSerializer select_related_fields = ['create_by', 'update_by', 'mtask', 'handle_user', 'handle_user_2', 'equipment', 'equipment_2'] - prefetch_related_fields = ['handle_users', 'material_outs'] + prefetch_related_fields = ['handle_users', 'material_outs', 'b_mlog'] filterset_class = MlogFilter def perform_destroy(self, instance):