Рефакторинг исключений, новые константы ограничений

Описывать все слишком долго, TLDR:
- упрощены корневые AtolException, {BasicTooLongException => TooLongException}, {BasicTooManyException => TooManyException}
- InvalidSnoException заменён на InvalidEnumValueException
- добавлены новые константы, общий порядок изменён в соответствии с порядком упоминания в документации, ссылки на которую тоже добавлены с указанием страниц

Помимо этого, в enum-ах теперь должен быть предусмотрен метод getFfdTags()
This commit is contained in:
2021-11-22 14:51:10 +08:00
parent e1303f4fdb
commit 3bf8667437
48 changed files with 482 additions and 603 deletions

View File

@@ -13,7 +13,6 @@ namespace AtolOnline\Exceptions;
use AtolOnline\Api\KktResponse;
use Exception;
use Throwable;
/**
* Исключение, возникающее при неудачной авторизации
@@ -25,17 +24,9 @@ class AuthFailedException extends Exception
*
* @param KktResponse $response
* @param string $message
* @param int $code
* @param Throwable|null $previous
*/
public function __construct(KktResponse $response, $message = "", $code = 0, Throwable $previous = null)
public function __construct(KktResponse $response, string $message = '')
{
$message = $response->isValid()
? $message
: '[' . $response->error->code . '] ' . $response->error->text .
'. ERROR_ID: ' . $response->error->error_id .
'. TYPE: ' . $response->error->type;
$code = $response->isValid() ? $code : $response->error->code;
parent::__construct($message, $code, $previous);
parent::__construct(($message ?: 'Ошибка авторизации: ') . ': ' . $response);
}
}