$orderId = 1;
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$order = $objectManager->create('\Magento\Sales\Model\Order')->load($orderId);
$order->setState("processing")->setStatus("processing");
$order->save();
¿Dime cómo actualizo el estado del pedido en Magento 2?
magento2
sales-order
magento-2.1.3
Rahul Katoch
fuente
fuente
Actualización del estado del pedido
Para actualizar el estado y el estado del pedido de forma programática, defina el estado y el estado en este formato. Inicie el objeto de orden en la función de construcción y use ese objeto de orden en la función personalizada para actualizarlo. Para actualizar el estado de orden mediante programación en el modelo, obtenga el objeto de orden de la función de construcción.
Nuevo correo electrónico de pedido
fuente
Dado que load () y save () están en desuso ahora (porque :)
He utilizado el OrderRepositoryInterface para cargar y guardar el orden:
Espero eso ayude
fuente
Magento 2.2.2 ¡Esto solo funciona de la siguiente manera!
Pero el único problema que tengo es que no actualiza completamente el estado:
Solo actualiza el en la cuadrícula y lo siguiente:
Tampoco es posible crear una nueva factura, envío y nota de crédito. Gracias
fuente
Gracias a @medmek y @ prince-patel responden. Como pregunta de @ jafar-pinjar sobre el estado del pedido personalizado, las llamadas setState y setStatus pueden tomar el Código de estado. Por ejemplo, se crea el código de estado personalizado "pagado". Para actualizar el estado / estado de un pedido:
Para actualizar el estado del pedido:
Espero que ayude a alguien por ahí.
fuente