feat: 校验SupplierAudit供应商名称已存在

This commit is contained in:
caoqianming 2025-11-28 16:57:43 +08:00
parent 8211a33b58
commit 39066f2124
1 changed files with 8 additions and 2 deletions

View File

@ -1,7 +1,7 @@
from rest_framework import serializers from rest_framework import serializers
from apps.utils.serializers import CustomModelSerializer from apps.utils.serializers import CustomModelSerializer
from apps.utils.constants import EXCLUDE_FIELDS_DEPT, EXCLUDE_FIELDS_BASE, EXCLUDE_FIELDS from apps.utils.constants import EXCLUDE_FIELDS_DEPT, EXCLUDE_FIELDS_BASE, EXCLUDE_FIELDS
from rest_framework.exceptions import ValidationError from rest_framework.exceptions import ValidationError, ParseError
from apps.pum.models import Supplier, PuPlan, PuPlanItem, PuOrder, PuOrderItem, SupplierAudit from apps.pum.models import Supplier, PuPlan, PuPlanItem, PuOrder, PuOrderItem, SupplierAudit
from apps.mtm.serializers import MaterialSerializer, MaterialSimpleSerializer from apps.mtm.serializers import MaterialSerializer, MaterialSimpleSerializer
@ -152,3 +152,9 @@ class SupplierAuditSerializer(CustomModelSerializer):
model = SupplierAudit model = SupplierAudit
fields = "__all__" fields = "__all__"
read_only_fields = EXCLUDE_FIELDS_BASE + ['ticket'] read_only_fields = EXCLUDE_FIELDS_BASE + ['ticket']
def create(self, validated_data):
name = validated_data["name"]
if Supplier.objects.filter(name=name).exists():
raise ParseError('供应商名称已存在')
return super().create(validated_data)