/** * @param int $transportServiceId * @param string|null $shopId * @param bool $destinationOnly * @param bool $registerOnly * @param bool $includeInactive * @param string|null $destinationCountry ISO 3166-1 Alpha3 * * @see TransportService for Transport Service ID's * * @return GetTransportServiceBranchesResponse */ public function getTransportServiceBranches($transportServiceId, $shopId = null, $destinationOnly = false, $registerOnly = false, $includeInactive = false, $destinationCountry = null) { $resource = Resource::TRANSPORT_SERVICES . '/' . $transportServiceId . Resource::BRANCHES; $queryStringParams = [BranchAttr::QS_SHOP_ID => $shopId, BranchAttr::QS_DESTINATION_ONLY => $destinationOnly, BranchAttr::QS_REGISTER_ONLY => $registerOnly, BranchAttr::QS_INCLUDE_INACTIVE => $includeInactive, BranchAttr::QS_DESTINATION_COUNTRY => $destinationCountry]; $queryString = http_build_query($queryStringParams); if (mb_strlen($queryString) > 0) { $resource .= '?' . $queryString; } $requestEnvelope = new RequestEnvelope(null, $resource, Method::GET); $requestEnvelopeWithHeaders = $this->attachBasicHeadersToRequest($requestEnvelope); $connectorResponse = $this->connector->sendRequest($requestEnvelopeWithHeaders); $formattedResponse = $this->formatter->formatGetTransportServiceBranchesResponse($connectorResponse); return $formattedResponse; }
/** * @param string|int $identifier * @param string $lang * @return GetTrackingResponse */ public function getTracking($identifier, $lang = 'cs') { $queryStringParams = [TrackingAttr::QS_IDENTIFIER => $identifier, TrackingAttr::QS_LANG => $lang]; $resource = Resource::TRACKING; $queryString = http_build_query($queryStringParams); if (mb_strlen($queryString) > 0) { $resource .= '?' . $queryString; } $requestEnvelope = new RequestEnvelope(null, $resource, Method::GET, $this->shopId, $this->apiKey); $requestEnvelopeWithHeaders = $this->attachBasicHeadersToRequest($requestEnvelope); $connectorResponse = $this->connector->sendRequest($requestEnvelopeWithHeaders); $formattedResponse = $this->formatter->formatGetTrackingResponse($connectorResponse); return $formattedResponse; }
/** * * @param DateTime $timeFrom * @param string $shopId * @param string $apiKey * @param int $limit * @param int $offset * @param int $statusId * * @return GetStatusHistoryResponse */ public function getStatusHistory(DateTime $timeFrom, $shopId = null, $apiKey = null, $limit = null, $offset = null, $statusId = null) { $resource = Resource::STATUSHISTORY; $shop = isset($shopId) ? $shopId : $this->shopId; $key = isset($apiKey) ? $apiKey : $this->apiKey; $queryStringParams = [StatusHistoryAttr::QS_TIME_FROM => $timeFrom->format('YmdHis'), StatusHistoryAttr::QS_STATUS_ID => $statusId, StatusHistoryAttr::QS_LIMIT => $limit, StatusHistoryAttr::QS_OFFSET => $offset]; $queryString = http_build_query($queryStringParams); if (mb_strlen($queryString) > 0) { $resource .= '?' . $queryString; } $requestEnvelope = new RequestEnvelope(null, $resource, Method::GET, $shop, $key); $requestEnvelopeWithHeaders = $this->attachBasicHeadersToRequest($requestEnvelope); $connectorResponse = $this->connector->sendRequest($requestEnvelopeWithHeaders); $formattedResponse = $this->formatter->formatGetStatusHistoryResponse($connectorResponse); return $formattedResponse; }