From ab42ef0f8380715bf362782fde03041eee134237 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Tue, 29 Mar 2022 11:43:27 +0800 Subject: [PATCH 1/5] srm bug --- hb_server/apps/srm/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hb_server/apps/srm/views.py b/hb_server/apps/srm/views.py index f84f5e9..f92d6b3 100644 --- a/hb_server/apps/srm/views.py +++ b/hb_server/apps/srm/views.py @@ -148,7 +148,7 @@ class AtWorkCountView(CreateAPIView): ret = ClockRecord.objects.filter( update_time__year = vdata['year'], update_time__month = vdata['month'], - create_by__show_atwork = True + create_by__employee_user__show_atwork = True ).values( user_id = F('create_by'), number = F('create_by__employee_user__number'), From ce6af8fab4d960eef37ec9ef0de899c47d2fa155 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Tue, 29 Mar 2022 16:53:33 +0800 Subject: [PATCH 2/5] =?UTF-8?q?testrecord=5Fupdate=20put=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hb_server/apps/qm/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hb_server/apps/qm/views.py b/hb_server/apps/qm/views.py index d46d6ce..304d954 100644 --- a/hb_server/apps/qm/views.py +++ b/hb_server/apps/qm/views.py @@ -52,7 +52,7 @@ class TestRecordViewSet(ListModelMixin, UpdateModelMixin, RetrieveModelMixin, De """ 检验记录 """ - perms_map = {'get': '*', 'post':'testrecord_update', 'delete':'testrecord_delete'} + perms_map = {'get': '*', 'put':'testrecord_update', 'delete':'testrecord_delete'} queryset = TestRecord.objects.select_related('fifo_item', 'form').prefetch_related('item_test_record').all() serializer_class = TestRecordListSerializer filterset_fields = ['wproduct', 'material', 'step', 'subproduction_plan', 'fifo_item', 'origin_test', 'type'] From cfc1aaab401d06b428875e8afb5b92e249040a05 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Wed, 30 Mar 2022 09:29:22 +0800 Subject: [PATCH 3/5] process steps get * --- hb_server/apps/mtm/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hb_server/apps/mtm/views.py b/hb_server/apps/mtm/views.py index 2862a39..9318c36 100644 --- a/hb_server/apps/mtm/views.py +++ b/hb_server/apps/mtm/views.py @@ -64,7 +64,7 @@ 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=StepDetailSerializer) + @action(methods=['get'], detail=True, perms_map={'get':'*'}, pagination_class=None, serializer_class=StepDetailSerializer) def steps(self, request, pk=None): """ 工序下的子工序 From ac7b305d9d9a9bcb8fd783bf57bc0541057a176e Mon Sep 17 00:00:00 2001 From: caoqianming Date: Wed, 30 Mar 2022 09:30:46 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E6=9D=83=E9=99=90=E8=BF=87=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hb_server/apps/wpm/views.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/hb_server/apps/wpm/views.py b/hb_server/apps/wpm/views.py index b8234d0..21fe14f 100644 --- a/hb_server/apps/wpm/views.py +++ b/hb_server/apps/wpm/views.py @@ -537,9 +537,6 @@ class OperationViewSet(ListModelMixin, RetrieveModelMixin, CreateModelMixin, Upd ordering_fields = ['id'] ordering = ['-id'] - def get_queryset(self): - return self.queryset.filter(create_by=self.request.user) - def get_serializer_class(self): if self.action == 'retrieve': return OperationDetailSerializer From 7de173b131bc2a52cdd82e4f70657af72d76f89b Mon Sep 17 00:00:00 2001 From: caoqianming Date: Wed, 30 Mar 2022 09:53:56 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E6=93=8D=E4=BD=9C=E5=88=9B=E5=BB=BA?= =?UTF-8?q?=E4=BA=BA=E6=9C=80=E5=90=8E=E7=BC=96=E8=BE=91=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hb_server/apps/wpm/serializers.py | 2 ++ hb_server/apps/wpm/views.py | 15 ++++++++------- 2 files changed, 10 insertions(+), 7 deletions(-) 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