Alteração de envio e endereço de cobrança da ordem programaticamente
-
12-12-2019 - |
Pergunta
Como posso alterar o endereço de envio e facturação da ordem por meio de programação?Eu tentei isso, mas não funciona.
$shippingAddress = Mage::getModel('sales/order_address')
->setFirstname("value")
->setMiddlename("value")
->setLastname("value")
->setSuffix("value")
->setCompany("value")
->setStreet("value"))
->setCity("value")
->setCountry_id("value")
->setRegion("value")
->setRegion_id("value")
->setPostcode("value")
->setTelephone("value")
->setFax("value");
e
$order->setShippingAddress($shippingAddress)
->setShipping_method('flatrate_flatrate');
Solução
se você quiser atualização de endereço de entrega de uma encomenda em seguida, você precisa de ordem de carregamento, em seguida, carregá-lo objeto de endereços:
Passo 1:Order load by orded id
$order = Mage::getModel('sales/order')->load($orderId);
Passo 2:Get shipping address Id.
$order->getShippingAddress()->getId();
Passo 3:Then reset shipping address object:
$shippingAddress = Mage::getModel('sales/order_address')->load($order->getShippingAddress()->getId());
$shippingAddress
->setFirstname("value")
->setMiddlename("value")
->setLastname("value")
->setSuffix("value")
->setCompany("value")
->setStreet("value"))
->setCity("value")
->setCountry_id("value")
->setRegion("value")
->setRegion_id("value")
->setPostcode("value")
->setTelephone("value")
->setFax("value")->save();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange