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