Example #1
0
 def put(self, request, id):
     queryset = get_object_or_404(Product, id=id)
     serializer = ProductSerializer(queryset, data = request.data)
     if serializer.is_valid():
         serializer.save()
         return Response(serializer.data, status=HTTP_200_OK)
     return Response(serializer.errors, status=HTTP_400_BAD_REQUEST)
Example #2
0
 def put(self, request, pk):
     queryset = Product.objects.all()
     product_obj = get_object_or_404(queryset, pk=pk)
     serializer = ProductSerializer(product_obj, data=request.data)
     if serializer.is_valid():
         serializer.save()
         return Response(serializer.data, status=status.HTTP_204_NO_CONTENT)
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Example #3
0
 def post(self, request, format=None):
     request.data['created_at'] = datetime.today().strftime(
         "%Y-%m-%d %H:%M:%S")
     request.data['updated_at'] = datetime.today().strftime(
         "%Y-%m-%d %H:%M:%S")
     serializer = ProductSerializer(data=request.data)
     if serializer.is_valid():
         serializer.save()
         return Response(serializer.data, status=status.HTTP_201_CREATED)
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Example #4
0
class OrderSerializer(serializers.ModelSerializer):
    customer = CustomerSerializer(read_only=True)
    product = ProductSerializer(read_only=True)

    class Meta:
        model = Order
        fields = '__all__'
Example #5
0
class CompanySerializer(serializers.ModelSerializer):
    key = KeySerializer(many=False, read_only=True)
    product = ProductSerializer(many=False, read_only=True)

    class Meta:
        model = Company
        fields = ('__all__')
Example #6
0
 def post(self, request, *args, **kwargs):
     try:
         instance = self.get_object()
         serializer = FlatStockSerializer(
             instance,
             data={
                 'price': int(request.data.get('price', instance.price)),
                 'amount':
                 instance.amount + int(request.data.get('amount', 0))
             },
             partial=True)
         serializer.is_valid(raise_exception=True)
         self.perform_update(serializer)
         return Response(serializer.data)
     except Product.DoesNotExist:
         serializer = ProductSerializer(data=request.data)
         serializer.is_valid(raise_exception=True)
         serializer.save()
         product = serializer.instance
     except Stock.DoesNotExist:
         ian = request.data.get('ian', None)
         product = Product.objects.get(ian=ian)
     request._full_data = {
         'store': kwargs['id'],
         'product': product.id,
         'price': request.data.get('price'),
         'amount': request.data.get('amount')
     }
     return super().post(request, *args, **kwargs)
Example #7
0
def RecommandedSearch(request, userid):
    userSearch = Search.object.filter(user__id=userid).exclude(
        product__id__isnull=True).values('product__id')
    productsBrand = Product.objects.filter(
        id__in=userSearch).values('brand__id')
    RecommedProducts = Product.objects.filter(brand__id__in=productsBrand)
    serialize = ProductSerializer(RecommedProducts, many=True).data
    return Response(serialize)
Example #8
0
class MyOrderItemSerializer(serializers.ModelSerializer):
    product = ProductSerializer()

    class Meta:
        model = OrderItem
        fields = (
            "price",
            "product",
            "quantity",
        )
Example #9
0
def PopualerSearch(request):
    final = []
    popularProduct = Search.object.exclude(
        product__id__isnull=True).values('product__id').annotate(
            ProCount=Count('product__id')).order_by('-ProCount')[:5]
    for pro in popularProduct:
        product = Product.objects.get(id=pro['product__id'])
        final.append(product)
    serialize = ProductSerializer(final, many=True).data
    return Response(serialize)
Example #10
0
class CartSerializer(serializers.ModelSerializer):
    customer = CustomerSerializer(read_only=True)
    product = ProductSerializer(read_only=True)
    customer_id = serializers.PrimaryKeyRelatedField(
        write_only=True, queryset=Customer.objects.all(), source='customer')
    product_id = serializers.PrimaryKeyRelatedField(
        write_only=True, queryset=Product.objects.all(), source='product')

    class Meta:
        model = Cart
        fields = '__all__'
        list_serializer_class = CartListSerializer
Example #11
0
 def get(self, request, id):
     queryset = get_object_or_404(Product, id=id)
     serializer = ProductSerializer(queryset).data
     return Response(serializer)
Example #12
0
 def retrieve(self, request, pk):
     product_obj = ProductCategory.objects.get(id=pk)
     queryset = Product.objects.filter(category=product_obj)
     serializer = ProductSerializer(queryset, many=True)
     return Response(serializer.data, status=status.HTTP_200_OK)
Example #13
0
 def get_productDetails(self,obj):
      return ProductSerializer(obj.product).data
Example #14
0
 def get(self, request, format=None):
     product = Product.objects.all()
     serializer = ProductSerializer(product, many=True)
     return Response(serializer.data)
Example #15
0
 def retrieve(self, request, pk):
     queryset = Product.objects.get(id=pk)
     serializer = ProductSerializer(queryset)
     return Response(serializer.data, status=status.HTTP_200_OK)
Example #16
0
 def post(self, request):
     serializer = ProductSerializer(data=request.data)
     if serializer.is_valid():
         serializer.save()
         return Response(serializer.data, status=status.HTTP_201_CREATED)
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Example #17
0
 def list(self, request):
     queryset = Product.objects.all()
     serializer = ProductSerializer(queryset, many=True)
     return Response(serializer.data)
Example #18
0
 def get_PopProduct(self,obj):
       return ProductSerializer(obj.product).data