\EmsPostCalculate

Класс работы с базой данных SQLite "emspost.db". Создан для рассчетов доставки и времени доставки.

Summary

Methods
Properties
Constants
__construct()
getInstance()
getEmsPostCalculate()
getEmsApiPostCalculate()
getZoneFromZone()
getTimeFromTableTimes()
emsGetLocations()
emsGetValueFromZone()
emsGetNameFromZone()
getWhatIsThisRequest()
No public properties found
UTF8
DIR_DB
No protected methods found
No protected properties found
N/A
No private methods found
$_db
$_instance
N/A

Constants

UTF8

UTF8

Кодировка UTF-8

DIR_DB

DIR_DB

Каталог хранения файла базы данных. По умолчанию пуст, значит создается и находится в одной папке со скриптом.

Properties

$_db

$_db : object

База данных. Свойство $_db для хранения объекта соединения с базой данных

Type

object

$_instance

$_instance : object

Обект класса EmsDB

Type

object

Methods

__construct()

__construct(string $dirDB)

Метод создает экземпляр класса EmsDB, присваевает свойству $_db;

Parameters

string $dirDB

Каталог хранения файла базы данных. По умолчанию пустая строка.

getInstance()

getInstance() : \$_instance

Метод возвращает свойство $_instance - обект класса EmsDB.

Returns

\$_instance

getEmsPostCalculate()

getEmsPostCalculate(string $from, string $to, string $weight, boolean $time, integer $value) : true

Метод расчета стоимости доставки и времени доставки

Parameters

string $from

Откуда доставка принимаются строки "Москва", "МОСКВА", "city--moskva", "101700".

string $to

Куда доставка принимаются строки "Москва", "МОСКВА", "sity--moskva", "101700".

string $weight

Вес доставки принимаются строки "1.5", "1,5", расчет будет включительно.

boolean $time

Срок доставки, по умолчанию выключен (минус запрос к БД), если установлен в true и таблицы "times" нет, то вернет пустую строку.

integer $value

Ценность посылки по умолчанию равна 0.

Throws

\Exception

нет параметра или неправильный параметр - не найдено в БД.

Returns

true —

если все удачно иначе false.

getEmsApiPostCalculate()

getEmsApiPostCalculate(string $from, string $to, string $weight, boolean $time, integer $value) : true

Метод расчета стоимости доставки и времени доставки при обращении к emsapi в случае неудачи - штатным методом getEmsPostCalculate.

Parameters

string $from

Откуда доставка принимаются строки "Москва", "МОСКВА", "city--moskva", "101700".

string $to

Куда доставка принимаются строки "Москва", "МОСКВА", "sity--moskva", "101700".

string $weight

Вес доставки принимаются строки "1.5", "1,5", расчет будет включительно.

boolean $time

Срок доставки, по умолчанию выключен (минус запрос к БД), если установлен в true и таблицы "times" нет, то вернет пустую строку.

integer $value

Ценность посылки по умолчанию равна 0.

Throws

\Exception

нет параметра или неправильный параметр - не найдено в БД.

Returns

true —

если все удачно иначе false.

getZoneFromZone()

getZoneFromZone(string $name) : Array

Метод возвращает номер зоны в зависимости от введенных данных по индексу, названию городов и регионов.

Parameters

string $name

Принимаются строки "Москва", "МОСКВА", "city--moskva", "101700".

Throws

\Exception

нет параметра или неправильный параметр.

Returns

Array —

([id] => 58 [rate] => 0 [inrate] => 1 [type] => cities )если все удачно, иначе false.

getTimeFromTableTimes()

getTimeFromTableTimes(integer $idFrom, integer $idTo) : array

Метод возвращает время доставки от и до в виде массива, по индексу городов и регионов.

Parameters

integer $idFrom

Принимается индекс "от" города или региона.

integer $idTo

Принимается индекс "до" города или региона.

Throws

\Exception

не находит в таблице times.

Returns

array —

[0] => Array ( [min_10] => 5 [max_10] => 8 ) если все удачно, иначе false.

emsGetLocations()

emsGetLocations(string $locations) : array

Метод возвращает массив городов и регионов отсортированных по имени.

Parameters

string $locations

Локации города - cities, регионы - regions, по умолчанию и города и регионы - russia.

Throws

\Exception

нет параметра или неправильный параметр, ошибка при работе с базой данных

Returns

array —

если все удачно, иначе Exception.

emsGetValueFromZone()

emsGetValueFromZone(string $name) : array

Метод возвращает значение - value ("city--moskva") в зависимости от введенных данных по индексу, названию городов и регионов.

Parameters

string $name

Принимаются строки "Москва", "МОСКВА", "city--moskva", "101700".

Throws

\Exception

нет параметра или неправильный параметр.

Returns

array —

([id] => 58 [rate] => 0 [inrate] => 1 [type] => cities )если все удачно, иначе false.

emsGetNameFromZone()

emsGetNameFromZone(string $name, boolean $upper) : array

Метод возвращает значение - name ("Москва") в зависимости от введенных данных по индексу, названию городов и регионов.

Parameters

string $name

Принимаются строки "Москва", "МОСКВА", "city--moskva", "101700".

boolean $upper

По умолчанию в false. Выдает строку в верхнем регистре, например "МОСКВА".

Throws

\Exception

нет параметра или неправильный параметр.

Returns

array —

([id] => 58 [rate] => 0 [inrate] => 1 [type] => cities )если все удачно, иначе false.

getWhatIsThisRequest()

getWhatIsThisRequest(string $name) : string

Метод оределяет данные (что было передано число-emspostindex, регион-value, город большими буквами - nameupper, большими и малыми буквами - name).

Parameters

string $name

Принимаются строки "Москва", "МОСКВА", "city--moskva", "101700".

Throws

\Exception

нет параметра или неправильный параметр.

Returns

string —

'emspostindex','value', 'nameupper', 'name' если все удачно, иначе false.