zfr/zfr-tradegecko

用于与 TradeGecko REST API 交互的 PHP 库

1.3.0 2020-04-07 01:26 UTC

This package is auto-updated.

Last update: 2024-09-07 10:51:18 UTC


README

Latest Stable Version Build Status

ZfrTradeGecko 是一个基于 Guzzle 的现代 PHP 库,用于与 TradeGecko 进行交互。

依赖项

安装

仅支持使用 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 = [])