Абстрактный класс типа доставки. Тип доставки содержит в себе функции для расчета стоимости в зависимости от различных параметров заказа.
Поля данных | |
const | EXTRA_KEY_PVZ_DATA = 'pvz_data' |
Защищенные члены | |
getAdditionalHtml (Order $order) | |
calcDeliveryPeriod (Order $order,?Address $address=null,?Delivery $delivery=null) | |
isDeliveryFree ($delivery, $cost, $order) | |
Защищенные данные | |
$common_log | |
$delivery | |
$opt = [] | |
actionOrderQuery | ( | Order | $order | ) |
Действие с запросами к заказу для получения дополнительной информации от доставки
Order | $order | - объект заказа |
addError | ( | $error_text | ) |
Добавляет ошибку в массив ошибок
string | $error_text | - текст ошибки |
addToOrderAdminComment | ( | $order, | |
$text | |||
) |
Добавление админского комментария об ошибке работы с доставкой
Order | $order | - объект заказа |
string | $text | - текст для добавления |
applyExtraChangeDiscount | ( | $delivery, | |
$cost, | |||
?Order | $order = null |
||
) |
Применяет наценку или скидку к итоговой цене за доставку
Delivery | $delivery | - объект доставки |
float | $cost | - цена за доставку |
Order | $order | - объект заказа |
RSException |
beforeOrderWrite | ( | Order | $order | ) |
Корректировка заказа перед его сохранением
Order | $order | - объект заказа |
Рассчитывает структурированную информацию по сроку, который требуется для доставки товара по заданному адресу
Order | $order | объект заказа |
Address | $address | объект адреса |
Delivery | $delivery | объект доставки |
canCalculateCostByDeliveryAddress | ( | Address | $address | ) |
Возвращает true если при оформлении заказа стоимость доставки можно рассчитать на основе адреса доставки, без указания дополнительных параметров
Address | $address | - адрес |
cleanDeliveryCostCache | ( | ) |
Очищает кэш предыдущих расчетов стоимости
clearErrors | ( | ) |
Очищает ошибки доставки
executeWebHook | ( | HttpRequest | $http_request | ) |
Обрабатывает запрос веб-хука
HttpRequest | $http_request |
|
protected |
Возвращает дополнительный HTML для публичной части
Order | $order | - объект заказа |
Delivery | $delivery | - объект доставки |
Order | null | $order | - объект заказа |
array | $pickpoints | - массив пунктов самовывоза |
\Exception | |
\SmartyException |
Delivery | $delivery | - объект доставки |
Order | null | $order | - объект заказа |
\SmartyException |
getAdminDeliveryParamsHtml | ( | Order | $order | ) |
Возвращает HTML для указания параметров доставки в админке
Order | $order | - заказ |
\SmartyException |
getAdminHTML | ( | Order | $order | ) |
Возвращает дополнительный HTML для админ части в заказе
Order | $order | - объект заказа |
getCheckoutError | ( | Order | $order | ) |
Возвращает ошибки, мешающие оформить заказ с данным способом доставки
Order | $order | - заказ |
Возвращает шаблон с дополнительной информацией для мобильного приложения v2
Order | $order | - объект заказа |
Delivery | $delivery | - объект доставки |
getDelivery | ( | ) |
Возвращает объект доставки
|
abstract |
Возвращает стоимость доставки для заданного заказа. Данный метод запрещено вызывать напрямую, для получения стоимости доставки используется прослойка getDeliveryFinalCost
Order | $order | - объект заказа |
Address | $address | - Адрес доставки |
Delivery | $delivery | - объект доставки |
bool | $use_currency | - конвертировать стоимость в валюту заказа |
Возвращает цену в текстовом формате, т.е. здесь может быть и цена и надпись, например "Бесплатно"
Order | $order | - объект заказа |
Address | $address | - объект адреса |
Delivery | $delivery | - объект доставки |
RSException |
getDeliveryDelayForCart | ( | $order | ) |
Возвращает количество дней, на которое нужно отодвинуть срок доставки. Обычно это срок поставки товаров на склад.
$order |
Возвращает дополнительную информацию о доставке (например сроки доставки, но можно возвращать еще что-то)
Order | $order | - объект заказа |
Address | $address | - Адрес доставки |
Delivery | $delivery | - Объект доставки |
Возвращает итоговую стоимость доставки для заданного заказа. Результат возвращается из кэша при повторном вызове. Для очистки кэша можно использовать ->cleanDeliveryCostCache()->getDeliveryFinalCost()
Order | $order | - объект заказа |
Address | $address | - Адрес доставки |
bool | $use_currency | - конвертировать стоимость в валюту заказа |
RSException |
getDeliveryParamsHtml | ( | Order | $order | ) |
Возвращает HTML для указания параметров доставки
Order | $order | - заказ |
\SmartyException |
Возвращает структурированную информацию по сроку, который требуется для доставки товара по заданному адресу. Сторонние модули могут откорректировать информацию о сроках доставки
Order | $order | объект заказа |
Address | $address | объект адреса |
Delivery | $delivery | объект доставки |
|
abstract |
Возвращает описание типа доставки
getErrors | ( | ) |
Получает массив ошибок
getErrorsStr | ( | $glue = ", " | ) |
Возвращает ошибки в виде строки склеевая символами
string | $glue | - символы для склеивания |
getFormHtml | ( | ) |
Возвращает HTML форму данного типа доставки
\SmartyException |
getFormObject | ( | ) |
Возвращает ORM объект для генерации формы или null
getNonCityRequiredAddressFieldsObjects | ( | ) |
Возвращает необходимые поля адреса, исключая определяющие выбор города
getOption | ( | $key = null , |
|
$default = null |
|||
) |
Возвращает значение доп. поля доставки
string | $key | - ключ |
mixed | $default | - значение по умолчанию |
getPvzByAddress | ( | Address | $address | ) |
Возвращает список доступных для указанного адреса ПВЗ
Address | $address | - адрес получателя |
Order | $order | - объект заказа |
Address | $address | - объект адреса |
getPvzListFilters | ( | ?Order | $order = null | ) |
Order | $order | - объект заказа |
getSelectedPvz | ( | Order | $order | ) |
Возвращает указанный в заказе ПВЗ
Order | $order | - заказ |
getSelectError | ( | Order | $order | ) |
Возвращает ошибки, мешающие выбрать способ доставки в списке доставок
Order | $order | - заказ |
|
abstract |
Возвращает идентификатор данного типа доставки. (только англ. буквы)
|
abstract |
Возвращает название расчетного модуля (типа доставки)
getTrackNumber | ( | Order | $order | ) |
Возвращает трек номер для отслеживания
Order | $order | - объект заказа |
getTrackNumberUrl | ( | Order | $order | ) |
Возвращает ссылку на отслеживание заказа
Order | $order | - объект заказа |
hasCheckoutError | ( | Order | $order | ) |
Возвращает наличие ошибки, мешающей оформить заказ
Order | $order | - заказ |
hasErrors | ( | ) |
Возвращает есть ошибки при работе метода или нет
hasPvz | ( | ) |
Возвращает, поддерживает ли данный способ доставки ПВЗ
hasSelectError | ( | Order | $order | ) |
Возвращает наличие ошибки, мешающей выбрать доставку
Order | $order | - заказ |
|
protected |
Возвращает true, если доставка должна быть бесплатной
isMyselfDelivery | ( | ) |
Возвращает true, если тип доставки предполагает самовывоз
loadOptions | ( | array | $opt = null | ) |
Устанавливает настройки типа доставки Также, в данном методе могут быть инициализированы параметры связанных вспомогательных объектов
array | null | $opt |
Функция срабатывает после создания заказа в БД
Order | $order | - объект заказа |
Address | $address | - Объект адреса |
removeFromOrderDeliveryErrorInfoLine | ( | $order | ) |
Удаление админского комментария об ошибках в доставке
Order | $order | - объект заказа |
setDelivery | ( | Delivery | $delivery | ) |
Устанавливает объект доставки
Delivery | $delivery |
setOption | ( | $key_or_array = null , |
|
$value = null |
|||
) |
Устанавливает значение доп. поля доставки
string | $key_or_array | |
mixed | $value |
Order | $order | - объект заказа |
Address | $address | - Адрес доставки |
toFormatedXML | ( | $xml_string | ) |
Переводит строку XML в форматированный XML
string | $xml_string | - строка XML |
validate | ( | Delivery | $delivery | ) |
Производит валидацию текущих данных в свойствах
Delivery | $delivery | - объект способа доставки |
Delivery | $delivery | - объект текущей доставки |
Order | $order | - объект текущего заказа |
string | $content | - содержимое для обёрки |
\Exception | |
\SmartyException |
writeToLog | ( | $key, | |
$value = '' |
|||
) |
Записывает в лог файл информацию
string | $key | - ключевое слово или фраза для записи, будет записана перед информацией в логе |
mixed | $value | - информация для записи |
|
protected |
|
protected |
|
protected |
const EXTRA_KEY_PVZ_DATA = 'pvz_data' |