discussio/raas

使用这个RESTful API,您可以将其集成到您的应用程序或平台中的全球奖励或激励计划。如果您有任何问题或希望接收自己的凭据,请联系devsupport@tangocard.com。

此软件包的规范仓库似乎已消失,因此该软件包已被冻结。

dev-master 2019-07-09 15:59 UTC

This package is not auto-updated.

Last update: 2023-03-16 07:33:22 UTC


README

使用这个RESTful API,您可以将其集成到您的应用程序或平台中的全球奖励或激励计划。如果您有任何问题或希望接收自己的凭据,请联系devsupport@tangocard.com

如何构建

生成的代码依赖于外部库,如UniRest。这些依赖关系定义在SDK附带的composer.json文件中。为了解决这些依赖关系,我们使用Composer包管理器,它需要在您的系统上安装PHP大于5.3.2。访问https://getcomposer.org.cn/download/下载Composer安装文件并在您的系统上运行它。打开命令提示符并输入composer --version。如果安装成功,它应显示已安装的Composer当前版本。

  • 使用命令行,导航到包含生成的文件(包括composer.json)的SDK目录。
  • 运行命令composer install。这将安装所有必需的依赖关系,并在您的项目目录中创建vendor目录。

Building SDK - Step 1

[仅限Windows用户] 在php.ini中配置CURL证书路径

CURL过去包含一组受信任的CA列表,但现在不再捆绑任何CA证书。因此,默认情况下,它将拒绝所有SSL证书,因为它们无法验证。您必须获取您CA的证书并将curl指向它。步骤如下

  1. https://curl.haxx.se/docs/caextract.html下载证书包(.pem文件)到您的系统。
  2. 将curl.cainfo = "PATH_TO/cacert.pem"添加到您的php.ini文件中,该文件位于您的PHP安装中。"PATH_TO"必须是一个包含.pem文件的绝对路径。
[curl]
; A default value for the CURLOPT_CAINFO option. This is required to be an
; absolute path.
;curl.cainfo =

如何使用

以下部分解释了如何在新的项目中使用Raas库。

1. 在IDE中打开项目

打开PHP的IDE,如PhpStorm。这里介绍的基本工作流程也适用于您更喜欢使用不同的编辑器或IDE的情况。

Open project in PHPStorm - Step 1

在PhpStorm中单击打开,浏览到生成的SDK目录,然后单击确定

Open project in PHPStorm - Step 2

2. 添加一个新的测试项目

如以下所示,在解决方案名称上右键单击以创建新目录

Add a new project in PHPStorm - Step 1

将目录命名为"test"

Add a new project in PHPStorm - Step 2

向此项目添加PHP文件

Add a new project in PHPStorm - Step 3

将其命名为"testSDK"

Add a new project in PHPStorm - Step 4

根据您的项目设置,您可能需要在PHP代码中包含Composer的自动加载器以启用类的自动加载。

require_once "../vendor/autoload.php";

确保 require_once 中的路径正确指向依赖安装过程中创建在 vendor 目录下的 autoload.php 文件,这是很重要的。

Add a new project in PHPStorm - Step 4

在此之后,您可以添加代码来初始化客户端库并获取 Controller 类的实例。后续章节将给出初始化客户端库和使用控制器方法的示例代码。

3. 运行测试项目

要运行您的项目,您必须设置项目的解释器。解释器是安装在您计算机上的 PHP 引擎。

从“文件”菜单中打开 设置

Run Test Project - Step 1

语言和框架 中选择 PHP

Run Test Project - Step 2

解释器 选项附近浏览解释器并选择您的解释器。

Run Test Project - Step 3

选择解释器后,点击 确定

Run Test Project - Step 4

要运行您的项目,右键单击测试项目中的 PHP 文件,然后单击 运行

Run Test Project - Step 5

如何测试

可以使用 PHPUnit 运行此 SDK 中的单元测试。

  1. 首先使用 composer 安装依赖项,包括 require-dev 依赖项。
  2. 从命令行运行 vendor\bin\phpunit --verbose 来执行测试。如果您已全局安装 PHPUnit,则使用 phpunit --verbose 运行测试。

您可以在 phpunit.xml 文件中更改 PHPUnit 测试配置。

初始化

认证

为了设置 API 客户端的认证和初始化,您需要以下信息。

参数 描述
platformName RaaS v2 API 平台名称
platformKey RaaS v2 API 平台密钥

API 客户端可以按以下方式初始化。

$platformName = 'QAPlatform2'; // RaaS v2 API Platform Name
$platformKey = 'apYPfT6HNONpDRUj3CLGWYt7gvIHONpDRUYPfT6Hj'; // RaaS v2 API Platform Key

$client = new RaasLib\RaasClient($platformName, $platformKey);

类参考

控制器列表

Class: OrdersController

获取单例实例

可以从 API 客户端访问 OrdersController 类的单例实例。

$orders = $client->getOrders();

Method: createOrder

TODO: 添加方法描述

function createOrder($body)

参数

参数 标签 描述
body 必需 TODO: 添加参数描述

示例用法

$body = new CreateOrderRequestModel();

$result = $orders->createOrder($body);

方法: getOrder

TODO: 添加方法描述

function getOrder($referenceOrderID)

参数

参数 标签 描述
referenceOrderID 必需 参考订单 ID

示例用法

$referenceOrderID = 'referenceOrderID';

$result = $orders->getOrder($referenceOrderID);

方法: getOrders

TODO: 添加方法描述

function getOrders($options)

参数

参数 标签 描述
accountIdentifier 可选 TODO: 添加参数描述
customerIdentifier 可选 TODO: 添加参数描述
externalRefID 可选 TODO: 添加参数描述
startDate 可选 TODO: 添加参数描述
endDate 可选 TODO: 添加参数描述
elementsPerBlock 可选 TODO: 添加参数描述
page 可选 TODO: 添加参数描述

示例用法

$accountIdentifier = 'accountIdentifier';
$collect['accountIdentifier'] = $accountIdentifier;

$customerIdentifier = 'customerIdentifier';
$collect['customerIdentifier'] = $customerIdentifier;

$externalRefID = 'externalRefID';
$collect['externalRefID'] = $externalRefID;

$startDate = date("D M d, Y G:i");
$collect['startDate'] = $startDate;

$endDate = date("D M d, Y G:i");
$collect['endDate'] = $endDate;

$elementsPerBlock = 114;
$collect['elementsPerBlock'] = $elementsPerBlock;

$page = 114;
$collect['page'] = $page;


$result = $orders->getOrders($collect);

方法: createResendOrder

TODO: 添加方法描述

function createResendOrder($referenceOrderID)

参数

参数 标签 描述
referenceOrderID 必需 TODO: 添加参数描述

示例用法

$referenceOrderID = 'referenceOrderID';

$result = $orders->createResendOrder($referenceOrderID);

返回控制器列表

类: AccountsController

获取单例实例

可以从 API 客户端访问 AccountsController 类的单例实例。

$accounts = $client->getAccounts();

方法: getAccount

获取账户

function getAccount($accountIdentifier)

参数

参数 标签 描述
accountIdentifier 必需 账户标识符

示例用法

$accountIdentifier = 'accountIdentifier';

$result = $accounts->getAccount($accountIdentifier);

方法: getAccountsByCustomer

获取指定客户的账户列表

function getAccountsByCustomer($customerIdentifier)

参数

参数 标签 描述
customerIdentifier 必需 客户标识符

示例用法

$customerIdentifier = 'customerIdentifier';

$result = $accounts->getAccountsByCustomer($customerIdentifier);

方法: createAccount

在指定客户下创建账户

function createAccount(
        $customerIdentifier,
        $body)

参数

参数 标签 描述
customerIdentifier 必需 客户标识符
body 必需 请求体

示例用法

$customerIdentifier = 'customerIdentifier';
$body = new CreateAccountRequestModel();

$result = $accounts->createAccount($customerIdentifier, $body);

方法: getAllAccounts

获取平台下的所有账户

function getAllAccounts()

示例用法

$result = $accounts->getAllAccounts();

返回控制器列表

类: CatalogController

获取单例实例

可以通过API客户端访问CatalogController类的单例实例。

$catalog = $client->getCatalog();

方法: getCatalog

获取目录

function getCatalog()

示例用法

$result = $catalog->getCatalog();

返回控制器列表

类: ExchangeRatesController

获取单例实例

可以通过API客户端访问ExchangeRatesController类的单例实例。

$exchangeRates = $client->getExchangeRates();

方法: getExchangeRates

获取当前汇率

function getExchangeRates()

示例用法

$result = $exchangeRates->getExchangeRates();

返回控制器列表

类: StatusController

获取单例实例

可以从API客户端访问StatusController类的单例实例。

$status = $client->getStatus();

方法: getSystemStatus

标签: 跳过认证

获取系统状态

function getSystemStatus()

示例用法

$result = $status->getSystemStatus();

返回控制器列表

类: CustomersController

获取单例实例

可以从API客户端访问CustomersController类的单例实例。

$customers = $client->getCustomers();

方法: getCustomer

获取客户

function getCustomer($customerIdentifier)

参数

参数 标签 描述
customerIdentifier 必需 客户标识符

示例用法

$customerIdentifier = 'customerIdentifier';

$result = $customers->getCustomer($customerIdentifier);

方法: createCustomer

创建新客户

function createCustomer($body)

参数

参数 标签 描述
body 必需 请求体

示例用法

$body = new CreateCustomerRequestModel();

$result = $customers->createCustomer($body);

方法: getAllCustomers

获取平台下所有客户

function getAllCustomers()

示例用法

$result = $customers->getAllCustomers();

返回控制器列表

类: FundController

获取单例实例

可以从API客户端访问FundController类的单例实例。

$fund = $client->getFund();

方法: getCreditCards

列出在此平台上注册的所有信用卡

function getCreditCards()

示例用法

$result = $fund->getCreditCards();

方法: createCreditCard

注册新信用卡

function createCreditCard($body)

参数

参数 标签 描述
body 必需 TODO: 添加参数描述

示例用法

$body = new CreateCreditCardRequestModel();

$result = $fund->createCreditCard($body);

方法: createUnregisterCreditCard

注销信用卡

function createUnregisterCreditCard($body)

参数

参数 标签 描述
body 必需 TODO: 添加参数描述

示例用法

$body = new UnregisterCreditCardRequestModel();

$result = $fund->createUnregisterCreditCard($body);

方法: createDeposit

为账户充值

function createDeposit($body)

参数

参数 标签 描述
body 必需 TODO: 添加参数描述

示例用法

$body = new DepositRequestModel();

$result = $fund->createDeposit($body);

方法: getDeposit

获取特定信用卡充值的详细信息

function getDeposit($depositId)

参数

参数 标签 描述
depositId 必需 充值ID

示例用法

$depositId = 'depositId';

$result = $fund->getDeposit($depositId);

方法: getCreditCard

获取特定信用卡的详细信息

function getCreditCard($token)

参数

参数 标签 描述
token 必需 卡令牌

示例用法

$token = 'token';

$result = $fund->getCreditCard($token);

返回控制器列表