myparcelbe / sdk
此包设计用于通过API发送和接收来自MyParcel的数据。
Requires
- php: >=5.6.5
Requires (Dev)
- phpunit/phpunit: ^5.5
- dev-master
- v1.3.11
- v1.3.10
- v1.3.9
- v1.3.8
- v1.3.7
- v1.3.6
- v1.3.5
- v1.3.4
- v1.3.3
- v1.3.2
- v1.3.1
- v1.3.0
- v1.2.4
- v1.2.3
- v1.2.2
- v1.2.1
- v1.2.0
- v1.2.0-beta.2
- v1.2.0-beta.1
- v1.1.10
- v1.1.9
- v1.1.8
- v1.1.7
- v1.1.6
- v1.1.5
- v1.1.4
- v1.1.3
- v1.1.2
- v1.1.1
- v1.1.0
- v1.0.1
- v1.0.0
- v0.2.12
- v0.2.11
- v0.2.10
- v0.2.7
- v0.2.6
- v0.2.4
- v0.2.3
- 0.2.2
- 0.1.0
- dev-develop
- dev-multi-carrier
This package is not auto-updated.
Last update: 2020-01-15 17:54:51 UTC
README
请,如果您使用此仓库,请给此仓库加星标。⭐️
使用composer安装
此SDK使用composer。
Composer是PHP中的依赖管理工具。它允许您声明项目所依赖的库,并为您安装(更新)它们。
有关如何使用/安装composer的更多信息,请访问:https://github.com/composer/composer
要将MyParcel SDK安装到您的项目中,请执行以下操作
$ composer require myparcelbe/sdk
不使用composer的安装
如果您没有使用composer的经验,也可以在不使用composer的情况下使用SDK。
您可以在项目的发行页面下载zip文件。
- 下载包zip文件(SDKvx.x.x.zip)。
- 解压zip文件内容,并将vendor目录上传到您的服务器。
- 在您的项目中,请要求src/AutoLoader.php文件。
- 现在您可以在项目中使用SDK
需求
MyParcel SDK适用于php版本5.6、7.x。还需要安装php curl扩展。
快速开始和示例
$myParcelCollection = new \MyParcelBE\Sdk\src\Helper\MyParcelCollection(); $consignment = (new \MyParcelBE\Sdk\src\Model\Repository\MyParcelConsignmentRepository()) ->setApiKey('api_key_from_MyParcel_backoffice') ->setReferenceId('Order 1203') ->setCountry('BE') ->setPerson('Piet Hier') ->setCompany('Piet BV') ->setFullStreet('Plein 1945 55b') ->setPostalCode('2231JE') ->setCity('Amsterdam') ->setEmail('test@test.nl'); $myParcelCollection ->addConsignment($consignment) ->setPdfOfLabels() ->downloadPdfOfLabels() ->setUserAgent('name_of_cms', '1.0');
可用方法
$myParcelCollection = new \MyParcelBE\Sdk\src\Helper\MyParcelCollection(); $consignment = (new \MyParcelBE\Sdk\src\Model\Repository\MyParcelConsignmentRepository()) ->setApiKey('api_key_from_MyParcel_backoffice') ->setReferenceId('Order 1203') ->setCountry('BE') ->setPerson('Piet Hier') ->setCompany('Piet BV') ->setFullStreet('Plein 1945 55b') ->setPostalCode('2231JE') ->setPackageType(1) ->setCity('Amsterdam') ->setEmail('test@test.nl') ->setPhone('+31 (0)634213465') ->setLargeFormat(true) ->setOnlyRecipient(true) ->setSignature(true) ->setReturn(true) ->setInsurance(250) ->setLabelDescription('Order 10034'); $myParcelCollection ->addConsignment($consignment)
用户代理
为了让我们了解您从哪个CMS系统连接,您应该发送User-Agent。如果您使用的是已知的CMS系统,则这是必需的。您必须发送CMS系统的名称以及版本号。版本号不是必需的。
->setUserAgent('name_of_cms', '1.0')
提交完整地址
->setFullStreet('Plein 1945 55b')
分批提交地址
->setStreet('Plein 1945') ->setNumber((string)55) ->setBoxNumber('b')
创建概念
$myParcelCollection->createConcepts();
下载标签
$myParcelCollection->setPdfOfLabels(); $myParcelCollection->downloadPdfOfLabels();
获取标签链接
$myParcelCollection ->setLinkOfLabels() ->getLinkOfLabels()
MyParcel托运单ID
如果您不使用setReferenceId()
,您也可以在创建概念时使用MyParcelConsignmentId:在setPdfOfLabels()
、setLinkOfLabels()
和createConcepts()
之后,您可以将api id保存到您的数据库中。使用此id,您可以轻松检索最新的状态。
$consignment->getMyParcelConsignmentId();
获取状态
在调用 setPdfOfLabels()
、setLinkOfLabels()
和 createConcepts()
后,您可以获取状态。
$status = $consignment->getStatus();
获取条码
在调用 setPdfOfLabels()
和 setLinkOfLabels()
后,条码可用。
$barcode = $consignment->getBarcode();
多次装运
要创建多个托运单或获取包含多个托运单的PDF,设置多个托运单。这样更快更干净。
$myParcelCollection = new \MyParcelBE\Sdk\src\Helper\MyParcelCollection(); foreach ($yourShipments as $yourShipment) { $consignment = (new \MyParcelBE\Sdk\src\Model\Repository\MyParcelConsignmentRepository()) ->setApiKey('api_key_from_MyParcel_backoffice') ->setReferenceId($yourShipment->getOrderId() ->setName('Piet Hier'); /** @todo; set all info */ $myParcelCollection ->setUserAgent('name_of_cms', '1.0') ->addConsignment($consignment) }
之后
在新请求中,您可以再次获取所有数据。
$consignment = (new \MyParcelBE\Sdk\src\Model\Repository\MyParcelConsignmentRepository()) ->setApiKey('api_key_from_MyParcel_backoffice') ->setReferenceId('Order 1203'); // or setMyParcelConsignmentId(123456) $myParcelCollection ->addConsignment($consignment) ->setLatestData(); $consignments = $myParcelCollection ->getConsignments(); $firstConsignment = $consignments[0]; $status = $firstConsignment->getStatus(); $barcode = $firstConsignment->getBarcode();
贡献
- 检查开放问题或创建新的问题以开始关于错误或功能的讨论。
- 在GitHub上分叉仓库以开始进行更改。
- 为新功能编写一个或多个测试,或揭示错误。
- 进行代码更改以实现功能或修复错误。
- 发送拉取请求以合并和发布您的更改。