thank-song/track123 is a Laravel package for laravel package for track123 api..
It currently has 0 GitHub stars and 10 downloads on Packagist (latest version V1.25.1221).
Install it with composer require thank-song/track123.
Discover more Laravel packages by thank-song
or browse all Laravel packages to compare alternatives.
Last updated
thank-song/track123 是一个用于接入 Track123 快递轨迹 OpenAPI 的 Laravel 工具包,支持物流单号注册、查询、轨迹同步及队列处理,适用于中大型 Laravel 项目。
通过 Composer 安装:
composer require thank-song/track123
在项目 .env 文件中添加以下配置:
TRACK123_API_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxx # Track123 API Token(必填)
TRACK123_API_URL=https://api.track123.com/gateway/open-api/ # API 地址(可选)
⚠️
TRACK123_API_TOKEN为必填项,否则接口请求将失败。
本包内置所需的数据表迁移文件,直接执行:
php artisan migrate
| 模型 | 说明 | |---|---| | Courier | 快递商信息(由 Track123 提供) | | Tracking | 物流单号主体 | | TrackingDetail | 轨迹节点明细 | | TrackingExtraInfo | 额外轨迹信息 | | LocalLogistic | 本地物流补充信息 |
php artisan track123:get-couriers
该命令将:
use ThankSong\Track123\Track123;
try {
$trackings = [
['trackNo' => '886000000087', 'courierCode' => 'fedex'],
['trackNo' => '886000000007', 'courierCode' => 'fedex'],
['trackNo' => '886000000003', 'courierCode' => 'fedex'],
];
$res = Track123::register($trackings);
var_dump($res->getAccepted()); // 注册成功的单号
var_dump($res->getRejected()); // 注册失败的单号
var_dump($res->getRejectedMessages()); // 失败原因
} catch (\Throwable $e) {
var_dump($e->getMessage());
}
use ThankSong\Track123\Jobs\RegisterTrackingJob;
$trackings = [
['trackNo' => '886000000087', 'courierCode' => 'fedex'],
['trackNo' => '886000000007', 'courierCode' => 'fedex'],
['trackNo' => '886000000003', 'courierCode' => 'fedex'],
];
RegisterTrackingJob::dispatch($trackings)->onQueue('default');
use ThankSong\Track123\Track123;
try {
// 单个单号查询
$res = Track123::query('886000000003');
// 批量查询示例
/*
$trackings = [
['trackNo' => '886000000007'],
['trackNo' => '886000000087'],
];
$res = Track123::queryTrackings($trackings);
*/
var_dump($res->getAccepted()); // 查询成功
var_dump($res->getRejected()); // 查询失败
var_dump($res->getRejectedMessages()); // 失败原因
} catch (\Throwable $e) {
var_dump($e->getMessage());
}
php artisan track123:query "886000000003"
该命令将:
| 命令 | 说明 |
|---|---|
| track123:get-couriers | 同步快递商列表 |
| track123:query {tracking_no} | 查询并更新物流轨迹 |
try {
$res= Track123::changeCarrier(oldCourierCode: 'mng-kargo',trackNo: '886957347096',newCourierCode: 'fedex');
var_dump($res->getMessage()); // 响应信息
} catch (\Throwable $e) {
var_dump($e->getMessage());
}
your-domin.com/api/track123/webhook
MIT License