// use Apoloz\AlfaBank\Sbp\Data\QrCodeRequestData; use Apoloz\AlfaBank\Sbp\Data\QrCodeResponseData; use Apoloz\AlfaBank\Utils\CmsSigner; use Saloon\Contracts\Body\HasBody; use Saloon\Enums\Method; use Saloon\Http\Request; use Saloon\Http\Response; use Saloon\Traits\Body\HasStringBody; // //
// class GetQrCodeRequest extends Request implements HasBody { use HasStringBody; //
// protected Method $method = Method::POST; //
//
// public function __construct( protected QrCodeRequestData $data ) {} //
//
// public function resolveEndpoint(): string { return '/'; } //
//
// protected function defaultBody(): string { $bodyArray = array_merge( ['command' => 'GetQRCd'], $this->data->toArray() ); return CmsSigner::canonicalize($bodyArray); } //
//
// public function createDtoFromResponse(Response $response): QrCodeResponseData { return QrCodeResponseData::from($response->json()); } //
}