zfr / zfr-tradegecko
用于与 TradeGecko REST API 交互的 PHP 库
Requires
- php: ~7.0
- container-interop/container-interop: ^1.1
- guzzlehttp/guzzle-services: ^1.1
- psr/http-message: ^1.0
Requires (Dev)
Suggests
README
ZfrTradeGecko 是一个基于 Guzzle 的现代 PHP 库,用于与 TradeGecko 进行交互。
依赖项
- PHP 7
- Guzzle: ^6.1
安装
仅支持使用 Composer 安装 ZfrTradeGecko
php composer.phar require 'zfr/zfr-tradegecko:1.0'
用法
ZfrTradeGecko 提供与 TradeGecko 文档中定义的 API 方法的一对一映射。
您可以使用以下代码轻松创建一个客户端:
use ZfrTradeGecko\TradeGeckoClient; $client = new TradeGeckoClient('your-access-token');
然后,您可以对受支持的端点进行请求
$response = $client->getPriceLists(); $response = $client->createProduct([ 'name' => 'My Product' ]);
使用容器
ZfrTradeGecko 还提供内置的 container-interop 工厂,您可以使用。您必须确保您的容器包含一个名为 "config" 的服务,该服务是一个包含键 zfr_tradegecko
的数组,包含所需的配置
// myconfig.php return [ 'zfr_tradegecko' => [ 'access_token' => 'ACCESS_TOKEN' ], ];
如果您正在使用 Zend\ServiceManager 3,您可以使用 Zend\ComponentInstaller 将我们的工厂自动注册到 Zend\ServiceManager 中。
但是,如果您使用的是其他框架或其他容器,您仍然可以手动注册我们的工厂,它们位于 src/Container 文件夹中。
利用响应
ZfrTradeGecko 直接返回 TradeGecko 响应。然而,默认情况下,TradeGecko 会通过顶级键包装响应。例如,如果您想检索账户信息,TradeGecko 将返回以下有效负载
{ "account": { "id": 123 } }
这使用起来不太方便,因为我们需要这样做
$id = $tradeGeckoClient->getCurrentAccount()['account']['id'];
相反,ZfrTradeGecko 自动“取消包装”响应,因此您可以使用更简洁的代码
$id = $tradeGeckoClient->getCurrentAccount()['id'];
在阅读 TradeGecko API 文档时,请确保在利用响应时删除顶级键。
实现端点
以下是一个受支持的端点列表(未来还将有更多)。请注意,某些资源尚未得到官方支持。截至 2017 年 1 月 17 日,它们已经过测试并且可以正常工作,但基本上是“自行承担风险”。
账户相关方法
- getAccounts(array $args = [])
- getAccount(array $args = [])
- getCurrentAccount(array $args = [])
- createAccount(array $args = [])
- updateAccount(array $args = [])
地址相关方法
- getAddresses(array $args = [])
- getAddress(array $args = [])
- createAddress(array $args = [])
- updateAddress(array $args = [])
- deleteAddress(array $args = [])
公司相关方法
- getCompanies(array $args = [])
- getCompany(array $args = [])
- createCompany(array $args = [])
- updateCompany(array $args = [])
- deleteCompany(array $args = [])
联系人相关方法
- getContacts(array $args = [])
- getContact(array $args = [])
- createContact(array $args = [])
- updateContact(array $args = [])
- deleteContact(array $args = [])
货币相关方法
- getCurrencies(array $args = [])
- getCurrency(array $args = [])
- createCurrency(array $args = [])
- updateCurrency(array $args = [])
- deleteCurrency(array $args = [])
履行相关方法
- getFulfillments(array $args = [])
- getFulfillment(array $args = [])
- createFulfillment(array $args = [])
- updateFulfillment(array $args = [])
- deleteFulfillment(array $args = [])
履约行项目相关方法
- getFulfillmentLineItems(array $args = [])
- getFulfillmentLineItem(array $args = [])
- createFulfillmentLineItem(array $args = [])
- updateFulfillmentLineItem(array $args = [])
- deleteFulfillmentLineItem(array $args = [])
图像相关方法
- getImages(array $args = [])
- getImage(array $args = [])
- createImage(array $args = [])
- updateImage(array $args = [])
- deleteImage(array $args = [])
发票相关方法
- getInvoices(array $args = [])
- getInvoice(array $args = [])
- createInvoice(array $args = [])
- updateInvoice(array $args = [])
- deleteInvoice(array $args = [])
发票行项目相关方法
- getInvoiceLineItems(array $args = [])
- getInvoiceLineItem(array $args = [])
- createInvoiceLineItem(array $args = [])
- updateInvoiceLineItem(array $args = [])
- deleteInvoiceLineItem(array $args = [])
位置相关方法
- getLocations(array $args = [])
- getLocation(array $args = [])
- createLocation(array $args = [])
- updateLocation(array $args = [])
- deleteLocation(array $args = [])
备注相关方法
- getNotes(array $args = [])
- getNote(array $args = [])
- createNote(array $args = [])
- updateNote(array $args = [])
- deleteNote(array $args = [])
订单相关方法
- getOrders(array $args = [])
- getOrder(array $args = [])
- createOrder(array $args = [])
- updateOrder(array $args = [])
- deleteOrder(array $args = [])
订单行项目相关方法
- getOrderLineItems(array $args = [])
- getOrderLineItem(array $args = [])
- createOrderLineItem(array $args = [])
- updateOrderLineItem(array $args = [])
- deleteOrderLineItem(array $args = [])
付款条款相关方法
- getPaymentTerms(array $args = [])
- getPaymentTerm(array $args = [])
- createPaymentTerm(array $args = [])
- updatePaymentTerm(array $args = [])
- deletePaymentTerm(array $args = [])
价格单相关方法(尚未官方支持)
- getPriceLists(array $args = [])
- getPriceList(array $args = [])
- createPriceList(array $args = [])
- updatePriceList(array $args = [])
- deletePriceList(array $args = [])
产品相关方法
- getProducts(array $args = [])
- getProduct(array $args = [])
- createProduct(array $args = [])
- updateProduct(array $args = [])
- deleteProduct(array $args = [])
采购相关方法(尚未官方支持)
- array getProcurements(array $args = [])
- array getProcurement(array $args = [])
- array createProcurement(array $args = [])
- array deleteProcurement(array $args = [])
采购订单相关方法
- getPurchaseOrders(array $args = [])
- getPurchaseOrder(array $args = [])
- createPurchaseOrder(array $args = [])
- updatePurchaseOrder(array $args = [])
- deletePurchaseOrder(array $args = [])
采购订单行项目相关方法
- getPurchaseOrderLineItems(array $args = [])
- getPurchaseOrderLineItem(array $args = [])
- createPurchaseOrderLineItem(array $args = [])
- updatePurchaseOrderLineItem(array $args = [])
- deletePurchaseOrderLineItem(array $args = [])
库存调整相关方法(尚未官方支持)
- getStockAdjustments(array $args = [])
- getStockAdjustment(array $args = [])
- createStockAdjustment(array $args = [])
- updateStockAdjustment(array $args = [])
- deleteStockAdjustment(array $args = [])
库存调整行项目相关方法(尚未官方支持)
- getStockAdjustmentLineItems(array $args = [])
- getStockAdjustmentLineItem(array $args = [])
- createStockAdjustmentLineItem(array $args = [])
- updateStockAdjustmentLineItem(array $args = [])
- deleteStockAdjustmentLineItem(array $args = [])
库存转移相关方法(尚未官方支持)
- 获取库存调拨(array $args = [])
- 获取库存调拨(array $args = [])
- 创建库存调拨(array $args = [])
- 更新库存调拨(array $args = [])
- 删除库存调拨(array $args = [])
库存调拨行项目相关方法(尚未官方支持)
- 获取库存调拨行项目(array $args = [])
- 获取库存调拨行项目(array $args = [])
- 创建库存调拨行项目(array $args = [])
- 更新库存调拨行项目(array $args = [])
- 删除库存调拨行项目(array $args = [])
税成分相关方法(尚未官方支持)
- 获取税成分(array $args = [])
- 获取税成分(array $args = [])
- 创建税成分(array $args = [])
- 更新税成分(array $args = [])
- 删除税成分(array $args = [])
税种相关方法
- 获取税种(array $args = [])
- 获取税种(array $args = [])
- 创建税种(array $args = [])
- 更新税种(array $args = [])
- 删除税种(array $args = [])
用户相关方法
- 获取用户(array $args = [])
- 获取用户(array $args = [])
- 更新用户(array $args = [])
- 删除用户(array $args = [])
变体相关方法
- 获取变体(array $args = [])
- 获取变体(array $args = [])
- 创建变体(array $args = [])
- 更新变体(array $args = [])
- 删除变体(array $args = [])
Webhook 相关方法(尚未官方支持)
- 获取 Webhooks(array $args = [])
- 获取 Webhook(array $args = [])
- 创建 Webhook(array $args = [])
- 更新 Webhook(array $args = [])
- 删除 Webhook(array $args = [])
支付相关方法(尚未官方支持)
- 获取支付(array $args = [])
- 获取支付(array $args = [])
- 创建支付(array $args = [])
- 更新支付(array $args = [])
- 删除支付(array $args = [])