Можно ли обновить цену позиции заказа и общую сумму заказа после размещения заказа?

magento.stackexchange https://magento.stackexchange.com//questions/42452

Вопрос

Привет, я хочу обновить цену и общую сумму заказа, а также детали заказа после его размещения.

Предположим, я разместил заказ с товаром

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 и другие.

Но это плохая практика, и вам не следует этого делать.Лучше просто отменить заказ и создать новый.

Другие советы

Я создал решение для обновления конкретной цены товара и пересчета суммы заказа, обратитесь к моему ответу @ Обновить общую сумму заказа после размещения заказа

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top