用于与Brown Paper Tickets API交互的库

dev-master 2015-07-31 20:12 UTC

This package is not auto-updated.

Last update: 2024-09-14 17:06:03 UTC


README

Build Status Packagist License MIT

BptAPI库包含一组类,使您能够轻松地与Brown Paper Tickets API交互。

由于此库仍在早期开发阶段,方法名称可能会更改。有关任何重大更改的更多信息,请参阅CHANGELOG

安装

通过Composer:$ composer require brown-paper-tickets/bpt-api

(这将还会安装Monolog\Monolog作为开发依赖项,如果您不需要Monolog,请在composer中添加--no-dev标志。)

用法

请参阅Usage.md以获取简介。您还可以查看api-example应用程序以获取更完整的示例。

选项

目前有三种选项可以设置:debuglogErrorslogger

您可以在实例化类时通过传递一个包含$options的数组作为第二个参数来设置它们,或者使用setOption()方法。

例如

$logger = new \Monolog\Logger('logger');

$logger->pushHandler(new \Monolog\Handler\StreamHandler(__DIR__ . '/app.log', $logger::DEBUG));

$options = array(
    'logger' => $logger,
    'debug' => true,
    'logErrors' => true,
);
$info = new EventInfo(DEV_ID, $options);

$info->setOption('logger', $logger);

类和方法

库包含以下类

AccountInfo

AccountInfo类有一个方法,可以返回指定用户的信息。

getAccount($username)

授权要求:

返回 这将返回一个包含以下字段的数组

CartInfo

文档即将推出(查看源代码!)

EventInfo

授权要求: EventInfo类提供允许您获取活动数据的方法。

#####getEvents

返回

此方法返回一个包含以下字段的数组的事件数组

ManageCart

某些方法将返回一个包含两个字段的数组。第一个是success,它是一个布尔值,指示是否失败,以及一个message字段解释原因。

initCart($cartID = null, $createdAt = null)

使用Brown Paper Tickets启动一个新的购物车会话。您还可以传入现有的cartID和创建时间。如果购物车已过期,它将返回一个包含success设置为false的结果数组。

如果成功,它将返回一个包含success设置为true以及cartIDcartCreatedAt字段的结果数组。

返回 新创建的cartID。此购物车将在15分钟后过期。

isExpired()

确定cartID是否已过期。

getCartId()

返回 cartID

setAffiliateID($affiliateID)

如果您想从销售中赚取佣金,请传入您的联盟ID。

setPrices($prices)

设置要发送到购物车的价格。将返回设置的价格。这不会更新实际的购物车(使用sendPrices()进行更新)。

这将丢弃任何具有无效运输方法的报价,并确定在添加运输信息时是否需要调用名称。

传入一个价格ID数组。每个价格ID的值应设置为以下字段的数组

  • 运输方式:1为实物,2为取货,3为在家打印。
$prices = array(
    '12345' => array(
        'shippingMethod' => 1,
        'quantity' => 2,
    ),
    '12346' => array(
        'shippingMethod' => 3,
        'quantity' => 3
    )
);

返回设置的价格数组。

removePrices($prices)

传入一个价格ID数组,它将删除传递给设置价格中的价格ID。这不会更新实际的购物车(使用sendPrices()进行更新)。

返回设置的价格数组。

sendPrices()

通过API将价格发送到购物车。

返回结果数组。

getPrices()

返回设置的价格。

getValue()

返回购物车当前值,该值是在添加价格时设置的。注意:当类设置值时,它将确定是否某些字段对于账单信息是必需的。有关更多信息,请参阅setShipping()

setShipping($shipping)

传入一个运输信息数组。

如果您选择了需要取货姓名的门票,您可以使用willCallFirstNamewillCallLastName字段传入不同的姓名。否则,它将默认使用姓名字段用于取货姓名。

setBilling($billing)

传入一个账单信息数组。

始终传入以下字段

当购物车的价值大于0时,您还必须包括以下字段。如果不包括,则购物车将返回包含消息""的结果数组。

返回结果数组。

sendBilling(Array $ccInfo)

将账单信息发送到购物车。

当购物车的价值大于0时,您必须包括cc信息数组

一旦调用成功,您将无法再调用sendPrices()sendShipping()sendBilling()

返回包含以下字段的结果数组

getReceipt()

返回由sendBilling()方法接收到的结果。

SalesInfo

文档即将推出(查看源代码!)

最新更改

(有关完整更改集,请参阅变更日志)

v0.15.2

  • 添加.gitattributes以防止测试和其他垃圾下载与packagist。

  • 重大变更

    • ManageCart类不再将信用卡信息保存到对象中。您现在必须将信用卡信息数组传递给MangeCart::sendBilling方法,而不是像以前那样使用ManageCart::setBilling

v0.15.1

  • 修复了__construct日志选项。

v0.15.0

  • 添加了捕获发送到API的所有请求和原始响应的能力。在实例化时向options数组添加'debug' => true或使用setOption('debug', true)
  • 添加了接受PSR-3兼容日志记录器的setLogger()方法(即Monolog)。您也可以在实例化时将其传递到options数组中。

v0.14.2

  • 修复了getPrices中的订单字段问题。

许可证

MIT许可证(MIT)

版权所有(c)2015 Brown Paper Tickets

特此授予任何获得此软件及其相关文档文件(“软件”)副本的任何人,免费使用该软件的权利,不受限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,并允许向软件提供的人这样做,但受以下条件约束

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

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