diff --git a/hb_server/apps/wpm/serializers.py b/hb_server/apps/wpm/serializers.py index 79b4234..e11b56c 100644 --- a/hb_server/apps/wpm/serializers.py +++ b/hb_server/apps/wpm/serializers.py @@ -254,6 +254,7 @@ class WProductDetailSerializer(serializers.ModelSerializer): class OperationDetailSerializer(serializers.ModelSerializer): create_by_ = UserSimpleSerializer(source='create_by', read_only=True) + update_by_ = UserSimpleSerializer(source='update_by', read_only=True) step_ = StepSimpleSerializer(source='step', read_only=True) class Meta: model = Operation @@ -261,6 +262,7 @@ class OperationDetailSerializer(serializers.ModelSerializer): class OperationListSerializer(serializers.ModelSerializer): create_by_ = UserSimpleSerializer(source='create_by', read_only=True) + update_by_ = UserSimpleSerializer(source='update_by', read_only=True) step_ = StepSimpleSerializer(source='step', read_only=True) # wproduct_ = serializers.SerializerMethodField() count_work = serializers.SerializerMethodField() diff --git a/hb_server/apps/wpm/views.py b/hb_server/apps/wpm/views.py index 21fe14f..872fe87 100644 --- a/hb_server/apps/wpm/views.py +++ b/hb_server/apps/wpm/views.py @@ -11,7 +11,7 @@ from apps.pm.serializers import SubProductionPlanListSerializer, SubProductionPr from apps.qm.models import TestRecord, TestRecordItem from apps.qm.serializers import TestRecordDetailSerializer -from apps.system.mixins import CreateUpdateModelAMixin +from apps.system.mixins import CreateUpdateCustomMixin, CreateUpdateModelAMixin from rest_framework.decorators import action from apps.wf.models import Workflow from apps.wpm.filters import CuttingFilterSet, OperationRecordFilterSet, WMaterialFilterSet, WProductFilterSet @@ -784,6 +784,7 @@ class OperationViewSet(ListModelMixin, RetrieveModelMixin, CreateModelMixin, Upd else: raise exceptions.APIException('产出物料未填写或填写错误') op.is_submited = True + op.update_by = request.user op.save() # 如果是冷加工 @@ -797,7 +798,7 @@ class OperationWproductViewSet(ListModelMixin, DestroyModelMixin, UpdateModelMix 操作使用的半成品 """ perms_map = {'get': '*', 'post':'operation_update', - 'put':'operation_update', 'delete':'operation_delete'} + 'put':'operation_update', 'delete':'operation_update'} queryset = OperationWproduct.objects.select_related( 'subproduction_plan', 'material').all() serializer_class = OperationWproductListSerializer @@ -828,7 +829,7 @@ class OperationEquipViewSet(ListModelMixin, DestroyModelMixin, UpdateModelMixin, 操作使用的设备 """ perms_map = {'get': '*', 'post':'operation_update', - 'put':'operation_update', 'delete':'operation_delete'} + 'put':'operation_update', 'delete':'operation_update'} queryset = OperationEquip.objects.select_related( 'operation', 'equip').all() serializer_class = OperationEquipListSerializer @@ -861,7 +862,7 @@ class OperationRecordViewSet(ListModelMixin, DestroyModelMixin, UpdateModelMixin 操作使用的自定义表格 """ perms_map = {'get': '*', 'post':'operation_update', - 'put':'operation_update', 'delete':'operation_delete'} + 'put':'operation_update', 'delete':'operation_update'} queryset = OperationRecord.objects.select_related( 'operation', 'form').all() serializer_class = OperationRecordListSerializer @@ -905,7 +906,7 @@ class OperationMaterialInputViewSet(ListModelMixin, CreateModelMixin, DestroyMod """ 消耗物料 """ - perms_map = {'get': '*', 'post':'operation_update', 'delete':'operation_delete'} + perms_map = {'get': '*', 'post':'operation_update', 'delete':'operation_update'} queryset = OperationMaterial.objects.select_related( 'operation', 'subproduction_plan').filter(type=SubprodctionMaterial.SUB_MA_TYPE_IN) serializer_class = OperationMaterialListSerializer @@ -957,7 +958,7 @@ class OperationMaterialOutputViewSet(ListModelMixin, CreateModelMixin, DestroyMo """ 产出物料 """ - perms_map = {'get': '*', 'post':'operation_update', 'delete':'operation_delete'} + perms_map = {'get': '*', 'post':'operation_update', 'delete':'operation_update'} queryset = OperationMaterial.objects.select_related( 'operation', 'subproduction_plan').filter(type=SubprodctionMaterial.SUB_MA_TYPE_OUT) serializer_class = OperationMaterialListSerializer @@ -994,7 +995,7 @@ class OperationMaterialToolViewSet(ListModelMixin, CreateModelMixin, DestroyMode """ 工具工装 """ - perms_map = {'get': '*', 'post':'operation_update', 'delete':'operation_delete'} + perms_map = {'get': '*', 'post':'operation_update', 'delete':'operation_update'} queryset = OperationMaterial.objects.select_related( 'operation', 'subproduction_plan').filter(type=SubprodctionMaterial.SUB_MA_TYPE_TOOL) serializer_class = OperationMaterialListSerializer