Exemplo n.º 1
0
 /**
  * @param array $reportFormat
  *
  * @return ReportTicket
  * @throws ReportException
  */
 public function getReportTicket($reportFormat = self::REVENUE_REPORT)
 {
     $compiledUrl = $this->baseUrl;
     $response = $this->client->request('POST', $compiledUrl, ['body' => json_encode($reportFormat)]);
     $repositoryResponse = RepositoryResponse::fromResponse($response);
     if (!$repositoryResponse->isSuccessful()) {
         throw ReportException::failed($repositoryResponse);
     }
     if (!isset($repositoryResponse->getResponseAsArray()['response']['report_id'])) {
         throw ReportException::missingIndex('response->report_id');
     }
     $reportTicket = ReportTicket::fromArray($repositoryResponse->getResponseAsArray()['response']);
     return $reportTicket;
 }