supershipvn/supership-sdk-laravel

SuperShip SDK for Laravel

v1.0.0 2023-03-02 17:34 UTC

This package is auto-updated.

Last update: 2024-09-30 01:59:59 UTC


README

Total Downloads Latest Stable Version License

简介

使用 SuperShip SDK for Laravel,开发者可以轻松地将 SuperShip APIs 集成到 Laravel 代码库中,使企业能够自动化和扩展其运输操作。

特性

SuperShip API 中可用的包括以下内容

  • 地区 API:此 API 允许开发者检索 SuperShip 支持的省、区和乡镇,用于商品的取货、交付和退货。
  • 认证 API:此 API 允许开发者通过用户名和密码注册新用户并获取令牌。
  • 订单 API:此 API 允许开发者检索运费、创建新订单、检索订单信息、获取订单状态列表和生成运输标签。
  • 仓库 API:此 API 允许开发者创建新仓库、编辑当前仓库和检索所有仓库的信息。
  • Webhooks API:此 API 允许开发者注册新 Webhooks、编辑当前 Webhooks 和检索已注册的 Webhooks。

请参阅 SuperShip API 文档 了解更多详细信息。

API 文档

SuperShip API 的文档可以在 API 文档网站 上找到。

安装

您可以通过 Composer 安装此包

composer require supershipvn/supership-sdk-laravel

该包将自动注册自身。

您可以选择使用以下命令发布配置文件

php artisan vendor:publish --provider="SuperShipVN\SuperShip\SuperShipServiceProvider" --tag="supership-config"

以下步骤仅在您的 Laravel 版本低于 5.5 时才是必要的

  • 要添加服务提供者,更新 config/app.php 文件,包括对其的条目。
'providers' => [
    // ...
    SuperShipVN\SuperShip\SuperShipServiceProvider::class
];
  • 要注册类别名,在别名部分添加条目。
'aliases' => [
    // ...
    'SuperShip' => SuperShipVN\SuperShip\Facades\SuperShip::class
];

配置

要输入您的 SuperShip API Token,使用以下信息更新 .env 文件

SUPERSHIP_API_TOKEN=xxxxxxxxxxxxxxxxxxxx

用法

订单 API

创建订单

要创建新订单,使用以下语法调用 createOrder 方法

use SuperShip;

$params = [
    'pickup_phone' => '0989999999',
    'pickup_address' => '45 Nguyễn Chí Thanh',
    'pickup_commune' => 'Phường Ngọc Khánh',
    'pickup_district' => 'Quận Ba Đình',
    'pickup_province' => 'Thành phố Hà Nội',
    'name' => 'Trương Thế Ngọc',
    'phone' => '0945900350',
    'email' => null,
    'address' => '35 Trương Định',
    'province' => 'Thành phố Hồ Chí Minh',
    'district' => 'Quận 3',
    'commune' => 'Phường 6',
    'amount' => '220000',
    'value' => null,
    'weight' => '200',
    'payer' => '1',
    'service' => '1',
    'config' => '1',
    'soc' => 'KAN7453535',
    'note' => 'Giao giờ hành chính',
    'product_type' => '2',
    'products' => [
        [
            'sku' => 'P899234',
            'name' => 'Tên Sản Phẩm 1',
            'price' => 200000,
            'weight' => 200,
            'quantity' => 1,
        ],
        [
            'sku' => 'P899789',
            'name' => 'Tên Sản Phẩm 2',
            'price' => 250000,
            'weight' => 300,
            'quantity' => 2,
        ],
    ]
];

SuperShip::createOrder($params);

可选地,您可以使用以下方法检索订单代码

$order = SuperShip::createOrder($params);

return $order['results']['code'];

获取单个订单信息

要检索单个订单,使用以下语法调用 getOrderInfo 方法

$supershipOrderCode = 'SUPERSHIP_ORDER_CODE';

SuperShip::getOrderInfo($supershipOrderCode);

获取所有订单状态

要检索所有订单状态,使用以下语法调用 getOrderStatuses 方法

SuperShip::getOrderStatuses();

创建打印令牌

要获取新的标签打印令牌,使用以下语法调用 createPrintToken 方法

$params = [
    'code' => [
        'SUPERSHIP_ORDER_CODE_1',
        'SUPERSHIP_ORDER_CODE_2'
    ]
];

SuperShip::createPrintToken($params);

获取打印链接

要检索打印令牌的打印链接,使用以下语法调用 getPrintLink 方法

$printToken = '49ef6620-423e-11e9-b019-b71407a43f47';
$labelSize = 'K46';

SuperShip::getPrintLink($printToken, $labelSize);

仓库 API

获取所有仓库

要检索所有仓库,使用以下语法调用 getWarehouses 方法

SuperShip::getWarehouses();

创建仓库

要创建新仓库,使用以下语法调用 createWarehouse 方法

$params = [
    'name' => 'Kho HBT',
    'phone' => '0989999888',
    'contact' => 'Trần Cao Cường',
    'address' => '47 Lê Lợi',
    'province' => 'Thành phố Hồ Chí Minh',
    'district' => 'Quận Tân Bình',
    'district' => 'Phường 13',
    'primary' => '1'
];

SuperShip::createWarehouse($params);

更新仓库

要编辑当前仓库,使用以下语法调用 editWarehouse 方法

$params = [
    'code' => 'WLKGT07050',
    'name' => 'Kho Hai Bà Trưng',
    'phone' => '0989999888',
    'contact' => 'Dương Mạnh Quân'
];

SuperShip::editWarehouse($params);

Webhooks API

获取所有 Webhooks

要检索所有 Webhooks,使用以下语法调用 getWebhooks 方法

SuperShip::getWebhooks();

注册 Webhook

要注册新 Webhook,使用以下语法调用 registerWebhook 方法

$partnerUrl = 'https://example.com/listen/supership';

SuperShip::registerWebhook($partnerUrl);

认证API

创建用户

要创建新用户,使用以下语法调用createUser方法

$params = [
    'project' => 'HMN Store',
    'name' => 'Hoàng Mạnh Nam',
    'phone' => '0989998888',
    'email' => 'hmn.store@gmail.com',
    'password' => '323423',
    'partner' => 'lPxLuxfiTotCyZ1ZnQjMepUL24HLd05ybNBhVGFN'
];

SuperShip::createUser($params);

获取令牌

要通过用户名和密码获取令牌,使用以下语法调用retrieveToken方法

$params = [
    'client_id' => 'AZN6QUo40w',
    'client_secret' => 'C4fFVeFPkISEDQ8acNo9oSHUd8yIGuvoLWJdX9zY',
    'username' => 'hmn.store@gmail.com',
    'password' => '323423',
    'partner' => 'lPxLuxfiTotCyZ1ZnQjMepUL24HLd05ybNBhVGFN'
];

SuperShip::retrieveToken($params);

区域API

获取所有省份

要获取所有省份,使用以下语法调用getProvinces方法

SuperShip::getProvinces();

获取所有区

要获取所有区,使用以下语法调用getDistricts方法

$provinceCode = '79';

SuperShip::getDistricts($provinceCode);

获取所有乡

要获取所有乡,使用以下语法调用getCommunes方法

$districtCode = '777';

SuperShip::getCommunes($districtCode);

更新日志

有关最近更改的更多信息,请参阅更新日志

贡献

感谢您考虑为SuperShip SDK for Laravel做出贡献!贡献指南可在我们的贡献指南中找到。

安全

如果您发现有关安全性的问题,请通过电子邮件supertek@supership.vn联系,而不是使用问题跟踪器。

致谢

许可

SuperShip SDK for Laravel是开源软件,在MIT许可证下许可。