Как реализовать резервирование товаров

Материал из Umicms
Версия от 14:52, 14 апреля 2014; Mad grant (обсуждение | вклад) (Новая страница: «'''Актуально для версии 2.9.6''' == Задача == Допустим у Вас есть ряд товаров, количество которы…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к:навигация, поиск

Актуально для версии 2.9.6

Задача

Допустим у Вас есть ряд товаров, количество которых ограничено и Вам необходимо создать для них резервирование, то есть, нужно реализовать примерно следующие возможности:

1) Включить резервирование товара; 2) Задать количество зарезервированного товара; 3) Указать дату, до которой этот товар должен быть оплачен; 4) Сделать, чтобы было невозможно совершить заказов, в котором количество товаров будет превышать резерв; 5) Все действия с корзиной перед покупкой (изменения количества, удаление и добавление позиций) должны сразу отражаться на количество резерва; 6) Если заказ с зарезервированным товаром не был переведен в статус "Готов" до даты, заданной в 3 пункте, то товарная позиция должна быть удалена из заказа; 7) Если заказ был отмене или отклонен, то у зарезервированного товара должно быть восполнено его количество.

Все эти задачи можно решить только кастомно, ниже даются примеры.

Решение

Управление резервирование у товара

Сначала создадим поля, в которых будут храниться настройки резервирования для товаров. Для этого, создадим в типе данных "объект каталога" следующие поля: