Est-il possible de mettre à jour le prix de l'article commandé et le total de la commande une fois la commande passée ?

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

Question

Bonjour, je souhaite mettre à jour le prix de l'article commandé, le total général et les détails de la commande une fois la commande passée.

supposons que j'ai passé une commande avec un article

Item A - article de commande price $10

Item b - article de commande price $20

Discount is $5

Total général - 25 $

Maintenant mon order status is pending et je veux update order item price and other price exactement comme ça

Item A - article de commande price $40

Item b - article de commande price $30

Discount is $7

Grandtotal - $63

Est-il possible?

Était-ce utile?

La solution

Je pense que vous pouvez faire cela comme vous modifieriez n'importe quelle autre instance de modèle

$item = Mage::getModel('sales/order_item')->load(id here)l
$item->setPrice(40)->setBasePrice(40)->save();

alors

$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();

Vous devrez peut-être également modifier d'autres valeurs telles que tax, subtotal_incl_tax et autres.

Mais c’est une mauvaise pratique et vous ne devriez pas le faire.Il est préférable d'annuler la commande et d'en créer une nouvelle.

Autres conseils

J'ai créé la solution pour mettre à jour le prix de l'article particulier et recalculer le montant de la commande, veuillez référer ma réponse @ Mettre à jour le total de la commande après la commande

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top