$orderId = 1;
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$order = $objectManager->create('\Magento\Sales\Model\Order')->load($orderId);
$order->setState("processing")->setStatus("processing");
$order->save();
Подскажите пожалуйста, как мне обновить статус заказа в Magento 2?
magento2
sales-order
magento-2.1.3
Рахул Каточ
источник
источник
Обновление состояния заказа
Чтобы обновить состояние заказа и статус программы программно, определите статус и состояние в этом формате. Инициируйте объект заказа в функции конструкции и используйте этот объект заказа в пользовательской функции для его обновления. Чтобы программно обновить состояние заказа в модели, получите объект заказа из функции конструкции.
Новый заказ по электронной почте
источник
Поскольку load () и save () устарели (потому что :)
Я использовал OrderRepositoryInterface, чтобы загрузить и сохранить заказ:
Надеюсь, поможет
источник
Спасибо @medmek и @ prince-patel. В ответ на вопрос @ jafar-pinjar относительно статуса пользовательского заказа вызовы setState и setStatus могут принимать код состояния. Например, создается пользовательский код статуса «платный». Чтобы обновить статус / состояние заказа:
Чтобы обновить статус заказа:
Надеюсь, это поможет кому-то там.
источник
Magento 2.2.2 Это работает только следующим образом!
Но единственная проблема, которая у меня есть, заключается в том, что она не обновляет полностью статус:
Это только обновляет в сетке и следующее:
Также невозможно создать новый счет, накладную и кредитовое авизо. Спасибо
источник