diff --git a/hb_server/apps/qm/views.py b/hb_server/apps/qm/views.py index 304d954..c980b01 100644 --- a/hb_server/apps/qm/views.py +++ b/hb_server/apps/qm/views.py @@ -92,6 +92,7 @@ class TestRecordViewSet(ListModelMixin, UpdateModelMixin, RetrieveModelMixin, De raise exceptions.APIException('存在未填写项目:'+ ','.join(list(items_not.values_list('form_field__field_name', flat=True)))) with transaction.atomic(): obj.is_submited=True + obj.update_by = request.user obj.save() if obj.wproduct: WpmService.update_wproduct_by_test(obj, request.user) # 这里已经做了日志记录和进度计算 diff --git a/hb_server/apps/wpm/serializers.py b/hb_server/apps/wpm/serializers.py index e11b56c..37c5954 100644 --- a/hb_server/apps/wpm/serializers.py +++ b/hb_server/apps/wpm/serializers.py @@ -168,6 +168,8 @@ class WProductListSerializer(DynamicFieldsSerializerMixin, serializers.ModelSeri children = serializers.SerializerMethodField() to_order_ = OrderSimpleSerializer(source='to_order', read_only=True) order_ = serializers.SerializerMethodField() + create_by_ = UserSimpleSerializer(source='create_by', read_only=True) + update_by_ = UserSimpleSerializer(source='update_by', read_only=True) class Meta: model = WProduct fields = '__all__' diff --git a/hb_server/apps/wpm/views.py b/hb_server/apps/wpm/views.py index 872fe87..0f12002 100644 --- a/hb_server/apps/wpm/views.py +++ b/hb_server/apps/wpm/views.py @@ -160,7 +160,7 @@ class WProductViewSet(ListModelMixin, RetrieveModelMixin, GenericViewSet): perms_map = {'get': '*'} queryset = WProduct.objects.select_related('step', 'material', 'subproduction_plan', 'warehouse', 'subproduction_plan__production_plan__order', - 'to_order').prefetch_related('wp_child') + 'to_order', 'update_by', 'create_by').prefetch_related('wp_child') serializer_class = WProductListSerializer filterset_class = WProductFilterSet search_fields = ['number', 'material__name', 'subproduction_plan__number'] @@ -530,7 +530,7 @@ class OperationViewSet(ListModelMixin, RetrieveModelMixin, CreateModelMixin, Upd """ perms_map = {'get': '*', 'post':'operation_create', 'put':'operation_update', 'delete':'operation_delete'} - queryset = Operation.objects.select_related('step').prefetch_related( + queryset = Operation.objects.select_related('step', 'create_by', 'update_by').prefetch_related( 'ow_operation', 'oe_operation', 'or_operation').all() serializer_class = OperationListSerializer filterset_fields = ['step', 'step__process', 'is_submited'] @@ -634,7 +634,7 @@ class OperationViewSet(ListModelMixin, RetrieveModelMixin, CreateModelMixin, Upd opm.material = i.material opm.type = SubprodctionMaterial.SUB_MA_TYPE_TOOL opm.save() - return Response() + return Response(OperationListSerializer(instance=op).data) @action(methods=['post'], detail=True, perms_map={'post': 'operation_submit'}, serializer_class=serializers.Serializer) @transaction.atomic