diff --git a/hb_server/apps/mtm/views.py b/hb_server/apps/mtm/views.py index d218d7b..d9c9eaf 100644 --- a/hb_server/apps/mtm/views.py +++ b/hb_server/apps/mtm/views.py @@ -53,13 +53,13 @@ class ProcessViewSet(PageOrNot, CreateUpdateModelAMixin, ModelViewSet): ordering_fields = ['number'] ordering = ['number'] - @action(methods=['get'], detail=True, perms_map={'get':'process_update'}, pagination_class=None, serializer_class=StepSerializer) + @action(methods=['get'], detail=True, perms_map={'get':'process_update'}, pagination_class=None, serializer_class=StepDetailSerializer) def steps(self, request, pk=None): """ 工序下的子工序 """ process = self.get_object() - serializer = self.serializer_class(instance=Step.objects.filter(process=process, is_deleted=False), many=True) + serializer = self.serializer_class(instance=Step.objects.prefetch_related('equipments').filter(process=process, is_deleted=False), many=True) return Response(serializer.data) class StepViewSet(OptimizationMixin, CreateUpdateModelAMixin, CreateModelMixin, UpdateModelMixin, RetrieveModelMixin, DestroyModelMixin, GenericViewSet): @@ -74,7 +74,9 @@ class StepViewSet(OptimizationMixin, CreateUpdateModelAMixin, CreateModelMixin, ordering = ['sort'] def get_serializer_class(self): - return StepDetailSerializer + if self.action == 'retrieve': + return StepDetailSerializer + return StepSerializer # class ProductProcessViewSet(PageOrNot, CreateModelMixin, UpdateModelMixin, ListModelMixin, DestroyModelMixin, GenericViewSet): # """