bsiorg / primetrust-client-laravel
Primetrust API 在 Laravel 中的客户端实现。
dev-main
2022-03-22 14:25 UTC
Requires
- php: ^7.2.5|^8.0
- ext-json: *
- guzzlehttp/guzzle: ^7.4
Requires (Dev)
- orchestra/testbench: 5.0
- phpunit/phpunit: ^8.5.8|^9.3.3
README
Laravel 中对 primetrust API 的客户端实现,具有非常漂亮和表达性的语法。您无需担心底层实现,只需享受与 Primetrust 一起工作的乐趣。
安装
通过 Composer 安装
composer require bsiorg/primetrust-client-laravel
Laravel 5.5+ 中的工具自动加载。对于旧版本,请将以下行添加到您的 config/app.php
'providers' => [ ... \BsiOrg\PrimeTrust\PrimeTrustServiceProvider::class, ... ], 'aliases' => [ ... 'PrimeTrust' => \BsiOrg\PrimeTrust\PrimeTrust::class, ... ]
用法
设置
您需要设置环境变量以运行 Primetrust SDK。
PRIMETRUST_URL= PRIMETRUST_USER= PRIMETRUST_PASS=
您可以使用整个库,如下所示使用外观
use BsiOrg\PrimeTrust\Facades\PrimeTrust; $pt = PrimeTrust::account()->all();
资源
此 SDK 在当时支持 Primetrust 的所有资源,您可以在 PrimeTrust:: 之后使用任何资源。
PrimeTrust::resource('accounts')->all(); PrimeTrust::accounts()->all(); PrimeTrust::contracts()->all(); PrimeTrust::amlChecks()->all(); PrimeTrust::accountCashTotals ()->all();
过滤器
深受 Laravel 影响,因此具有漂亮和表达性语法的所有过滤器都可在 SDK 中使用。
PrimeTrust::accounts() ->with('contacts') ->with('account-cash-totals') ->where('name', 'sw', 'Rizi') ->latest() ->limit(5) ->get();
->with($resource)
它基本上包括主资源中所有允许的资源,以便在单个调用中获取结果。
您可以通过方法链包括多个资源。
->where($key, $operator, $value)
您可以使用所有可用的运算符来过滤结果,例如
eq: 等于(精确匹配)。在未指定运算符时使用。gt: 大于。gte: 大于或等于。in: 任何项都是精确匹配。使用特殊语法,因此如果您想查找状态是几个之一的项目,您将传递 ?filter[status in]=pending,processing。like: 不区分大小写的搜索。目前不支持通配符。lt: 小于。lte: 小于或等于。neq: 不等于。nin: 不在。nlike: 不像。sw: 以...开头。寻找以过滤器值开头的字符串。不区分大小写。
// example to get all the users who are between 18 and 30 PrimeTrust::contacts() ->where('date-of-birth', 'gt', '2002-01-01') ->where('date-of-birth', 'lt', '1990-01-01') ->limit(10) ->orderBy('created-at') // to get younger first ->get();
->orderBy($column, $order = asc|desc)
您可以使用 orderBy、orderByAsc、orderByDesc、latest() 和 oldest() 来按 primetrust API 支持的任何列对 API 请求进行排序。
->limit($pageSize, $pageNumber)
您可以将结果缩小到所需数量,或跳过结果直接转到所需页面。
PrimeTrust::contributions() ->where('account.id', 'eq', 'XXXX') ->limit(5) ->latest() ->get();
作者
Mubashir Rasool Razvi (@rizimore)
rizimore@outlook.com