Версия: 4.x
Класс AbstractType

Подробное описание

Абстрактный класс типа доставки. Тип доставки содержит в себе функции для расчета стоимости в зависимости от различных параметров заказа.

Открытые члены

 loadOptions (array $opt=null)
 
 getTitle ()
 
 getDescription ()
 
 getShortName ()
 
 getDeliveryExtraText (\Shop\Model\Orm\Order $order,\Shop\Model\Orm\Address $address=null,\Shop\Model\Orm\Delivery $delivery=null)
 
 somethingWrong (\Shop\Model\Orm\Order $order,\Shop\Model\Orm\Address $address=null)
 
 onOrderCreate (\Shop\Model\Orm\Order $order,\Shop\Model\Orm\Address $address=null)
 
 getFormObject ()
 
 getAdminHTML (\Shop\Model\Orm\Order $order)
 
 isMyselfDelivery ()
 
 actionOrderQuery (\Shop\Model\Orm\Order $order)
 
 validate (\Shop\Model\Orm\Delivery $delivery)
 
 getOption ($key=null, $default=null)
 
 setOption ($key_or_array=null, $value=null)
 
 getFormHtml ()
 
 getAddittionalHtml (\Shop\Model\Orm\Delivery $delivery,\Shop\Model\Orm\Order $order=null)
 
 getAdditionalHtmlForPickPoints (\Shop\Model\Orm\Delivery $delivery,\Shop\Model\Orm\Order $order=null, $pickpoints=array())
 
 getAdminAddittionalHtml (\Shop\Model\Orm\Order $order=null)
 
 wrapByWidjet (\Shop\Model\Orm\Delivery $delivery,\Shop\Model\Orm\Order $order=null, $content)
 
 getDeliveryCost (\Shop\Model\Orm\Order $order,\Shop\Model\Orm\Address $address=null,\Shop\Model\Orm\Delivery $delivery, $use_currency=true)
 
 getDeliveryCostText (\Shop\Model\Orm\Order $order,\Shop\Model\Orm\Address $address=null,\Shop\Model\Orm\Delivery $delivery)
 
 getDeliveryPeriod (\Shop\Model\Orm\Order $order,\Shop\Model\Orm\Address $address=null,\Shop\Model\Orm\Delivery $delivery=null)
 
 applyExtraChangeDiscount ($delivery, $cost,\Shop\Model\Orm\Order $order=null)
 
 toFormatedXML ($xml_string)
 
 writeToLog ($key, $value)
 
 getTrackNumber (\Shop\Model\Orm\Order $order)
 
 getTrackNumberUrl (\Shop\Model\Orm\Order $order)
 
 getErrorsStr ($glue=", ")
 
 getErrors ()
 
 hasErrors ()
 
 clearErrors ()
 
 addError ($error_text)
 
 getPvzList (\Shop\Model\Orm\Order $order,\Shop\Model\Orm\Address $address=null)
 

Защищенные члены

 calcDeliveryPeriod (\Shop\Model\Orm\Order $order,\Shop\Model\Orm\Address $address=null,\Shop\Model\Orm\Delivery $delivery=null)
 

Защищенные данные

 $opt = array()
 

Методы

actionOrderQuery ( \Shop\Model\Orm\Order  $order)

Действие с запросами к заказу для получения дополнительной информации от доставки

addError (   $error_text)

Добавляет ошибку в массив ошибок

Аргументы
string$error_text- текст ошибки
applyExtraChangeDiscount (   $delivery,
  $cost,
\Shop\Model\Orm\Order  $order = null 
)

Применяет наценку или скидку к итоговой цене за доставку

Аргументы
\Shop\Model\Orm\Delivery$delivery- объект доставки
float$cost- цена за доставку
Возвращает
int|float
Исключения
RS
calcDeliveryPeriod ( \Shop\Model\Orm\Order  $order,
\Shop\Model\Orm\Address  $address = null,
\Shop\Model\Orm\Delivery  $delivery = null 
)
protected

Рассчитывает структурированную информацию по сроку, который требуется для доставки товара по заданному адресу

Аргументы
\Shop\Model\Orm\Order$orderобъект заказа
\Shop\Model\Orm\Address$addressобъект адреса
\Shop\Model\Orm\Delivery$deliveryобъект доставки
Возвращает
Helper | null
clearErrors ( )

Очищает ошибки доставки

getAdditionalHtmlForPickPoints ( \Shop\Model\Orm\Delivery  $delivery,
\Shop\Model\Orm\Order  $order = null,
  $pickpoints = array() 
)

Возвращает дополнительный HTML для публичной части для вывода пунктов самовывоза

Аргументы
\Shop\Model\Orm\Delivery$delivery- объект доставки
\Shop\Model\Orm\Order | null$order- объект заказа
array$pickpoints- массив пунктов самовывоза
Возвращает
string
Исключения
Exception
SmartyException
getAddittionalHtml ( \Shop\Model\Orm\Delivery  $delivery,
\Shop\Model\Orm\Order  $order = null 
)

Возвращает дополнительный HTML для публичной части

Аргументы
\Shop\Model\Orm\Delivery$delivery- объект доставки
\Shop\Model\Orm\Order | null$order- объект заказа
Возвращает
string
getAdminAddittionalHtml ( \Shop\Model\Orm\Order  $order = null)

Возвращает дополнительный HTML для административной части

Возвращает
string
getAdminHTML ( \Shop\Model\Orm\Order  $order)

Возвращает дополнительный HTML для админ части в заказе

Возвращает
string
getDeliveryCost ( \Shop\Model\Orm\Order  $order,
\Shop\Model\Orm\Address  $address = null,
\Shop\Model\Orm\Delivery  $delivery,
  $use_currency = true 
)
abstract

Возвращает стоимость доставки для заданного заказа. Только число.

Аргументы
\Shop\Model\Orm\Order$order- объект заказа
\Shop\Model\Orm\Address$address- Адрес доставки
\Shop\Model\Orm\Delivery$delivery- объект доставки
Возвращает
double
getDeliveryCostText ( \Shop\Model\Orm\Order  $order,
\Shop\Model\Orm\Address  $address = null,
\Shop\Model\Orm\Delivery  $delivery 
)

Возвращает цену в текстовом формате, т.е. здесь может быть и цена и надпись, например "Бесплатно"

Аргументы
\Shop\Model\Orm\Order$order- объект заказа
\Shop\Model\Orm\Address$address- объект адреса
\Shop\Model\Orm\Delivery$delivery- объект доставки
Возвращает
string
getDeliveryExtraText ( \Shop\Model\Orm\Order  $order,
\Shop\Model\Orm\Address  $address = null,
\Shop\Model\Orm\Delivery  $delivery = null 
)

Возвращает дополнительную информацию о доставке (например сроки достави, но можно возвращать еще что-то)

Аргументы
\Shop\Model\Orm\Order$order
\Shop\Model\Orm\Address$address- Адрес доставки
\Shop\Model\Orm\Delivery$delivery- Объект доставки
Возвращает
string
Исключения
RS
getDeliveryPeriod ( \Shop\Model\Orm\Order  $order,
\Shop\Model\Orm\Address  $address = null,
\Shop\Model\Orm\Delivery  $delivery = null 
)

Возвращает структурированную информацию по сроку, который требуется для доставки товара по заданному адресу. Сторонние модули могут откорректировать информацию о сроках доставки

Аргументы
\Shop\Model\Orm\Order$orderобъект заказа
\Shop\Model\Orm\Address$addressобъект адреса
\Shop\Model\Orm\Delivery$deliveryобъект доставки
Возвращает
Helper | null
Исключения
RS
getDescription ( )
abstract

Возвращает описание типа доставки

Возвращает
string
getErrors ( )

Получает массив ошибок

Возвращает
array
getErrorsStr (   $glue = ", ")

Возвращает ошибки в виде строки склеевая символами

Аргументы
string$glue- символы для склеивания
Возвращает
string
getFormHtml ( )

Возвращает HTML форму данного типа доставки

Возвращает
string
getFormObject ( )

Возвращает ORM объект для генерации формы или null

Возвращает
| null
getOption (   $key = null,
  $default = null 
)

Возвращает значение доп. поля доставки

Аргументы
string$key- ключ
mixed$default- значение по умолчанию
Возвращает
array|mixed|null
getPvzList ( \Shop\Model\Orm\Order  $order,
\Shop\Model\Orm\Address  $address = null 
)

Возвращает список доступных ПВЗ для переданного заказа

Аргументы
\Shop\Model\Orm\Order$order- объект заказа
\Shop\Model\Orm\Address$address- объект адреса
Возвращает
array | bool - если ПВЗ поддерживаются, false - есть ПВЗ не поддерживаются
getShortName ( )
abstract

Возвращает идентификатор данного типа доставки. (только англ. буквы)

Возвращает
string
getTitle ( )
abstract

Возвращает название расчетного модуля (типа доставки)

Возвращает
string
getTrackNumber ( \Shop\Model\Orm\Order  $order)

Возвращает трек номер для отслеживания

Аргументы
\Shop\Model\Orm\Order$order- объект заказа
Возвращает
boolean
getTrackNumberUrl ( \Shop\Model\Orm\Order  $order)

Возвращает ссылку на отслеживание заказа

Аргументы
\Shop\Model\Orm\Order$order- объект заказа
Возвращает
string
hasErrors ( )

Возвращает есть ошибки при работе метода или нет

Возвращает
boolean
isMyselfDelivery ( )

Возвращает true, если тип доставки предполагает самовывоз

Возвращает
bool
loadOptions ( array  $opt = null)
onOrderCreate ( \Shop\Model\Orm\Order  $order,
\Shop\Model\Orm\Address  $address = null 
)

Функция срабатывает после создания заказа

Аргументы
\Shop\Model\Orm\Order$order- объект заказа
\Shop\Model\Orm\Address$address- Объект адреса
Возвращает
mixed
setOption (   $key_or_array = null,
  $value = null 
)

Устанавливает значение доп. поля доставки

Аргументы
string$key_or_array
mixed$value
somethingWrong ( \Shop\Model\Orm\Order  $order,
\Shop\Model\Orm\Address  $address = null 
)

Возвращает текст, в случае если доставка невозможна. false - в случае если доставка возможна

Аргументы
\Shop\Model\Orm\Order$order
\Shop\Model\Orm\Address$address- Адрес доставки
Возвращает
mixed
toFormatedXML (   $xml_string)

Переводит строку XML в форматированный XML

Аргументы
string$xml_string- строка XML
Возвращает
string
validate ( \Shop\Model\Orm\Delivery  $delivery)

Производит валидацию текущих данных в свойствах

wrapByWidjet ( \Shop\Model\Orm\Delivery  $delivery,
\Shop\Model\Orm\Order  $order = null,
  $content 
)

Оборачивает в виджет содержимое для вывода

Аргументы
\Shop\Model\Orm\Delivery$delivery- объект текущей доставки
\Shop\Model\Orm\Order | null$order- объект текущего заказа
string$content- содержимое для обёрки
Возвращает
string
Исключения
Exception
SmartyException
writeToLog (   $key,
  $value 
)

Записывает в лог файл информацию

Аргументы
string$key- ключевое слово или фраза для записи, будет записана перед информацией в логе
mixed$value- информация для записи

Поля

$opt = array()
protected