Можно ли обновить цену позиции заказа и общую сумму заказа после размещения заказа?
-
12-12-2019 - |
Вопрос
Привет, я хочу обновить цену и общую сумму заказа, а также детали заказа после его размещения.
Предположим, я разместил заказ с товаром
Item A
- товар заказа price $10
Item b
- товар заказа price $20
Discount is $5
Общая сумма - 25 долларов США.
Теперь мой order status is pending
и хотите update order item price and other price
просто нравится
Item A
- товар заказа price $40
Item b
- товар заказа price $30
Discount is $7
Grandtotal - $63
Является ли это возможным?
Решение
Я думаю, вы можете сделать это так же, как если бы вы изменили любой другой экземпляр модели.
$item = Mage::getModel('sales/order_item')->load(id here)l
$item->setPrice(40)->setBasePrice(40)->save();
затем
$order = Mage::getModel('sales/order')->load(order id here);
$order->setSubtotal(70)->setBaseSubtotal(70);
$order->setDiscountAmount(7)->setBaseDiscountAmout(7);
$order->setGrandTotal(63)->setBaseGrandTotal(63);
$order->save();
Вам также может потребоваться изменить другие значения, такие как налог, subtotal_incl_tax и другие.
Но это плохая практика, и вам не следует этого делать.Лучше просто отменить заказ и создать новый.
Другие советы
Я создал решение для обновления конкретной цены товара и пересчета суммы заказа, обратитесь к моему ответу @ Обновить общую сумму заказа после размещения заказа