Несколько заказов сохраняются в одно время django ecommerce?

В моем сайте электронной коммерции на django. Я пытаюсь создать заказ. Это работает, но в один клик сохраняется два заказа. orderItem

def updateItem(request):
    data = json.loads(request.body)
    productId = data['productId']
    action = data['action']
    quantity = data['quantity']
    print('Action:', action)
    print('Product:', productId)
    print('Quantity:',quantity)

    customer = request.user.customer
    product = Product.objects.get(id=productId)
    order, created = Order.objects.get_or_create(customer=customer, complete=False)

    orderItem, created = OrderItem.objects.get_or_create(order=order, product=product)

    if action == 'add':
        orderItem.quantity = (orderItem.quantity + quantity)

    if action == 'remove':
        orderItem.quantity = (orderItem.quantity - quantity)

    orderItem.save()
    
    if action=='delete':
        orderItem.quantity=0

    if orderItem.quantity <= 0:
        orderItem.delete()

    
    return JsonResponse('Item was added', safe=False)

порядок

def processOrder(request):
    transaction_id = datetime.datetime.now().timestamp()
    data = json.loads(request.body)
    name = data['form']['name']
    email = data['form']['email']
    phone = data['form']['number']
    phoneAdd = data['form']['numberAdd']
    address = data['form']['address']
    time = data['form']['time']
    date = data['form']['date']
    payment = data['form']['payment']
    comment = data['form']['comment']
    id_order = int(data['form']['id'])



    if request.user.is_authenticated:
        customer = request.user.customer
        order = Order.objects.get(id=id_order)
        order.transaction_id = transaction_id 
        order.complete=True
        order.save()
        
        OrderInfo.objects.create(customer=customer,order=order,name=name,email=email,phone=phone,phoneAdd=phoneAdd,address=address,time=time,date=date,payment=payment,comment=comment)
        

    else:
        print("Not logged in ")
    
    return JsonResponse('Payment submitted..', safe=False)

Работает, и значение complete меняется на TRUE. Однако создается еще один пустой заказ. Так в чем же проблема? Не могли бы вы помочь решить эту проблему?

Вернуться на верх