Помощь со статусом модели «продажи/заказ» и состоянием
-
16-10-2019 - |
Вопрос
У меня есть CSV-файл из нашей системы SAP, в котором есть список идентификаторов заказов и позиций в заказе, а также количество отгруженных позиций для каждой позиции.Я пытаюсь просмотреть каждый идентификатор заказа, загрузить их в Magento и выполнить над ними операции в зависимости от их status
или state
(Я не уверен, какой из них использовать, пожалуйста, помогите!).
По сути, если заказ все еще обрабатывается/ожидается, я хочу перейти к заказанным товарам и установить отгруженное количество (и другие вещи).Однако мне трудно понять, следует ли мне использовать состояние или статус заказа для получения этой информации.Может ли кто-нибудь помочь мне понять, какой из них использовать и почему?
Мне очень трудно найти Mage_Sales_Model_Order::getStatus()
метод.я даже использовал ReflectionClass
просмотреть методы и не увидеть его!Если мне нужно использовать статус заказа, я бы хотел сравнить его со статусом, определенным Magento (будь то константа или значение базы данных), а не с некоторой буквальной строкой (т.е. "processing"
).
Я использую Magento Enterprise 1.13, но доступен только тег 1.12.
Решение
Взглянем @ Мадженто:Разница между состояниями и статусами заказа
Состояние используется Magento, чтобы определить, является ли заказ новым, в обработке, завершенным, закрытым, отмененным и т. д.;
Каждое «состояние» может иметь несколько «статусов», например «обработка» (после получения оплаты), вы можете добавить дополнительные «статусы», соответствующие рабочему процессу вашего бизнеса («заказ в производстве», «заказ в постпроизводстве» и т. д.)
Насколько мне известно, вы не можете изменить «состояние», поскольку оно глубоко интегрировано в рабочий процесс платежей, поэтому лучший вариант — использовать «статусы».
Но если вы хотите перенести весь оплаченный заказ, вы можете просмотреть все заказы, имеющие состояние «обработка».
Чтобы добавить статусы, перейдите в Администратор -> Система -> Статусы заказов.