This commit is contained in:
Martin Quarda 2024-10-14 07:21:52 +02:00
parent dcb48ab0c7
commit 2cf3ecfe61

View File

@ -343,7 +343,7 @@ def products(request):
'price': product.price, 'price': product.price,
'quantity': product.quantity, 'quantity': product.quantity,
} }
for product in Product.objects.all()[1:] for product in Product.objects.all()[1:] if product.quantity > 0
]), content_type='application/json') ]), content_type='application/json')
@ -366,6 +366,8 @@ def cart_add(request):
except IntegrityError as e: except IntegrityError as e:
cart_product = CartProduct.objects.get(cart=cart, product=product) cart_product = CartProduct.objects.get(cart=cart, product=product)
cart_product.quantity += 1 cart_product.quantity += 1
if cart_product.quantity > product.quantity:
return HttpResponse('{"status": "failed", "reason": "Nemáme dostatek předmětů na skladě!"}')
cart_product.save() cart_product.save()
return HttpResponse('{"status":"success", "reason":"Úspěšně přidáno do košíku."}', status=200) return HttpResponse('{"status":"success", "reason":"Úspěšně přidáno do košíku."}', status=200)
@ -376,13 +378,14 @@ def cart(request):
return HttpResponse("[]") return HttpResponse("[]")
cart = [] cart = []
try: try:
for product in CartProduct.objects.filter(cart=user.cart): for cart_product in CartProduct.objects.filter(cart=user.cart):
cart.append({ cart.append({
"id": product.product.id, 'id': cart_product.product.id,
"name": product.product.name, 'name': cart_product.product.name,
"quantity": product.quantity, 'description': cart_product.product.description,
"price": product.product.price, 'quantity': cart_product.quantity,
"img": product.product.img.url, 'price': cart_product.product.price,
'img': cart_product.product.img.url,
}) })
except AttributeError: except AttributeError:
return HttpResponse("[]") return HttpResponse("[]")