
Выбор даты и времени доставки
Технические данные
Совместимые редакции
- Программа для ЭВМ "1С-Битрикс: Управление сайтом". Лицензия Малый бизнес
- Программа для ЭВМ "1С-Битрикс: Управление сайтом". Лицензия Бизнес
- Программа для ЭВМ "1С-Битрикс24". Лицензия Интернет-магазин + CRM (12 мес.)
Описание
Модуль позволяет администрировать доступные интервалы доставки.
В состав модуля входит компонент, подготавливающий данные интервалов доставки к выводу в публичной части, также содержит шаблон для использования в стандартном компоненте bitrix:sale.order.ajax с шаблоном bootstrap_v4.
Возможности:
Учёт остатков - при оформлении заказа модуль не предложит выбор интервалов доставки, если не все товары есть на складах [опционально]
Ограничение количества ближайших дней, для которых доступен выбор интервалов доставки
Создание разных наборов интервалов доставки для разных способов доставки
Многосайтовость
Можно задавать “базовые” интервалы доставки по дням недели и переопределять их в календаре для определенных дат
Выбор количества дней, через которое можно заказать доставку (пример: в понедельник можно выбрать интервалы только начиная с четверга) с дедлайном (учитывается время оформления заказа - например, до 12:00 можно заказать доставку на среду, а после 12:00 уже на четверг)
Неограниченное количество интервалов доставки в рамках одного дня
Сохранение результата в свойство заказа типа “Строка”
Передача интервалов доставки в JS_DATA компонента bitrix:sale.order.ajax по событию OnSaleComponentOrderJsData для случаев, когда вы реализуете собственную логику внутри bitrix:sale.order.ajax и не используете поставляемый с модулем компонент delight:delivery.datetime
Добавление собственной логики для вывода доступных дней/интервалов доставки путём модификации выходных данных
- Работает только на сайтах с кодировкой UTF-8
- Версия Битрикса от 20.400.0
- Версия PHP 8.1+
- Наличие модулей: Sale, Catalog, Fileman
После установки будет доступна административная часть модуля, интеграция в публичную часть индивидуальна и делается разработчиками клиента.
В процессе настройки вам потребуется создать или использовать существующее свойство заказа типа "Строка", в котором будет храниться выбранный день и интервал доставки.
Пример интеграции в стандартный шаблон bootstrap_v4 компонента sale.order.ajax: https://github.com/DeLighter1990/bx-delivery-datetime-templates
==============================================
Если вы хотите использовать полностью собственную интеграцию в публичной части, то:
При использовании компонента bitrix:sale.order.ajax вы можете получить интервалы доставки в JS_DATA, включив передачу этих данных в настройках модуля.
Если для оформления заказа вы не используете компонент bitrix:sale.order.ajax или хотите вывести доступные интервалы доставки за пределами оформления заказа, то для получения интервалов доставки на бэке используйте:
\Bitrix\Main\Loader::includeModule('delight.deliverydatetime'); $deliveryBlocks = []; $daysLimit = \Bitrix\Main\Config\Option::get(self::MODULE_ID, 'daysLimit'); $resData = \Delight\Deliverydatetime\General::getBySite(SITE_ID); while ($rowDataObject = $resData->fetchObject()) { $deliveryBlocks = [ 'id' => $rowDataObject->getId(), 'title' => $rowDataObject->getTitle(), 'deliveries' => $rowDataObject->getDeliveries(), 'availableDays' => \Delight\Deliverydatetime\General::getDaysWithIntervals(new \DateTime(), $rowDataObject, $daysLimit) ]; } |
При обращении за технической поддержкой обязательно указывайте ссылку на сайт и доступы в админку и FTP!
Установите этот модуль прямо сейчас!
Для этого укажите адрес сайта: