2017 © Pedro Peláez
 

library aisdk-api-order-client

API client aisdk project)

image

interso/aisdk-api-order-client

API client aisdk project)

  • Monday, September 4, 2017
  • by interso
  • Repository
  • 1 Watchers
  • 0 Stars
  • 0 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

aisdk-api-order-client

Aisdk API клиент для заявок

PHP библиотека для работы с сервисом aisdk с помощью REST API, (*1)

Установка

Установка через composer:, (*2)

composer require interso/aisdk-api-order-client

Использование

``` php $client = new \Aisdk\Client('http://127.0.0.1:8090/api',new \GuzzleHttp\Client()); $client->auth('login', 'password');, (*3)


или ``` php $client = new \Aisdk\Client('http://127.0.0.1:8090/api',new \GuzzleHttp\Client(), ['token'=>'w340349if903f0weifjqewoifjewo']);

Методы для клиента

1. Список заказов

``` php $orders = $client->getOrders();, (*4)

или 
``` php
$orders = $client->getOrders($page=3);

Возвращает массив заявок. По умолчанию 1 страницу. Каждая заявка является ассоциативным массивом с ключами., (*5)

id - Идентификатор заявки, (*6)

engine_type - Тип двигателя * none - Нет * ice - Бензин * diesel - Дизель * pressure_gas - Сжатый газ * liquefied_gas - Сжиженный газ, (*7)

run - Пробег (в км), (*8)

tires - Используемая марка шин, (*9)

axle_count - Кол-во осей у транспортного средства, (*10)

vin - VIN номер транспортного средства, (*11)

reg_number - Регистрационный номер, (*12)

vehicle_str - Название модели, (*13)

vehicle_type - Категория транспортного средства, (*14)

A, B, C, D, E

vehicle_type2 - Классификация транспортного средства, (*15)

L, M1, M2, M3, N1, N2, N3, O1, O2, O3, O4

max_weight - Максимально разрешенная масса (кг), (*16)

weight - Масса транспортного средства без нагрузки (кг), (*17)

prod_year - Год выпуска, (*18)

document_type - Тип документов на транспортное средство * pts - ПТС * license - Свидетельство, (*19)

document_serial - Серия документа, (*20)

document_number - Номер документа, (*21)

document_dt - Дата выдачи документа, (*22)

document_owner - Кем выдан документ, (*23)

notes - Примечание к заявке от агента, (*24)

dt_add - Дата добавления заявки, (*25)

dt_update - Дата обновления заявки, (*26)

body_number - Номер кузова, (*27)

chassis_number - Номер шасси, (*28)

vehicle_goal - Назначение транспортного средства * taxi - Такси * personal - Личная * none - Нет отметок * learn - Для учебной езды * route - Для маршрутных перевозок * danger - Для опасных грузов, (*29)

brake_system - Тип тормозной системы * hydra - Гидравлические * pneu - Пневматические * mechanical - Механические * combined - Комбинированные, (*30)

owner_fname - Имя предоставившего сведения о ТС, (*31)

owner_lname - Фамилия предоставившего сведения о ТС, (*32)

owner_mname - Отчество предоставившего сведения о ТС, (*33)

organization - Организация владеющая данным ТС, (*34)

2. Информация об одном заказе

``` php $order = $client->getOrder(1234), (*35)

Возвращает данные одной заявки. Формат аналогичен указанному в методе getOrders.


#### 3. Информация о диагностической карте одного заказа
``` php
$dcard = $client->getDcardForOrder(1234);

Возвращает найденную для заявки диагностическую карту в виде ассоциативного массива со следуюшими полями:, (*36)

order_id - идентификатор заявки, (*37)

expiration_date - дата до которой выдана диагностическая карта, (*38)

start_date - дата с которой диагностическая карта выдана, (*39)

number - номер в ЕАИСТО, (*40)

url - URL для доступа к PDF файлу с диагностической картой, (*41)

4. Мета информация об одной заявке

``` php $meta = $client->getMetaForOrder(1234);, (*42)


Возвращает найденную для заявки мета информацию со следующими полями: **order_id** - идентификатор заявки **status** - статус заявки * new - новая * proceed - в процессе * complete - завершена * canceled - отменена * error - ошибка **station_id** - идентификатор станции **station** - название станции #### 5. Создание заявки ``` php $client->createOrder($data);

В параметре data передать массив полей для создания заявки. Принимаются следующие поля:, (*43)

engine_type - Тип двигателя * none - Нет * ice - Бензин * diesel - Дизель * pressure_gas - Сжатый газ * liquefied_gas - Сжиженный газ, (*44)

run - Пробег (в км), (*45)

tires - Используемая марка шин, (*46)

axle_count - Кол-во осей у транспортного средства, (*47)

vin - VIN номер транспортного средства, (*48)

reg_number - Регистрационный номер, (*49)

vehicle_str - Название модели, (*50)

vehicle_type - Категория транспортного средства, (*51)

A, B, C, D, E

vehicle_type2 - Классификация транспортного средства, (*52)

L, M1, M2, M3, N1, N2, N3, O1, O2, O3, O4

max_weight - Максимально разрешенная масса (кг), (*53)

weight - Масса транспортного средства без нагрузки (кг), (*54)

prod_year - Год выпуска, (*55)

document_type - Тип документов на транспортное средство * pts - ПТС * license - Свидетельство, (*56)

document_serial - Серия документа, (*57)

document_number - Номер документа, (*58)

document_dt - Дата выдачи документа, (*59)

document_owner - Кем выдан документ, (*60)

notes - Примечание к заявке от агента, (*61)

body_number - Номер кузова, (*62)

chassis_number - Номер шасси, (*63)

vehicle_goal - Назначение транспортного средства * taxi - Такси * personal - Личная * none - Нет отметок * learn - Для учебной езды * route - Для маршрутных перевозок * danger - Для опасных грузов, (*64)

brake_system - Тип тормозной системы * hydra - Гидравлические * pneu - Пневматические * mechanical - Механические * combined - Комбинированные, (*65)

owner_fname - Имя предоставившего сведения о ТС, (*66)

owner_lname - Фамилия предоставившего сведения о ТС, (*67)

owner_mname - Отчество предоставившего сведения о ТС, (*68)

organization - Организация владеющая данным ТС, (*69)

В качестве ответа приходит массив вида:, (*70)

``` php $result = [ 'success' => ???, 'data' = [], ];, (*71)

Значение ключа success сообщает об успешности операции и принимает значение true/false.
Если значение success = false, то ключ data содержит массив ошибок.
В массиве ошибок ключом является имя поля, а значением список ошибок в нем.
Исключением является ошибка с ключом globalError. Она не относится к одному полю, 
а связана со всем заказом целиком.
Поле vehicle_type2 автоматически вычисляется и требуется его передавать, только когда vehicle_type = B.

#### 6. Обновление заявки
``` php
$client->updateOrder($id, $data);

Метод работает аналогично созданию заявки. Т.е. $id указывает какую заявку обновляем, а доступные значения для $data, а так-же формат ответа, такой-же как и при создании заявки., (*72)

Примеры

Попытка создать заявку с пустым списком данных

``` php $result = $client->createOrder(); print_r($result);, (*73)

В ответе будет
```phpArray
(
    [success] => 
    [errors] => Array
        (
            [prod_year] => Array
                (
                    [0] => Необходимо заполнить «Год выпуска».
                )

            [owner_fname] => Array
                (
                    [0] => Необходимо заполнить «Имя».
                )

            [owner_lname] => Array
                (
                    [0] => Необходимо заполнить «Фамилия».
                )

            [owner_mname] => Array
                (
                    [0] => Необходимо заполнить «Отчество».
                )

            [vehicle_str] => Array
                (
                    [0] => Необходимо заполнить «Модель ТС».
                )

            [vehicle_goal] => Array
                (
                    [0] => Необходимо заполнить «Назначение».
                )
           [engine_type] => Array
                (
                    [0] => Необходимо заполнить «Тип двигателя».
                )

            [brake_system] => Array
                (
                    [0] => Необходимо заполнить «Тормоза».
                )

            [tires] => Array
                (
                    [0] => Необходимо заполнить «Марка шин».
                )

            [run] => Array
                (
                    [0] => Необходимо заполнить «Пробег (км)».
                )

            [axle_count] => Array
                (
                    [0] => Необходимо заполнить «Кол-во осей».
                )

            [weight] => Array
                (
                    [0] => Необходимо заполнить «Масса без нагрузки».
                )

            [max_weight] => Array
                (
                    [0] => Необходимо заполнить «Максимальная масса».
                )

            [document_type] => Array
                (
                    [0] => Необходимо заполнить «Тип документа».
                )

            [document_serial] => Array
                (
                    [0] => Необходимо заполнить «Серия документа».
                )

            [document_number] => Array
                (
                    [0] => Необходимо заполнить «Номер документа».
                )

            [document_dt] => Array
                (
                    [0] => Необходимо заполнить «Дата выдачи».
                )

            [document_owner] => Array
                (
                    [0] => Необходимо заполнить «Кем выдано».
                )

            [vehicle_type] => Array
                (
                    [0] => Необходимо заполнить «Категория ТС».
                )

        )

)

Создание заявки

``` php $data = array ( 'engine_type' => 'ice', 'run' => 11000, 'tires' => 'Cordiant', 'axle_count' => '2', 'vin' => 'XTA21144000372068', 'reg_number' => 'P300TO98', 'vehicle_str' => 'ВАЗ-21140', 'max_weight' => '1520', 'weight' => '1107', 'prod_year' => '2011', 'document_type' => 'license', 'document_serial' => '7913', 'document_number' => '401786', 'document_dt' => '03.05.2011', 'document_owner' => 'МРЭО-1', 'notes' => 'Проверка работы API', 'body_number' => '', 'chassis_number' => '', 'vehicle_goal' => 'personal', 'brake_system' => 'hydra', 'owner_fname' => 'Виктор', 'owner_lname' => 'Смирнов', 'owner_mname' => 'Афанасьевич', 'organization' => '', 'vehicle_type' => 'B', 'vehicle_type2' => 'M1', ); $result = $client->createOrder($data); print_r($result);, (*74)

В ответе будет
```php
array(2) {
  ["success"]=>
  bool(true)
  ["id"]=>
  int(41514)
}

The Versions

04/09 2017

dev-master

9999999-dev

API client aisdk project)

  Sources   Download

MIT

The Requires

 

by Stanislav Vinogradov