Cambiar el envío y la dirección de facturación de la orden programáticamente
-
12-12-2019 - |
Pregunta
¿Cómo puedo cambiar el envío y la dirección de facturación de la orden programáticamente? Probé esto pero no trabajamos.
$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");
y
$order->setShippingAddress($shippingAddress)
->setShipping_method('flatrate_flatrate');
Solución
Si desea actualizar la dirección de envío de un pedido, entonces necesita un pedido de carga, luego cargue su dirección de dirección:
Paso 1: Order load by orded id
$order = Mage::getModel('sales/order')->load($orderId);
Paso 2: Get shipping address Id.
$order->getShippingAddress()->getId();
STEP3: 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();