From f85db52ec7fe1811f45f1d80a7ea3474f33280f9 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Thu, 17 Oct 2024 15:55:26 +0800 Subject: [PATCH] fix: get_from_mioitem bug --- apps/cm/views.py | 49 ++++++++++++++++-------------------------------- 1 file changed, 16 insertions(+), 33 deletions(-) diff --git a/apps/cm/views.py b/apps/cm/views.py index 13b0c13d..f05b6a4c 100644 --- a/apps/cm/views.py +++ b/apps/cm/views.py @@ -8,77 +8,60 @@ from rest_framework.response import Response from apps.utils.viewsets import CustomGenericViewSet, RetrieveModelMixin, CustomListModelMixin # Create your views here. + class LableMatViewSet(CustomListModelMixin, RetrieveModelMixin, CustomGenericViewSet): perms_map = {"post": "*", "get": "*"} serializer_class = LabelMatSerializer queryset = LableMat.objects.all() select_related_fields = ["material", "material_origin", "supplier"] - @action(methods=['post'], detail=False, serializer_class=TidSerializer) + @action(methods=["post"], detail=False, serializer_class=TidSerializer) def get_from_mb(self, request, pk=None): """ 从仓库明细获取物料标签 从仓库明细获取物料标签 """ - tid = request.data.get('tid') + tid = request.data.get("tid") try: mb = MaterialBatch.objects.get(id=tid) except MaterialBatch.DoesNotExist: - raise NotFound('仓库明细不存在') - obj, _ = LableMat.objects.get_or_create( - state=10, - material=mb.material, - batch=mb.batch, - defaults={ - "supplier": mb.supplier - } - ) + raise NotFound("仓库明细不存在") + obj, _ = LableMat.objects.get_or_create(state=10, material=mb.material, batch=mb.batch, defaults={"supplier": mb.supplier}) rdata = LabelMatSerializer(obj).data rdata["code_label"] = f"mat:{obj.id}" return Response(rdata) - - @action(methods=['post'], detail=False, serializer_class=TidSerializer) + + @action(methods=["post"], detail=False, serializer_class=TidSerializer) def get_from_wm(self, request, pk=None): """ 从车间库存明细获取物料标签 从车间库存明细获取物料标签 """ - tid = request.data.get('tid') + tid = request.data.get("tid") try: wm = WMaterial.objects.get(id=tid) except WMaterial.DoesNotExist: - raise NotFound('车间库存不存在') - obj, _ = LableMat.objects.get_or_create( - state=wm.state, - material=wm.material, - batch=wm.batch, - notok_sign=wm.notok_sign, - material_origin=wm.material_origin) + raise NotFound("车间库存不存在") + obj, _ = LableMat.objects.get_or_create(state=wm.state, material=wm.material, batch=wm.batch, notok_sign=wm.notok_sign, material_origin=wm.material_origin) rdata = LabelMatSerializer(obj).data rdata["code_label"] = f"mat:{obj.id}" return Response(rdata) - - @action(methods=['post'], detail=False, serializer_class=TidSerializer) + + @action(methods=["post"], detail=False, serializer_class=TidSerializer) def get_from_mioitem(self, request, pk=None): """ 从出入库明细获取物料标签 从出入库明细获取物料标签 """ - tid = request.data.get('tid') + tid = request.data.get("tid") try: mioitem: MIOItem = MIOItem.objects.get(id=tid) except MIOItem.DoesNotExist: - raise NotFound('出入库明细不存在') - obj, _ = LableMat.objects.get_or_create( - state=10, - material=mioitem.material, - batch=mioitem.batch, - defaults={ - "supplier": mioitem.mio.supplier - }) + raise NotFound("出入库明细不存在") + obj, _ = LableMat.objects.get_or_create(state=10, material=mioitem.material, batch=mioitem.batch, defaults={"supplier": mioitem.mio.supplier}) rdata = LabelMatSerializer(obj).data rdata["code_label"] = f"mat:{obj.id}" - return rdata \ No newline at end of file + return Response(rdata)