jonathanpmartins / staysvel
Laravel 包,用于集成 Stays 外部 API。
1.5.1
2024-09-17 04:50 UTC
Requires
- php: ^8.0.0
- ext-curl: *
- ext-json: *
- guzzlehttp/guzzle: ^7.0
- illuminate/http: ^9.0|^10.0|^11
- illuminate/validation: ^9.0|^10.0|^11
Requires (Dev)
- orchestra/testbench: ~9.0
- pestphp/pest: ^2.34
README
Laravel 包,用于集成 Stays 外部 API。文档:https://stays.net/external-api/
如何安装
composer require jonathanpmartins/staysvel;
将以下代码添加到您的 config\services.php
配置文件中
'stays' => [ 'endpoint' => env('STAYS_ENDPOINT'), 'client_id' => env('STAYS_CLIENT_ID'), 'client_secret' => env('STAYS_CLIENT_SECRET'), ],
将以下键添加到您的 .env
文件中,并用您的凭证填充它们。
STAYS_ENDPOINT=
STAYS_CLIENT_ID=
STAYS_CLIENT_SECRET=
用法
导入 Stays
类
use Staysvel\Stays;
请求和响应
- 所有输入参数都是类型
array
或string
。 - 所有标有星号 (*) 的参数都是必需的。
$response
对象是Illuminate\Http\Client\Response
的实例。它基本上返回 Laravel http-client 返回的内容。
如何处理它
从 Laravel 9 文档
$response->body() : string; $response->json($key = null) : array|mixed; $response->object() : object; $response->collect($key = null) : Illuminate\Support\Collection; $response->status() : int; $response->ok() : bool; $response->successful() : bool; $response->redirect(): bool; $response->failed() : bool; $response->serverError() : bool; $response->clientError() : bool; $response->header($header) : string; $response->headers() : array;
示例
$response = Stays::content()->properties()->create(array $parameters); if ($response->successful()) { $data = $response->json(); // return data from stays } if ($response->failed()) { $status = $response->status(); $json = $response->json(); if (isset($json['message'])) { throw new \Exception($json['message'], $status); } else { throw new \Exception($response->body(), $status); } }
超时
默认超时时间为 60
秒。要更改它,在链的最后一个函数之前使用 timeout(int $timeoutInSeconds)
函数。示例
$response = Stays::timeout(30)->content()->properties()->create(array $parameters); $response = Stays::content()->timeout(30)->properties()->create(array $parameters); $response = Stays::content()->properties()->timeout(30)->create(array $parameters);
目录
预订结账 API
价格 API
预订结账 API
启动结账过程
$response = Stays::bookRequest(array $parameters);
参数
促销代码 API
创建促销代码
$response = Stays::booking()->promoCodes()->create(array $parameters);
参数
获取促销代码
$response = Stays::booking()->promoCodes()->get(string $id);
修改促销代码
$response = Stays::booking()->promoCodes()->update(string $id, array $parameters);
参数
删除促销代码
$response = Stays::booking()->promoCodes()->delete(string $id);
搜索促销代码
$response = Stays::booking()->promoCodes()->search(array $parameters);
参数
预订 API
检索搜索过滤器
$response = Stays::booking()->search()->filter();
搜索列表
$response = Stays::booking()->search()->listings(array $parameters);
参数
计算列表价格
$response = Stays::booking()->listingPrice()->calculate(array $parameters);
参数
创建锁定
$response = Stays::booking()->blocking()->create(array $parameters);
参数
修改锁定
$response = Stays::booking()->blocking()->update(string $reservationId, array $parameters);
参数
删除锁定
$response = Stays::booking()->blocking()->delete(string $reservationId);
创建预订
$response = Stays::booking()->reservations()->create(array $parameters);
参数
检索预订
$response = Stays::booking()->reservations()->get(string $reservationId);
修改预订
$response = Stays::booking()->reservations()->update(string $reservationId, array $parameters);
参数
取消预订
$response = Stays::booking()->reservations()->cancel(string $reservationId, array $parameters);
参数
删除预订
$response = Stays::booking()->reservations()->delete(string $reservationId);
搜索活跃预订
$response = Stays::booking()->reservations()->search(array $parameters);
参数
预订报告 XLSX
$response = Stays::booking()->reservations()->export()->xlsx(array $parameters); $raw = $response->body();
参数
预订报告 JSON
$response = Stays::booking()->reservations()->export()->json(array $parameters);
参数
客户
$response = Stays::booking()->clients()->search(array $parameters);
参数
客户
$response = Stays::booking()->clients()->get(string $clientId);
财务 API
创建支付提供者
$response = Stays::finance()->paymentProviders()->create(array $parameters);
参数
检索支付提供者
$response = Stays::finance()->paymentProviders()->get(string $providerId);
修改支付提供者
$response = Stays::finance()->paymentProviders()->update(string $providerId, array $parameters);
参数
检索支付提供者
$response = Stays::finance()->paymentProviders()->search(array $parameters);
参数
列表日历 API
检索列表日历
$response = Stays::calendar()->listings()->get(string $listingId, array $parameters);
参数
更新列表日历
$response = Stays::calendar()->listings()->update(string $listingId, array $parameters);
参数
价格 API
检索价格区域
$response = Stays::price()->regions()->search();
创建价格区域
$response = Stays::price()->regions()->create(array $parameters);
参数
修改价格区域
$response = Stays::price()->regions()->update(string $id, array $parameters);
参数
删除价格区域
$response = Stays::price()->regions()->delete(string $id);
检索销售价格规则
$response = Stays::price()->rules()->search(array $parameters);
参数
创建销售价格规则
$response = Stays::price()->rules()->create(array $parameters);
参数
检索销售价格规则
$response = Stays::price()->rules()->get(string $id);
修改销售价格规则
$response = Stays::price()->rules()->update(string $id, array $parameters);
参数
删除销售价格规则
$response = Stays::price()->rules()->delete(string $id);
检索列表销售价格
$response = Stays::price()->sells()->search(array $parameters);
参数
检索列表销售价格
$response = Stays::price()->sells()->get(string $listingId);
修改列表销售价格
$response = Stays::price()->sells()->update(string $seasonId, array $parameters);
参数
内容 API
创建属性
$response = Stays::content()->properties()->create(array $parameters);
参数
检索属性
$response = Stays::content()->properties()->get(string $propertyId);
修改属性
$response = Stays::content()->properties()->update(string $propertyId, array $parameters);
参数
检索属性
$response = Stays::content()->properties()->search(array $parameters);
参数
创建列表
$response = Stays::content()->listings()->create(array $parameters);
参数
检索列表
$response = Stays::content()->listings()->get(string $listingId);
修改列表
$response = Stays::content()->listings()->update(string $listingId, array $parameters);
参数
检索列表
$response = Stays::content()->listings()->search(array $parameters);
参数
创建组
$response = Stays::content()->groups()->create(array $parameters);
参数
检索组
$response = Stays::content()->groups()->get(string $groupId);
修改组
$response = Stays::content()->groups()->update(string $groupId, array $parameters);
参数
删除组
$response = Stays::content()->groups()->delete(string $groupId);
检索组
$response = Stays::content()->groups()->search(array $parameters);
参数
列表设置 API
列表销售价格设置
$response = Stays::setting()->listing()->price(string $listingId);
列表预订设置
$response = Stays::setting()->listing()->booking(string $listingId);
翻译 API
多单元物业类型
$response = Stays::translation()->types()->multiUnitProperty();
单单元物业类型
$response = Stays::translation()->types()->singleUnitProperty();
列表类型
$response = Stays::translation()->types()->listing();
房间类型
$response = Stays::translation()->types()->room();
卧室类型
$response = Stays::translation()->types()->bedroom();
浴室类型
$response = Stays::translation()->types()->bathroom();
其他客厅类型
$response = Stays::translation()->types()->other();
床类型
$response = Stays::translation()->types()->bed();
物业设施
$response = Stays::translation()->amenities()->property();
列表设施
$response = Stays::translation()->amenities()->listing();