Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class ListCreateSKUView(ListCreateAPIView):
- queryset = Sku.objects.all()
- filter_backends = (CustomFilter,)
- def get_serializer_class(self):
- if self.request.method == "POST":
- return CreateSkuSerializer
- else:
- return SkuSerializer
- def perform_create(self, serializer):
- """
- При создании нового sku, всем записям имеющим такойже
- new_barcode присвается созданное sku.
- """
- with atomic():
- # TODO положить код в сериалайзер
- instance = _save_sku(serializer)
- for smd in SkuMonitoringData.objects\
- .filter(new_barcode=instance.barcode):
- smd.status = SkuMonitoringData.APPROVED
- smd.sku = instance
- process_status(smd)
- smd.log_new_barcode(self.request.user, instance.barcode)
- smd.save()
- class CreateSkuSerializer(serializers.ModelSerializer):
- class Meta:
- model = Sku
- fields = ("barcode", "name", "brand", "producer", "real_producer", "segment", "new_producer", "new_brand")
- read_only_fields = ("new_producer", "new_brand",)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement