Статус заказа: изменение доступности экземпляра товара для заказа Есть решение

Следующая проблема. По умолчанию в бекенде предусмотрено какое-то количество статусов заказов. В двух из них («Возврат» и «Удалён») зарезервированный под заказ экземпляр товара возвращается в наличие и становится доступным для заказа, для одного («Выполнен») экземпляр убирается из наличия окончательно либо до перевода в статус «Возврат». Для прочих статусов экземпляр считается зарезервированным под данный заказ и недоступен для добавления в корзину (это особенно наглядно когда товар в единственном экземпляре).

Это всё понятно и верно, однако данные функции статусов заказов не заданы явно на соответствующей вкладке редактирования статусов заказов (Заказы → Настройки → Статусы заказов). Возможно ли при этом создание произвольных статусов заказов с возможностью а) возврата экземпляра в наличие б) окончательного удаления из наличия в) экземпляр с данным статусом доступен для других заказов?

Допустим, мы хотим создать статус «Ошибка» в дополнение к «Удалён» (возвращается в наличие) или «Резерв» (резервируется, однако доступен для других покупателей), или «Перемещение» (условный внутренний заказ, экземпляр стоит на учёте, но выводится из данного магазина).

2 ответа

  • 1
    Максим Webasyst 15 июля 2015 02:38 # Решение

    Эту работу производят не статусы, а действия, которые в том числе переводят заказ в соответствующий статус. Вам потребуется писать собственный обработчик для своего действия, здесь есть пример: https://www.shop-script.ru/help/133/custom-order-handler-shop-script-5/ . Если есть навыки, то смотрите, как реализованы стандартные действия, как они работают со складом, и делайте свои по аналогии.

  • 1
    Syrnik.com Партнер-разработчик 15 июля 2015 02:44 # Решение

    Количество товара уменьшается на складе в зависимости от настройки магазина (Настройки→Склад) либо сразу после оформления заказа, либо после принятия «в обработку» (этим действием присваивается статус «В обработке» в стандартной конфигурации».

    Количество увеличивается при действии «удаление заказа» (это действие в стандарте присваивает статус «Удален») и действии «Возврат» (присвивается статус «Возврат»).

    Вы можете настроить, чтобы количество товара уменьшалось при принятии заказа в обработку, а в статус «Резерв» разрешить переводить сразу из состояния «Новый», тогда количество не спишется.

    С «Ошибкой» сложнее. Надо сначала удалить заказ, а потом переводить его в статус «Ошибка», для этого надо разрешить перевод в этот статус из состояния «Удален».

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите