nikolag/square

此包已弃用且不再维护。作者建议使用https://github.com/NikolaGavric94/laravel-square/包。

基于nikolag/core构建的Square API与Laravel集成

安装: 765

依赖: 0

建议者: 0

安全: 0

星标: 32

关注者: 5

分支: 23

开放问题: 2

类型:laravel-package

v3.3.0 2023-12-30 18:10 UTC

README

Test Coverage Build and test PHP 8.x Latest Stable Version License

Square集成Laravel/Lumen >=5.5,基于nikolag/core

  1. 版本兼容性
  2. 安装指南
  3. 客户系统
  4. 订单系统
  5. 示例
  6. 可用方法
  7. 贡献
  8. 许可证

版本兼容性

旧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

nikolag configuration
图1. 配置文件

完成配置文件后,您应使用以下命令运行迁移

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

特此授予任何人免费获得此软件及其相关文档文件(“软件”)副本的许可,以便在不作限制的情况下处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向获得软件副本的个人提供软件,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或实质性部分中。

软件按“原样”提供,不提供任何形式的保证,明示或暗示,包括但不限于适销性、特定目的适用性和非侵权性保证。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任承担责任,无论是在合同行为、侵权行为或其他行为中,由此软件或其使用或其他方式产生、产生于或与此软件或其使用或其他方式相关。