Добавлены новые методы. Изменены некоторые методы

Обновлены описания классов, свойств и методов для документации
Добавлена документация
Добавлены примеры использования SDK
This commit is contained in:
Антон Н. Николаев
2021-04-21 11:24:28 +03:00
parent 25c35bb316
commit bd2a5b95fd
399 changed files with 93734 additions and 577 deletions
+120 -6
View File
@@ -65,6 +65,7 @@ use YooKassa\Request\Receipts\CreatePostReceiptRequest;
use YooKassa\Request\Receipts\CreatePostReceiptRequestInterface;
use YooKassa\Request\Receipts\CreatePostReceiptRequestSerializer;
use YooKassa\Request\Receipts\ReceiptResponseFactory;
use YooKassa\Request\Receipts\ReceiptResponseInterface;
use YooKassa\Request\Receipts\ReceiptsRequest;
use YooKassa\Request\Receipts\ReceiptsRequestSerializer;
use YooKassa\Request\Receipts\ReceiptsResponse;
@@ -82,6 +83,8 @@ use YooKassa\Request\Webhook\WebhookListResponse;
/**
* Класс клиента API
*
* @example 01-client.php 3 7 Создание клиента
*
* @package YooKassa
*
* @since 1.0.1
@@ -91,10 +94,18 @@ class Client extends BaseClient
/**
* Текущая версия библиотеки
*/
const SDK_VERSION = '2.0.7';
const SDK_VERSION = '2.1.0';
/**
* Получить список платежей магазина.
* Получить список платежей магазина
*
* Запрос позволяет получить список платежей, отфильтрованный по заданным критериям.
* В ответ на запрос вернется список платежей с учетом переданных параметров. В списке будет информация о платежах,
* созданных за последние 3 года. Список будет отсортирован по времени создания платежей в порядке убывания.
* Если результатов больше, чем задано в `limit`, список будет выводиться фрагментами. В этом случае в ответе
* на запрос вернется фрагмент списка и параметр `next_cursor` с указателем на следующий фрагмент.
*
* @example 01-client.php 226 23 Получить список платежей магазина с фильтрацией
*
* @param PaymentsRequestInterface|array|null $filter
*
@@ -160,6 +171,8 @@ class Client extends BaseClient
* <li>metadata — дополнительные данные (передаются магазином).</li>
* </ul>
*
* @example 01-client.php 21 28 Запрос на создание платежа
*
* @param CreatePaymentRequestInterface|array $payment
* @param string|null $idempotenceKey {@link https://yookassa.ru/developers/using-api/basics?lang=php#idempotence}
*
@@ -209,7 +222,10 @@ class Client extends BaseClient
/**
* Получить информацию о платеже
*
* Выдает объект платежа {@link PaymentInterface} по его уникальному идентификатору.
* Запрос позволяет получить информацию о текущем состоянии платежа по его уникальному идентификатору.
* Выдает объект платежа {@link PaymentInterface} в актуальном статусе.
*
* @example 01-client.php 162 8 Получить информацию о платеже
*
* @param string $paymentId
*
@@ -260,6 +276,8 @@ class Client extends BaseClient
* у вас есть 7 дней на подтверждение платежа. Для остальных способов оплаты платеж необходимо подтвердить
* в течение 6 часов.
*
* @example 01-client.php 51 34 Подтверждение платежа
*
* @param CreateCaptureRequestInterface|array $captureRequest
* @param $paymentId
* @param $idempotencyKey {@link https://yookassa.ru/developers/using-api/basics?lang=php#idempotence}
@@ -323,6 +341,8 @@ class Client extends BaseClient
* возвращать деньги на счет плательщика. Для платежей банковскими картами отмена происходит мгновенно.
* Для остальных способов оплаты возврат может занимать до нескольких дней.
*
* @example 01-client.php 87 9 Отменить незавершенную оплату заказа
*
* @param $paymentId
* @param $idempotencyKey {@link https://yookassa.ru/developers/using-api/basics?lang=php#idempotence}
*
@@ -371,6 +391,14 @@ class Client extends BaseClient
/**
* Получить список возвратов платежей
*
* Запрос позволяет получить список возвратов, отфильтрованный по заданным критериям.
* В ответ на запрос вернется список возвратов с учетом переданных параметров. В списке будет информация о возвратах,
* созданных за последние 3 года. Список будет отсортирован по времени создания возвратов в порядке убывания.
* Если результатов больше, чем задано в `limit`, список будет выводиться фрагментами. В этом случае в ответе
* на запрос вернется фрагмент списка и параметр `next_cursor` с указателем на следующий фрагмент.
*
* @example 01-client.php 274 23 Получить список возвратов платежей магазина с фильтрацией
*
* @param RefundsRequestInterface|array|null $filter
*
* @return RefundsResponse
@@ -383,6 +411,7 @@ class Client extends BaseClient
* @throws TooManyRequestsException
* @throws UnauthorizedException
* @throws ExtensionNotFoundException
* @throws Exception
*/
public function getRefunds($filter = null)
{
@@ -418,6 +447,8 @@ class Client extends BaseClient
* этого платежа. Создание возврата возможно только для платежей в статусе `succeeded`. Комиссии за проведение
* возврата нет. Комиссия, которую ЮKassa берёт за проведение исходного платежа, не возвращается.
*
* @example 01-client.php 134 26 Запрос на создание возврата
*
* @param CreateRefundRequestInterface|array $request
* @param null $idempotencyKey {@link https://yookassa.ru/developers/using-api/basics?lang=php#idempotence}
*
@@ -467,6 +498,11 @@ class Client extends BaseClient
/**
* Получить информацию о возврате
*
* Запрос позволяет получить информацию о текущем состоянии возврата по его уникальному идентификатору.
* В ответ на запрос придет объект возврата {@link RefundResponse} в актуальном статусе.
*
* @example 01-client.php 182 8 Получить информацию о возврате
*
* @param $refundId
*
* @return RefundResponse
@@ -479,6 +515,7 @@ class Client extends BaseClient
* @throws TooManyRequestsException
* @throws UnauthorizedException
* @throws ExtensionNotFoundException
* @throws Exception
*/
public function getRefundInfo($refundId)
{
@@ -506,8 +543,11 @@ class Client extends BaseClient
/**
* Создание Webhook
*
* Запрос позволяет подписаться на уведомления о событии (например, на переход платежа в статус successed).
*
* @example 01-client.php 192 32 Создание Webhook
*
* @param $request
* @param null $idempotencyKey
* @return Webhook|null
@@ -561,7 +601,11 @@ class Client extends BaseClient
/**
* Удаление Webhook
* Запрос позволяет отписаться от уведомлений о событии для переданного OAuth-токена. Чтобы удалить webhook, вам нужно передать в запросе его идентификатор.
*
* Запрос позволяет отписаться от уведомлений о событии для переданного OAuth-токена.
* Чтобы удалить webhook, вам нужно передать в запросе его идентификатор.
*
* @example 01-client.php 192 32 Удаление Webhook
*
* @param $webhookId
* @param null $idempotencyKey
@@ -605,8 +649,11 @@ class Client extends BaseClient
/**
* Список созданных Webhook
*
* Запрос позволяет узнать, какие webhook есть для переданного OAuth-токена.
*
* @example 01-client.php 192 32 Список созданных Webhook
*
* @return WebhookListResponse|null
*
* @throws ApiException
@@ -638,7 +685,16 @@ class Client extends BaseClient
}
/**
* Получить список платежей магазина.
* Получить список чеков магазина
*
* Запрос позволяет получить список чеков, отфильтрованный по заданным критериям.
* Можно запросить чеки по конкретному платежу, чеки по конкретному возврату или все чеки магазина.
* В ответ на запрос вернется список чеков с учетом переданных параметров. В списке будет информация о чеках,
* созданных за последние 3 года. Список будет отсортирован по времени создания чеков в порядке убывания.
* Если результатов больше, чем задано в `limit`, список будет выводиться фрагментами.
* В этом случае в ответе на запрос вернется фрагмент списка и параметр `next_cursor` с указателем на следующий фрагмент.
*
* @example 01-client.php 251 21 Получить список чеков магазина с фильтрацией
*
* @param PaymentInterface|RefundInterface|array|null $filter
*
@@ -683,6 +739,13 @@ class Client extends BaseClient
}
/**
* Отправка чека в облачную кассу
*
* Создает объект чека — `Receipt`. Возвращает успешно созданный чек по уникальному идентификатору
* платежа или возврата.
*
* @example 01-client.php 98 34 Запрос на создание чека
*
* @param CreatePostReceiptRequestInterface|array $receipt
* @param string|null $idempotenceKey
*
@@ -734,11 +797,62 @@ class Client extends BaseClient
return $receiptResponse;
}
/**
* Получить информацию о чеке
*
* Запрос позволяет получить информацию о текущем состоянии чека по его уникальному идентификатору.
* Выдает объект чека {@link ReceiptResponseInterface} в актуальном статусе.
*
* @example 01-client.php 172 8 Получить информацию о чеке
*
* @param string $receiptId
*
* @return ReceiptResponseInterface
*
* @throws ApiException
* @throws BadApiRequestException
* @throws ForbiddenException
* @throws InternalServerError
* @throws NotFoundException
* @throws ResponseProcessingException
* @throws TooManyRequestsException
* @throws UnauthorizedException
* @throws ExtensionNotFoundException
*/
public function getReceiptInfo($receiptId)
{
if ($receiptId === null) {
throw new \InvalidArgumentException('Missing the required parameter $receiptId');
} elseif (!TypeCast::canCastToString($receiptId)) {
throw new \InvalidArgumentException('Invalid receiptId value: string required');
} elseif (strlen($receiptId) !== 39) {
throw new \InvalidArgumentException('Invalid receiptId value');
}
$path = self::RECEIPTS_PATH.'/'.$receiptId;
$response = $this->execute($path, HttpVerb::GET, null);
$result = null;
if ($response->getCode() == 200) {
$resultArray = $this->decodeData($response);
$factory = new ReceiptResponseFactory();
$result = $factory->factory($resultArray);
} else {
$this->handleError($response);
}
return $result;
}
/**
* Информация о магазине
*
* Запрос позволяет получить информацию о магазине для переданного OAuth-токена.
*
* @return array|null
* @example 01-client.php 12 7 Информация о магазине
*
* @return array|null Массив с информацией о магазине
*
* @throws ApiException
* @throws BadApiRequestException