Как реализовать резервирование товаров — различия между версиями
Материал из Umicms
Mad grant (обсуждение | вклад) (Новая страница: «'''Актуально для версии 2.9.6''' == Задача == Допустим у Вас есть ряд товаров, количество которы…») |
Mad grant (обсуждение | вклад) |
||
Строка 5: | Строка 5: | ||
Допустим у Вас есть ряд товаров, количество которых ограничено и Вам необходимо создать для них резервирование, то есть, нужно реализовать примерно следующие возможности: | Допустим у Вас есть ряд товаров, количество которых ограничено и Вам необходимо создать для них резервирование, то есть, нужно реализовать примерно следующие возможности: | ||
− | + | <ul> | |
− | + | <li>Включить резервирование товара;</li> | |
− | + | <li>Задать количество зарезервированного товара;</li> | |
− | + | <li>Указать дату, до которой этот товар должен быть оплачен;</li> | |
− | + | <li>Сделать, чтобы было невозможно совершить заказов, в котором количество товаров будет превышать резерв;</li> | |
− | + | <li>Все действия с корзиной перед покупкой (изменения количества, удаление и добавление позиций) должны сразу отражаться на количество резерва;</li> | |
− | + | <li>Если заказ с зарезервированным товаром не был переведен в статус "Готов" до даты, заданной в 3 пункте, то товарная позиция должна быть удалена из заказа;</li> | |
+ | <li>Если заказ был отмене или отклонен, то у зарезервированного товара должно быть восполнено его количество.</li> | ||
+ | <ul> | ||
Все эти задачи можно решить только кастомно, ниже даются примеры. | Все эти задачи можно решить только кастомно, ниже даются примеры. |
Версия 14:52, 14 апреля 2014
Актуально для версии 2.9.6
Задача
Допустим у Вас есть ряд товаров, количество которых ограничено и Вам необходимо создать для них резервирование, то есть, нужно реализовать примерно следующие возможности:
- Включить резервирование товара;
- Задать количество зарезервированного товара;
- Указать дату, до которой этот товар должен быть оплачен;
- Сделать, чтобы было невозможно совершить заказов, в котором количество товаров будет превышать резерв;
- Все действия с корзиной перед покупкой (изменения количества, удаление и добавление позиций) должны сразу отражаться на количество резерва;
- Если заказ с зарезервированным товаром не был переведен в статус "Готов" до даты, заданной в 3 пункте, то товарная позиция должна быть удалена из заказа;
- Если заказ был отмене или отклонен, то у зарезервированного товара должно быть восполнено его количество.
-
Все эти задачи можно решить только кастомно, ниже даются примеры.
Решение
Управление резервирование у товара
Сначала создадим поля, в которых будут храниться настройки резервирования для товаров. Для этого, создадим в типе данных "объект каталога" следующие поля: