nikolag / square
基于nikolag/core构建的Square API与Laravel集成
Requires
- php: >=8.2
- doctrine/dbal: ^3.5
- illuminate/config: 10.x
- illuminate/console: 10.x
- illuminate/container: 10.x
- illuminate/contracts: 10.x
- illuminate/database: 10.x
- illuminate/filesystem: 10.x
- illuminate/support: 10.x
- nikolag/core: 2.8.x
- square/square: 29.0.0.20230720
Requires (Dev)
- fakerphp/faker: ^1.13
- laravel/legacy-factories: ^1.3
- orchestra/testbench: 8.x
- phpunit/phpunit: 10.x
This package is auto-updated.
Last update: 2024-09-21 14:43:37 UTC
README
Square集成Laravel/Lumen >=5.5,基于nikolag/core
版本兼容性
旧square connect api
新square sdk
如果您是从低于3.0的版本更新,则需要执行: php artisan migrate
。这将向由库创建的表中添加一些库所需的列,您的表将不受影响。
安装指南
composer require nikolag/laravel-square
注意:由于Laravel Package Discovery,从Laravel 5.5开始手动注册服务提供者和外观已被弃用,并且不再需要,因为包已适配自动为您注册这些内容。但仍有几个步骤需要执行才能使用此包。
首先,您必须发布配置文件
php artisan vendor:publish --tag=nikolag_config
在继续之前,检查config/nikolag.php
中的配置文件。
重要:如果由于某种原因您在connections
数组中看不到square
驱动程序,您必须手动添加它。您可以在此找到配置文件here,并从connections
数组中复制所有内容,并将它们附加到已发布的配置文件中的connections
数组中(config/nikolag.php
)
完成配置文件后,您应使用以下命令运行迁移
php artisan migrate
然后,在.env
中添加Square API的凭证,并添加您类的完全限定名(命名空间)。
SQUARE_APPLICATION_ID=<YOUR_APPLICATION_ID> SQUARE_TOKEN=<YOUR_ACCESS_TOKEN>
客户系统
要能够利用客户系统为用户,您的用户类必须使用HasCustomers
特质。
... use Nikolag\Square\Traits\HasCustomers; class User extends Model { use HasCustomers; ... }
您还需要定义用户命名空间
// .env file SQUARE_USER_NAMESPACE=<USER_NAMESPACE>
订单系统
要能够利用订单系统为用户,您的订单类必须使用HasProducts
特质并定义$table
属性。
... use Nikolag\Square\Traits\HasProducts; class Order extends Model { use HasProducts; ... /** * The table associated with the model. * * @var string */ protected $table = '<TABLE_NAME>'; ... }
您还需要定义一些环境变量
// .env file SQUARE_ORDER_NAMESPACE=<ORDER_NAMESPACE> SQUARE_ORDER_IDENTIFIER=<ORDER_IDENTIFIER> SQUARE_PAYMENT_IDENTIFIER=<ORDER_SQUARE_ID_COLUMN>
重要: SQUARE_PAYMENT_IDENTIFIER
代表我们将保留Square生成的一次性唯一ID的列名。这意味着您需要将新列添加到订单表中以保存该值。
示例
简单示例
简单示例已移动到wiki页面,以避免不必要的README.md
滚动。
客户示例
客户示例已移动到wiki页面,以避免不必要的README.md
滚动。
订单示例
订单示例已移动到wiki页面,以避免不必要的README.md
滚动。
所有特性和其方法
HasProducts
此特质的全部方法已移动到wiki页面,以避免不必要的README.md
滚动。
HasCustomers
将此特质的全部方法移至wiki页面,以避免在README.md
中不必要的滚动。
所有门面及其方法
Square
将此门面的全部方法移至wiki页面,以避免在README.md
中不必要的滚动。
贡献
欢迎所有人为此仓库做出贡献,只需提出一个issue并标记请求,无论是问题、bug还是功能。对于其他任何查询,请发送邮件至nikola.gavric94@gmail.com
贡献者
特别感谢所有贡献者!
许可证
MIT许可证
版权所有(c)Nikola Gavrić nikola.gavric94@gmail.com
特此授予任何人免费获得此软件及其相关文档文件(“软件”)副本的许可,以便在不作限制的情况下处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向获得软件副本的个人提供软件,前提是遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或实质性部分中。
软件按“原样”提供,不提供任何形式的保证,明示或暗示,包括但不限于适销性、特定目的适用性和非侵权性保证。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任承担责任,无论是在合同行为、侵权行为或其他行为中,由此软件或其使用或其他方式产生、产生于或与此软件或其使用或其他方式相关。