spinen/laravel-quickbooks-client
Composer 安装命令:
composer require spinen/laravel-quickbooks-client
包简介
SPINEN's Laravel Client for QuickBooks.
README 文档
README
PHP client wrapping the QuickBooks PHP SDK.
We solely use Laravel for our applications, so this package is written with Laravel in mind. If there is a request from the community to split this package into 2 parts to allow it to be used outside of Laravel, then we will consider doing that work.
Build Status
| Branch | Status | Coverage | Code Quality |
|---|---|---|---|
| Develop | |||
| Master |
Installation
- Install QuickBooks PHP Client:
$ composer require spinen/laravel-quickbooks-client
- Run our migration to install the
quickbooks_tokenstable:
$ php artisan migrate --package=spinen/laravel-quickbooks-client
The package uses the auto registration feature of Laravel.
Configuration
- You will need a
quickBooksTokenrelationship on yourUsermodel. There is a trait namedSpinen\QuickBooks\HasQuickBooksToken, which you can include on yourUsermodel, which will setup the relationship. To do this implement the following:
Add use Spinen\QuickBooks\HasQuickBooksToken; to your service container at the top of User.php
and also add the trait within the class. For example:
class User extends Authenticatable { use Notifiable, HasQuickBooksToken;
NOTE: If your User model is not App\Models\User, then you will need to configure the path in the configs/quickbooks.php.
-
Add the appropriate values to your
.envMinimal Keys
QUICKBOOKS_CLIENT_ID=<client id given by QuickBooks> QUICKBOOKS_CLIENT_SECRET=<client secret>
Optional Keys
QUICKBOOKS_API_URL=<Development|Production> # Defaults to App's env value QUICKBOOKS_DEBUG=<true|false> # Defaults to App's debug value
-
[Optional] Publish configs & views
Config
A configuration file named
quickbooks.phpcan be published toconfig/by running...php artisan vendor:publish --tag=quickbooks-config
Views
View files can be published by running...
php artisan vendor:publish --tag=quickbooks-views
Usage
Here is an example of getting the company information from QuickBooks:
NOTE: Before doing these commands, go to your connect route (default: /quickbooks/connect) to get a QuickBooks token for your user
php artisan tinker Psy Shell v0.8.17 (PHP 7.1.14 — cli) by Justin Hileman >>> Auth::logInUsingId(1) => App\Models\User {#1668 id: 1, // Other keys removed for example } >>> $quickbooks = app('Spinen\QuickBooks\Client') // or app('QuickBooks') => Spinen\QuickBooks\Client {#1613} >>> $quickbooks->getDataService()->getCompanyInfo(); => QuickBooksOnline\API\Data\IPPCompanyInfo {#1673 +CompanyName: "Sandbox Company_US_1", +LegalName: "Sandbox Company_US_1", // Other properties removed for example } >>>
You can call any of the resources as documented in the SDK.
Middleware
If you have routes that will be dependent on the user's account having a usable QuickBooks OAuth token, there is an included middleware Spinen\QuickBooks\Laravel\Filter that gets registered as quickbooks that will ensure the account is linked and redirect them to the connect route if needed.
Here is an example route definition:
Route::view('some/route/needing/quickbooks/token/before/using', 'some.view') ->middleware('quickbooks');
spinen/laravel-quickbooks-client 适用场景与选型建议
spinen/laravel-quickbooks-client 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 46.74k 次下载、GitHub Stars 达 47, 最近一次更新时间为 2018 年 03 月 21 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「client」 「laravel」 「quickbooks」 「spinen」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 spinen/laravel-quickbooks-client 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 spinen/laravel-quickbooks-client 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 spinen/laravel-quickbooks-client 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
FORK OF SPINEN's Laravel Client for QuickBooks.
Mock PSR-18 HTTP client
Asynchronous MQTT client built on React
Laravel Client for QuickBooks.
A Custom PHP SDK for QuickBooks Online Accounting API - Adds 'id_token' to AccessTokenObj for use in OpenID Connect protocol.
Client for Google Directions API to add interpolated points to a route consisting of given coordinates.
统计信息
- 总下载量: 46.74k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 49
- 点击次数: 29
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2018-03-21