Версия: 6.x
burger close
Класс RussianPostCalc
Граф наследования:RussianPostCalc:
AbstractType

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

 __construct ()
 
 getTitle ()
 
 getDescription ()
 
 getShortName ()
 
 getRequiredAddressFields ()
 
 canCalculateCostByDeliveryAddress (Address $address)
 
 getFormObject ()
 
 getSelectError (Order $order)
 
 getCheckoutError (Order $order)
 
 getDeliveryCost (Order $order, Address $address, Delivery $delivery, $use_currency=true)
 
 calculateCost ($params)
 
 actionOrderQuery (Order $order)
 
 somethingWrong (Order $order, Address $address=null)
 
 getTrackNumber (Order $order)
 
 getTrackNumberUrl (Order $order)
 
- Открытые члены унаследованные от AbstractType
 __construct (array $options=null)
 
 processOptions ($options)
 
 beforesave ()
 
 getCheckboxParam ($key=null)
 
 set ($value)
 
 setListenPost ($boolean)
 
 isListenPost ()
 
 get ()
 
 getHint ()
 
 setHint ($text)
 
 setEscapeType ($escape_type)
 
 getEscapeType ()
 
 unsetvalue ()
 
 validate ($value)
 
 setChecker ($callmethod, $errortxt= '')
 
 removeAllCheckers ()
 
 getCheckers ()
 
 setVisible ($bool, $switch=null)
 
 isVisible ($switch=null, $use_default_visible=true)
 
 isMeVisible ($switch=null, $use_default_visible=true)
 
 setMeVisible ($bool)
 
 getTreeList ()
 
 setTree ($tree_function,...$params)
 
 getListFunc ()
 
 setList ($listfunc,...$params)
 
 setListFromArray (array $list)
 
 setChangeSizeForList ($bool)
 
 getList ()
 
 setCheckboxView ($onValue, $offValue)
 
 setCheckboxListView ($bool)
 
 setRadioListView ($bool, $inline=false)
 
 isRadioListInline ()
 
 selfSave ()
 
 normalizePost ()
 
 addClass (string $class)
 
 setAttr (array $view_attr)
 
 getAttr ()
 
 getAttrArray ()
 
 getAttrByKey ($key)
 
 isHaveAttrKey ($key)
 
 textView ()
 
 formView ($view_options=null, $orm_object=null)
 
 setName ($name)
 
 getName ()
 
 setArrayWrap ($array_wrap_name)
 
 setFormName ($form_name)
 
 getFormName ()
 
 setMaxLength ($length)
 
 getMaxLength ()
 
 isAlwaysModify ()
 
 setAlwaysModify ($bool)
 
 setReadOnly ($readonly=true)
 
 setErrors (array $errors)
 
 getErrors ()
 
 hasErrors ()
 
 getDescription ()
 
 setDescription ($description)
 
 setUseToSave ($bool)
 
 isUseToSave ()
 
 isRuntime ()
 
 setRuntime ($bool)
 
 isAutoincrement ()
 
 setAutoincrement ($bool)
 
 hasLength ()
 
 setAllowEmpty ($bool)
 
 isAllowEmpty ()
 
 getSQLNotation ()
 
 getSQLTypeParameter ()
 
 setDecimal ($decimal)
 
 getDecimal ()
 
 setPrimaryKey ($bool)
 
 isPrimaryKey ()
 
 setUnique ($bool)
 
 isUnique ()
 
 setIndex ($bool)
 
 isIndex ()
 
 setDefault ($default, $is_func=false)
 
 getDefault ($db_format=false)
 
 isDefaultFunc ()
 
 getPhpType ()
 
 setPhpType ($type)
 
 setTemplate ($template)
 
 setMeTemplate ($template)
 
 getOriginalTemplate ()
 
 getRenderTemplate ($multiedit=false)
 
 getTitle ()
 
 setHidden ($bool)
 
 isHidden ()
 
 escape ($value)
 
 checkDefaultRequestValue ($value)
 
 setRequestType ($var_type)
 
 getFromRequest (array $src)
 
 callPropertyFunction ($property_name,...$params)
 
 setTrimString ($bool)
 
 getTrimString ()
 
 isHtmlEncodedField ()
 
 __set ($name, $value)
 
 __get ($name)
 
 __isset ($name)
 
 __unset ($name)
 

Поля данных

const SHORT_NAME = 'russianpostcalc'
 
const CALCULATE_URL = 'https://tariff.pochta.ru'
 
const DELIVERY_PERIOD_URL = 'https://delivery.pochta.ru'
 
- Поля данных унаследованные от AbstractType
const ESCAPE_TYPE_NONE = false
 
const ESCAPE_TYPE_ENTITY = 'entity'
 
const ESCAPE_TYPE_HTML = 'html'
 
 $name
 
 $description
 
 $formtype = "input"
 

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

 calcDeliveryPeriod (Order $order, Address $address=null, Delivery $delivery=null)
 
 apiRequest ($method, $request, $params=[])
 
 objToArray ($obj)
 

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

 $config
 
- Защищенные данные унаследованные от AbstractType
 $listfunc
 
 $listfunc_param = []
 
 $tree_function
 
 $tree_function_params = []
 
 $list
 
 $parent_object
 
 $value
 
 $hidden = false
 
 $requesttype
 
 $checkers = []
 
 $use_to_save = true
 
 $read_only = false
 
 $array_wrap_name = false
 
 $form_template = '%system%/coreobject/type/form/string.tpl'
 
 $template
 
 $me_template
 
 $change_size_for_list = true
 
 $always_modify = false
 
 $errors = []
 
 $listen_post = true
 
 $hint = ''
 
 $checkbox_param = []
 
 $checkbox_list = false
 
 $radio_list = false
 
 $radio_list_inline = false
 
 $vis_form = true
 
 $me_visible
 
 $view_attr = []
 
 $php_type = ''
 
 $escape_type = self::ESCAPE_TYPE_ENTITY
 
 $runtime = false
 
 $sql_notation = ''
 
 $autoincrement = false
 
 $allowempty = true
 
 $primary_key = false
 
 $default = null
 
 $is_default_func
 
 $unique = false
 
 $index = false
 
 $has_len = true
 
 $max_len
 
 $decimal
 
 $form_name
 
 $trim_string = false
 
 $options = []
 

Конструктор(ы)

__construct ( )

Методы

actionOrderQuery ( Order  $order)

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

Аргументы
Order$order- объект заказа
Возвращает
string
apiRequest (   $method,
  $request,
  $params = [] 
)
protected

API запрос

Аргументы
string$method- метод (get|post|put|delete)
string$request- адрес запроса
array$params- параметры запроса
Возвращает
array
calcDeliveryPeriod ( Order  $order,
Address  $address = null,
Delivery  $delivery = null 
)
protected

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

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

Рассчитывает стоимость доставки заказа

Аргументы
array$params- даннные для калькуляции, включает следующие поля: mail_category - вид РПО mail_type - тип РПО indexto - индекс получателя mass - вес заказа mark_courier - отметка "курьер" mark_fragile - отметка "хрупкое" declared_value - объявленная стоимость
canCalculateCostByDeliveryAddress ( Address  $address)

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

Аргументы
Address$address- адрес
Возвращает
bool
getCheckoutError ( Order  $order)

Возвращает ошибки, мешающие оформить заказ

Аргументы
Order$order- заказ
Возвращает
string
Исключения
RSException
getDeliveryCost ( Order  $order,
Address  $address,
Delivery  $delivery,
  $use_currency = true 
)

Возвращает стоимость доставки - отсутствует логика по валюте

Аргументы
Order$order
Address | null$address
Delivery$delivery
bool$use_currency
Возвращает
mixed
Исключения
RSException
getDescription ( )

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

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

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

Возвращает
| null
getRequiredAddressFields ( )

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

Возвращает
string[]
getSelectError ( Order  $order)

Возвращает ошибки, мешающие выбрать доставку

Аргументы
Order$order- заказ
Возвращает
string
getShortName ( )

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

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

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

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

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

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

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

Аргументы
Order$order- объект заказа
Возвращает
string
objToArray (   $obj)
protected

Рекурсивно превращает объект в массив

Аргументы
mixed$obj- объект, который нужно преобразовать
Возвращает
array
somethingWrong ( Order  $order,
Address  $address = null 
)

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

Аргументы
Order$order
Address$address- Адрес доставки
Возвращает
mixed
Исключения
RSException

Поля

$config
protected
const CALCULATE_URL = 'https://tariff.pochta.ru'
const DELIVERY_PERIOD_URL = 'https://delivery.pochta.ru'
const SHORT_NAME = 'russianpostcalc'