feat:wpr中添加工装(喷码工段需要)
This commit is contained in:
parent
aa8e411a1b
commit
1807004129
|
|
@ -2,7 +2,7 @@ from django.db import models
|
|||
|
||||
from apps.qm.models import FtestDefect, FtestItem
|
||||
from apps.utils.models import BaseModel
|
||||
from apps.mtm.models import Material
|
||||
from apps.mtm.models import Material, Tooling
|
||||
from rest_framework.exceptions import ParseError
|
||||
from apps.wpm.models import WmStateOption, Mlogbw, Handoverbw
|
||||
from apps.utils.tools import update_dict
|
||||
|
|
@ -30,6 +30,7 @@ class Wpr(BaseModel):
|
|||
oinfo = models.JSONField(verbose_name="其他信息", default=dict, blank=True)
|
||||
wpr_from = models.ForeignKey("self", verbose_name="来源于", on_delete=models.CASCADE, null=True, blank=True)
|
||||
data = models.JSONField(verbose_name="数据", default=dict, blank=True)
|
||||
tooling = models.ForeignKey(Tooling, verbose_name="工装", on_delete=models.SET_NULL, null=True, blank=True)
|
||||
|
||||
@classmethod
|
||||
def change_or_new(cls, wpr=None, number=None, mb=None, wm=None, old_mb=None, old_wm=None, ftest=None, wpr_from=None, add_version=True, number_out=None):
|
||||
|
|
|
|||
|
|
@ -16,10 +16,11 @@ class WprSerializer(CustomModelSerializer):
|
|||
wm_batch = serializers.CharField(source="wm.batch", read_only=True)
|
||||
mb_batch = serializers.CharField(source="mb.batch", read_only=True)
|
||||
material_name = serializers.StringRelatedField(
|
||||
source='material', read_only=True)
|
||||
source='material', read_only=True)
|
||||
# material_start_name = serializers.StringRelatedField(source='material_start', read_only=True)
|
||||
wm_material_ofrom_name = serializers.StringRelatedField(source="wm.material_ofrom", read_only=True)
|
||||
wprdefect = WprDefectSerializer(many=True, read_only=True)
|
||||
wprdefect = WprDefectSerializer(many=True, read_only=True)
|
||||
tooling_name = serializers.CharField(source="tooling.name", read_only=True, default=None)
|
||||
|
||||
class Meta:
|
||||
model = Wpr
|
||||
|
|
@ -54,4 +55,10 @@ class WproutListSerializer(serializers.Serializer):
|
|||
|
||||
class WprChangeNumberSerializer(serializers.Serializer):
|
||||
old_number = serializers.CharField(label="原编号")
|
||||
new_number = serializers.CharField(label="新编号")
|
||||
new_number = serializers.CharField(label="新编号")
|
||||
|
||||
|
||||
class WprPartialUpdateSerializer(CustomModelSerializer):
|
||||
class Meta:
|
||||
model = Wpr
|
||||
fields = ['tooling']
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
from rest_framework.decorators import action
|
||||
from apps.utils.viewsets import CustomModelViewSet, CustomGenericViewSet
|
||||
from apps.utils.mixins import CustomListModelMixin, CustomRetrieveModelMixin, ComplexQueryMixin
|
||||
from apps.utils.mixins import CustomListModelMixin, CustomRetrieveModelMixin, ComplexQueryMixin, CustomUpdateModelMixin
|
||||
|
||||
from apps.wpmw.models import Wpr, WprDefect
|
||||
from apps.wpmw.serializers import WprSerializer, WprNewSerializer, WprDetailSerializer, WproutListSerializer, WprChangeNumberSerializer
|
||||
from apps.wpmw.serializers import WprSerializer, WprNewSerializer, WprDetailSerializer, WproutListSerializer, WprChangeNumberSerializer, WprPartialUpdateSerializer
|
||||
from rest_framework.response import Response
|
||||
from apps.mtm.models import Material
|
||||
from rest_framework.exceptions import ParseError
|
||||
|
|
@ -13,14 +13,15 @@ from apps.utils.sql import query_one_dict
|
|||
from django.db.models.expressions import RawSQL
|
||||
|
||||
|
||||
class WprViewSet(CustomListModelMixin, CustomRetrieveModelMixin, ComplexQueryMixin, CustomGenericViewSet):
|
||||
class WprViewSet(CustomUpdateModelMixin, CustomListModelMixin, CustomRetrieveModelMixin, ComplexQueryMixin, CustomGenericViewSet):
|
||||
"""动态产品
|
||||
|
||||
动态产品
|
||||
"""
|
||||
|
||||
perms_map = {"get": "*"}
|
||||
select_related_fields = ["wm", "mb", "material", "wm__material_ofrom"]
|
||||
perms_map = {"get": "*", "patch": "*"}
|
||||
partial_update_serializer_class = WprPartialUpdateSerializer
|
||||
select_related_fields = ["wm", "mb", "material", "wm__material_ofrom", "tooling"]
|
||||
prefetch_related_fields = ["defects"]
|
||||
queryset = Wpr.objects.all()
|
||||
serializer_class = WprSerializer
|
||||
|
|
|
|||
Loading…
Reference in New Issue