feat: assgin_number_out 支持置空
This commit is contained in:
parent
bbef553bd5
commit
33709bbb60
|
@ -95,14 +95,12 @@ class WprViewSet(CustomListModelMixin, RetrieveModelMixin, ComplexQueryMixin, Cu
|
||||||
vdata = sr.validated_data
|
vdata = sr.validated_data
|
||||||
items = vdata["items"]
|
items = vdata["items"]
|
||||||
number_outs = [i["number_out"] for i in items]
|
number_outs = [i["number_out"] for i in items]
|
||||||
existing_numbers = Wpr.objects.filter(number_out__in=number_outs).values_list('number_out', flat=True)
|
existing_numbers = Wpr.objects.filter(number_out__in=number_outs, number_out__isnull=False).values_list('number_out', flat=True)
|
||||||
if existing_numbers.exists():
|
if existing_numbers.exists():
|
||||||
used_numbers = list(existing_numbers)
|
used_numbers = list(existing_numbers)
|
||||||
raise ParseError(f"以下对外编号已被使用: {used_numbers[0]} 共{len(used_numbers)}个")
|
raise ParseError(f"以下对外编号已被使用: {used_numbers[0]} 共{len(used_numbers)}个")
|
||||||
for i in items:
|
for i in items:
|
||||||
wpr = Wpr.objects.get(id=i["id"])
|
wpr = Wpr.objects.get(id=i["id"])
|
||||||
if wpr.number_out:
|
|
||||||
raise ParseError(f"编号为{wpr.number}的产品已经分配了对外编号")
|
|
||||||
wpr.number_out = i["number_out"]
|
wpr.number_out = i["number_out"]
|
||||||
wpr.save()
|
wpr.save()
|
||||||
return Response()
|
return Response()
|
Loading…
Reference in New Issue