signifly/gls-parcel-shop

此包已被废弃且不再维护。未建议替代包。

GLS Parcel Shop Webservice 的简单封装

v1.0.1 2021-05-21 08:20 UTC

This package is auto-updated.

Last update: 2024-04-21 14:48:38 UTC


README

Latest Version on Packagist Build Status StyleCI Quality Score Total Downloads

signifly/gls-parcel-shop 包是一个简单的 GLS Parcel Shop Webservice 封装,使用 PHP 编写,并带有 Laravel 的服务提供者。

目录

安装

您可以通过 composer 安装此包

composer require signifly/gls-parcel-shop

包将自动注册自己。

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

php artisan vendor:publish --tag="parcel-shop-config"

用法

GLS Parcel Shop webservice 允许您检索以下信息:

  • 指定国家的所有包裹店
  • 通过唯一编号查找特定的包裹店
  • 查找地址附近的包裹店
  • 在特定的邮编和国家内查找包裹店

设置客户端

在 Laravel 中可以跳过此步骤,因为客户端绑定到了服务容器。

$client = GLSParcelShop::make('http://www.gls.dk/webservices_v4/wsShopFinder.asmx?WSDL');

从 Laravel 服务容器中解析

use Signifly\ParcelShop\Contracts\ParcelShop;

$client = app(ParcelShop::class);

获取所有包裹店

$client->all('DK'); // returns Illuminate\Support\Collection

此请求返回一个 Signifly\ParcelShop\Resources\ParcelShop 资源集合。

查找特定的包裹店

$parcelShop = $client->find(12345); // returns Signifly\ParcelShop\Resources\ParcelShop

// The following getters are available for ParcelShop:
$parcelShop->number();
$parcelShop->company();
$parcelShop->streetName();
$parcelShop->streetName2();
$parcelShop->zipCode();
$parcelShop->city();
$parcelShop->countryCode();
$parcelShop->latitude();
$parcelShop->longitude(); 

$parcelShop->openingHours(); // returns a collection of OpeningHour resources

// Only available if you find parcel shops near an address
$parcelShop->distance(); // 875
$parcelShop->distanceInKm(); // 0.875

// Available getters for the OpeningHour resource
$openingHour->day(); // Monday
$openingHour->from(); // 08:00
$openingHour->to(); // 20:00

查找地址附近的包裹店

// Params: Street, Zip Code, Country Code, Amount (optional, default to 5)

$client->nearest('Vesterbrogade 44', '1620', 'DK', 10); // returns Illuminate\Support\Collection

在邮编内查找包裹店

$client->within('1620', 'DK'); // returns Illuminate\Support\Collection

测试

composer test

安全

如果您发现任何安全问题,请通过电子邮件 dev@signifly.com 联系我们,而不是使用问题跟踪器。

致谢

许可

MIT 许可证(MIT)。请参阅 许可文件 获取更多信息。