Які визначення статусів замовлень? АБО: Де я повинен інтегрувати стан замовлення?


25

Я хочу визначити деякі стани замовлення, такі як "отримано платіж за допомогою кредитної картки", питання до яких статусів вони належать. Чи існує визначення кожного з вбудованих статусів?

Редагувати: Схоже, я змішав "статус" і "стан", сподіваюся, це все одно зрозуміло з контексту. Я звинувачую німецький переклад Magento (Держава => Статус, Статус => Зустан)

Відповіді:


42

Відповідно до "Постійного Посібника по Магенто" [1] , статуси замовлень визначаються наступним чином:

  • Очікує на розгляд: замовлення, що очікують на розгляд, - це абсолютно нові замовлення, які не були оброблені. Зазвичай ці замовлення потрібно виставити на рахунку та відвантажити.
  • PayPal на стадії очікування: очікувані замовлення PayPal - це абсолютно нові замовлення, які не були очищені PayPal. [...]
  • Обробка: обробка означає, що замовлення або виставляються рахунками або відправляються, але не обидва.
  • Виконано: Замовлення, позначені як завершені, виставлено рахунок-фактуру та відправлено.
  • Скасовано: Скасовані замовлення слід використовувати, якщо замовлення скасовані або якщо замовлення не були оплачені.
  • Закрито: Закриті замовлення - це замовлення, яким було призначено кредитну пам'ятку, і клієнту було повернено за своє замовлення.
  • У режимі очікування : Замовлення, які перебувають на затриманні, повинні бути зняті, перш ніж продовжувати подальші дії.

Тому державна "отримана оплата кредитною карткою" повинна належати за processingумови, що замовлення ще не відвантажене.


Інтелектуальний консалтинг [2] створив блок-схему для станів замовлення:

потік стану магденто


Джерела:

  1. Адам Маккомбс та Роберт Бан: "Постійний путівник по Магенто", Apress, 2009 (ISBN 1430272287, 9781430272281)
  2. https://twitter.com/aligent/status/509487359172177921/photo/1

Я все за відповіді на запитання, але це здається низькоякісним посівом. Відповідь копіювати + вставити, яку в іншому випадку можна легко знайти в Інтернеті, насправді не додає великої цінності цьому веб-сайту.
Бен Лессані - Сонассі

4
@sonassi: Я поважаю вашу думку і не хотів би вважати, що питання є якісним, але я деякий час шукав це питання, але не знайшов пов'язаних питань тут чи в ТАК, тому це може допомогти комусь іншому в майбутньому.
Фабіан Шменглер

Я вважаю це супер корисним. іноді ви знаходите речі легше на стеці, ніж на Google, оскільки стек попередньо фільтрується, порівняно з google, так би мовити. а якщо воно буде насінням, так і нехай буде. Вони надавали значення. З посівом я повністю в порядку.
ahnbizcad

2

У Mage_Sales_Model_Order визначено різні стани порядку:

const STATE_NEW             = 'new';
const STATE_PENDING_PAYMENT = 'pending_payment';
const STATE_PROCESSING      = 'processing';
const STATE_COMPLETE        = 'complete';
const STATE_CLOSED          = 'closed';
const STATE_CANCELED        = 'canceled';
const STATE_HOLDED          = 'holded';
const STATE_PAYMENT_REVIEW  = 'payment_review';

+1 Це перевибір? Чи є спосіб отримати це з решти api? наприклад / config / sales / possibleStatusList?
Mzn

1
Перепишіть константи? Чому ви хочете їх перезаписати? Ви можете визначити нові статуси замовлення в бекенді (Система> Статуси замовлень). Якщо ви маєте на увазі "зміни статусів замовлень", так, це можливо. І так, ви також можете отримати статус замовлення через API (метод sales_order.info або метод sales_order.list)
Стефан,

так, я мав на увазі зміни списку, а не константи. чи знаєте ви, як я можу отримати доступ до sales_order.info у програмі відпочинку? яка кінцева точка? я спробував / URL-адреси щодо продажу / інформація відносний
Mzn

Якщо вам не важко, перегляньте тут доступ для загального доступу: magento.stackexchange.com/a/33187/6291 та інформацію про sales_order.info тут: devdocs.magento.com/guides/m1x/api/soap/sales/salesOrder/ … Удачі!
Стефан

Дякуємо за відповідь, але SOIP api дійсно відрізняється від REST api. Чомусь я не можу знайти, про що ви говорите в документах REST api: devdocs.magento.com/swagger/index.html Ви можете це бачити там? Можливо, це не входить до програми REST?
Mzn

1

Насправді, так як у розділі адміністратора можуть бути визначені 1,5 порядку замовлення, а xml не є бажаним способом додавання / зміни станів або статусів. Будь ласка, зробіть різницю між станом та статусом. Стан "обробляє" статус - "отримано платіж за допомогою кредитної картки"

Оновлення : статуси замовлень можна створювати та змінювати в адмініструванні / sales_order_status /, не потрібно нічого робити у XML. Ви можете призначити статус лише у тому випадку, якщо замовлення знаходиться у відповідному стані. За замовчуванням замовлення переходить у стан обробки, коли він виставляється рахунками або відправляється.


Це малося на увазі як коментар до відповіді Себастьяна Лінда? Що стосується штатів і статусів, схоже, я їх змішав (знову ...), дякую за виправлення.
Фабіан Шменглер

-1

Ви можете підключити новий стан до існуючих статусів замовлень або створити абсолютно новий. Просто змініть файл конфігурації модуля продажу наступним чином (app \ code \ core \ Mage \ Sales \ etc \ config.xml) з новим станом:

<?xml version="1.0"?>
<config>
  <!-- ... -->
  <global>
    <sales>
      <order>
        <statuses>
          <new_status>
            <label>New Status</label>
            <description>Your Description here</description>
          </new_status>
        </statuses>
        <states>
          <new>
            <label>New</label>
            <statuses>
              <new_status/>
            </statuses>
            <visible_on_front/>
          </new>
        </states>
      </order>
    </sales>
  </global>
</config>

Оновіть кеш, зроблено.


2
Я нічого не боюся з цієї відповіді.
орієнтири

1
Не редагуйте ядро ​​Magento. Скоріше створіть конфігурацію у власному модулі. Magento об'єднає ваші та основні файли конфігурації.
Жак
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.