Удалена перезапись компании в тестовом режиме. Новый метод Kkt::setAuthToken()

This commit is contained in:
Anthony Axenov 2020-06-01 03:26:25 +08:00
parent e70a65fa44
commit ebee67335b

View File

@ -9,8 +9,7 @@
namespace AtolOnline\Api; namespace AtolOnline\Api;
use AtolOnline\{Entities\Company, use AtolOnline\{Entities\Document,
Entities\Document,
Exceptions\AtolCorrectionInfoException, Exceptions\AtolCorrectionInfoException,
Exceptions\AtolInvalidUuidException, Exceptions\AtolInvalidUuidException,
Exceptions\AtolKktLoginEmptyException, Exceptions\AtolKktLoginEmptyException,
@ -365,6 +364,28 @@ class Kkt extends Client
return $response; return $response;
} }
/**
* Возвращает текущий токен авторизации
*
* @return string
*/
public function getAuthToken(): ?string
{
return $this->auth_token;
}
/**
* Устанавливает заранее известный токен авторизации
*
* @param string|null $auth_token
* @return $this
*/
public function setAuthToken(?string $auth_token)
{
$this->auth_token = $auth_token;
return $this;
}
/** /**
* Сбрасывает настройки ККТ по умолчанию * Сбрасывает настройки ККТ по умолчанию
*/ */
@ -476,11 +497,7 @@ class Kkt extends Client
* @param \AtolOnline\Entities\Document $document Объект документа * @param \AtolOnline\Entities\Document $document Объект документа
* @param string|null $external_id Уникальный код документа (если не указан, то будет создан UUID) * @param string|null $external_id Уникальный код документа (если не указан, то будет создан UUID)
* @return \AtolOnline\Api\KktResponse * @return \AtolOnline\Api\KktResponse
* @throws \AtolOnline\Exceptions\AtolEmailTooLongException * @throws \AtolOnline\Exceptions\AtolWrongDocumentTypeException
* @throws \AtolOnline\Exceptions\AtolEmailValidateException
* @throws \AtolOnline\Exceptions\AtolInnWrongLengthException
* @throws \AtolOnline\Exceptions\AtolPaymentAddressTooLongException
* @throws \AtolOnline\Exceptions\AtolWrongDocumentTypeException Некорректный тип документа
* @throws \GuzzleHttp\Exception\GuzzleException * @throws \GuzzleHttp\Exception\GuzzleException
*/ */
protected function registerDocument(string $api_method, string $type, Document $document, ?string $external_id = null) protected function registerDocument(string $api_method, string $type, Document $document, ?string $external_id = null)
@ -490,14 +507,6 @@ class Kkt extends Client
throw new AtolWrongDocumentTypeException($type); throw new AtolWrongDocumentTypeException($type);
} }
$this->auth(); $this->auth();
if ($this->isTestMode()) {
$document->setCompany((new Company())
->setInn('5544332219')
->setPaymentAddress('https://v4.online.atol.ru')
->setEmail('test@example.com')
->setSno('osn')
);
}
$data['timestamp'] = date('d.m.y H:i:s'); $data['timestamp'] = date('d.m.y H:i:s');
$data['external_id'] = $external_id ?: Uuid::uuid4()->toString(); $data['external_id'] = $external_id ?: Uuid::uuid4()->toString();
$data[$type] = $document; $data[$type] = $document;
@ -506,14 +515,4 @@ class Kkt extends Client
} }
return $this->sendAtolRequest('POST', trim($api_method), $data); return $this->sendAtolRequest('POST', trim($api_method), $data);
} }
/**
* Возвращает текущий токен авторизации
*
* @return string
*/
public function getAuthToken(): ?string
{
return $this->auth_token;
}
} }