Я безуспешно пытаюсь удалить все продукты, связанные с заказом woocommerce, чтобы обновить этот заказ новыми продуктами.
Для этого я предполагаю, что первый шаг - удалить все line_items определенного ордера и сделайте пут для обновления.
Второй шаг - снова сделать пут, но с новыми продуктами на этот раз в позиции line_items.
Кто-нибудь знает, что не так с моим кодом?
В этом посте, https://github.com/woocommerce/woocommerce/issues/22177, Я видел, что я должен поместить в поле количества каждого продукта в моем line_items значение 0, но оно не работает.
Вот мой код:
def update_woocommerce_order_products_with_quantities(wcapi,order,oldWooOrderHasProducts):
fetched_products=Woo_Order_Has_Products.objects.filter(woo_order_id=order_id)
#FIRST I HAVE TO DELETE THE PRODUCTS OF THE WOOCOMMERCE ORDER
for oldWooOrderHasProduct in oldWooOrderHasProducts:
data = {
"line_items": [
{
"id": str(oldWooOrderHasProduct.wholesale_product.pid),
"quantity": 0,
}
]
}
wcapi.put("orders/"+str(oid),data).json()
#for every product update the price and quantity
for fetched_product in fetched_products:
data = {
"line_items": [
{
"id": str(fetched_product.wholesale_product.pid),
"quantity": str(fetched_product.quantity),
"price": str(fetched_product.price)
}]
}
wcapi.put("orders/"+str(oid),data).json()