archee-nic / ketkz-api

此包已废弃且不再维护。未建议替代包。
此包的最新版本(v0.1.9)没有可用的许可证信息。

http://ketkz.com API

v0.1.9 2019-02-26 08:51 UTC

This package is not auto-updated.

Last update: 2023-04-29 21:57:36 UTC


README

  1. 安装/安装
  2. 开始/开始
  3. 方法/方法
    1. sendOrder - 发送订单
    2. getOrders - 获取订单状态和数据
  4. 字段值
    1. 配送类型
    2. 配送状态(send_status变量)
    3. 包裹状态(status_kz变量)
    4. 确认状态(status变量)

安装/安装

composer require archee-nic/ketkz-api

开始/开始

  1. 创建实现TransportInterface的运输实现
// Пример транспорта c использованием Curl\Curl:
// ----------------------------

class MyTransport implements \KetkzApi\TransportInterface
{

    private $curl;

    /**
     * MyTransport constructor.
     *
     * @throws ErrorException
     */
    public function __construct()
    {
        $this->curl = new \Curl\Curl();
    }

    /**
     * @param string $url
     * @param null   $postData
     * @param array  $options
     *
     * @return string
     * @throws ErrorException
     */
    public function send($url, $postData = null, $options = [])
    {
        $this->curl->post($url,$postData);
        return $this->curl->response;
    }

    public function getHttpCode()
    {
        return $this->curl->httpStatusCode;
    }

    public function getDebugInfo()
    {
        return ['info'=>$this->curl->getInfo()];
    }

}
  1. 在需要的地方调用

示例

use KetkzApi;
// Иницилизируем API
$api = new KetkzApi($transport, 'uid', 'secret');

方法/方法

sendOrder - 发送订单

传入: RequestSendOrder 对象

返回: ResponseSendOrder 对象

// Пример отправки данных:
// ----------------------------

// Готовим данные
$requestOrder          = new RequestSendOrder();
$requestOrder->phone   = '79017777777';
$requestOrder->country = 'kz';
$requestOrder->offer   = 'brutalin - 2';
$requestOrder->secret  = '1';

// получаем данные
$data = $api->sendOrder($requestOrder);

getOrders - 获取订单状态和数据

传入数组: 包含订单id的整数数组

订单id = 在我们的系统中发送订单到Ketkz系统时获得的订单id

返回: ResponseGetOrdersFail 对象 - 如果出错或 ResponseSendOrder 数组 - 如果成功

// Пример отправки данных:
// ----------------------------

// готовим id заказов
$ids=[1,2];

// получаем данные
$data = $api->getOrders($ids);

字段值

所有状态值均表示在 KetkzApi\Enums

配送类型

也在 Enum 类 KetkzApi\Enums\KzDeliveryEnum 中表示

------ Казахстан
1    =>'AKSAI',
2    =>'AKTAU',
3    =>'AKTOBE',
4    =>'ALMATA',
5    =>'ASTANA-KURER',
6    =>'ATYRAU',
8    =>'Beineu',
9    =>'EKIBASTUZ',
10    =>'KARAGANDA',
11    =>'KOKSHETAU',
12    =>'KOSTANAI',
13    =>'KYLSARY',
14    =>'KYZYLORDA',
15    =>'PAVLODAR',
16    =>'PETROPAVLOVSK',
18    =>'RUDNYI',
19    =>'Saryagash',
20    =>'SATPAEV',
21    =>'SEMEI',
22    =>'SHIMKENT',
23    =>'TALDYKORGAN',
24    =>'TARAZ',
25    =>'TEMIRTAU',
26    =>'TURKESTAN',
27    =>'URALSK',
28    =>'UST-KAMENOGORSK',
29    =>'ZHANAOZEN',
30    =>'Zhetysai',
31    =>'ZHEZKAZGAN',
56    => 'KAPSHAGAI',
86    => 'Hromtau',
87    => 'Kandagash',
88    => 'Kaskelen',
89    => 'Uzynagash',
90    => 'Talgar',
91    => 'Balkhash',
93    => 'Kentau',
94    => 'Shieli',
95    => 'Zharkent',
96    => 'Zhanakorgan',
97    => 'Merke',

32 => 'Почта',
142 => 'Shamalgan',
143 => 'Esik',
144 => 'Toretam',

146 => 'Shu',
147 => 'Arys'

------ Киргизия
34 => 'Бишкек курьер',
35 => 'Каракол курьер',
36 => 'Ош курьер',
37 => 'Нарын курьер',
38 => 'Кызыл-Кия курьер',
39 => 'Баткен курьер',
40 => 'Талас курьер',
41 => 'Карабалта курьер',
42 => 'Токмок курьер',
43 => 'Джалал-Абад курьер',
44 => 'Узген',
45 => 'Сокулык Почта',
46 => 'Базаркоргон Почта',
47 => 'Кант Почта',
48 => 'Балыкчи курьер',
49 => 'Новопокровка Почта',
50 => 'Ивановка Почта',
51 => 'Ноокат Почта',
52 => 'Новопавловка курьер',
53 => 'Чолпон Почта',
54 => 'Бостари Почта',
55 => 'Беловодское Почта',
58 => 'Карасу курьер',

66 => 'Кемин Почта',

68 => 'Сузак Почта',
69 => 'Массы Почта',
70 => 'Кочкор ата Почта',
75 => 'Араван Почта',
79 => 'Сулюкта почта',
80 => 'Исфана курьер',
81 => 'Кочкорка почта',
82 => 'Таш-Кумыр курьер',
83 => 'Токтогул почта',
84 => 'Каракуль почта',
85 => 'Майлуу-Суу почта',


------ Армения
61 => 'Почта АРМ',
62 => 'Ереван курьер'

------ Россия
107 => 'Новосибирск',
108 => 'Омск',
135 => 'Бердск',
136 => 'Искитим',
137 => 'Куйбышев',
138 => 'Линево',
139 => 'Калачинск',
140 => 'Москаленки',
141 => 'Тара',
148 => 'Екатеринбург'
149 => 'Каменск-Уральский',
150 => 'Лесной',
151 => 'Новоуральск',
152 => 'Серов',
153 => 'Исилькуль'

配送状态(send_status变量)

也在 Enum 类 KetkzApi\Enums\SendStatusEnum 中表示

"0" "Отправлен"
"4" "Отказ"
"5" "Оплачен"
"6" "На отправку"
"7" "Отклонено"

包裹状态(status_kz变量)

也存在于Enum类中 KetkzApi\Enums\StatusKzEnum

"0" "Обработка"
"1" "Отложенная доставка"
"2" "На доставку"
"4" "Упакован на почте"
"5" "Заберет"
"6" "Упакован"
"7" "Хранение"
"8" "Упакован принят"
"9" "Обратная доставка отправлена"
"10" "Груз вручен"
"11" "Груз в дороге"
"13" "Получен"
"15" "Располовинен"
"14" "Нет товара"
"16" "Проверен"
"17" "Свежий"
"18" "Автоответчик"
"19" "Перезвонить"
"20" "Сделать замену"
"21" "Возврат денег"
"22" "На контроль"
"23" "Упакован добавочный"
"24" "Частичный возврат"

确认状态(变量status)

也存在于Enum类中 KetkzApi\Enums\StatusEnum

"0" "новая"
"1" "Подтвержден"
"2" "Отменён"
"3" "Перезвонить"
"4" "Недозвон"
"5" "Брак"
"6" "Уже получил заказ"
"7" "Черный список"
"8" "Заказано у конкурентов"
"10" "недозвон_ночь"
"11" "Предварительно подтвержден"