|
9 | 9 | namespace Magento\Fedex\Model;
|
10 | 10 |
|
11 | 11 | use Magento\Framework\Module\Dir;
|
| 12 | +use Magento\Framework\Xml\Security; |
12 | 13 | use Magento\Quote\Model\Quote\Address\RateRequest;
|
13 | 14 | use Magento\Shipping\Model\Carrier\AbstractCarrierOnline;
|
14 | 15 | use Magento\Shipping\Model\Rate\Result;
|
15 |
| -use Magento\Framework\Xml\Security; |
| 16 | +use Magento\Shipping\Model\Tracking\Result as TrackingResult; |
16 | 17 |
|
17 | 18 | /**
|
18 | 19 | * Fedex shipping implementation
|
@@ -77,7 +78,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
|
77 | 78 | /**
|
78 | 79 | * Rate result data
|
79 | 80 | *
|
80 |
| - * @var Result|null |
| 81 | + * @var Result|TrackingResult |
81 | 82 | */
|
82 | 83 | protected $_result = null;
|
83 | 84 |
|
@@ -379,12 +380,12 @@ public function setRequest(RateRequest $request)
|
379 | 380 | /**
|
380 | 381 | * Get result of request
|
381 | 382 | *
|
382 |
| - * @return Result|null |
| 383 | + * @return Result|TrackingResult |
383 | 384 | */
|
384 | 385 | public function getResult()
|
385 | 386 | {
|
386 | 387 | if (!$this->_result) {
|
387 |
| - $this->_result = $this->_trackFactory->create(); |
| 388 | + $this->_result = $this->_rateFactory->create(); |
388 | 389 | }
|
389 | 390 | return $this->_result;
|
390 | 391 | }
|
@@ -1038,6 +1039,7 @@ protected function setTrackingReqeust()
|
1038 | 1039 | */
|
1039 | 1040 | protected function _getXMLTracking($tracking)
|
1040 | 1041 | {
|
| 1042 | + $this->_result = $this->_trackFactory->create(); |
1041 | 1043 | $trackRequest = [
|
1042 | 1044 | 'WebAuthenticationDetail' => [
|
1043 | 1045 | 'UserCredential' => [
|
@@ -1094,10 +1096,10 @@ protected function _parseTrackingResponse($trackingValue, $response)
|
1094 | 1096 | if (!is_object($response) || empty($response->HighestSeverity)) {
|
1095 | 1097 | $this->appendTrackingError($trackingValue, __('Invalid response from carrier'));
|
1096 | 1098 | return;
|
1097 |
| - } else if (in_array($response->HighestSeverity, self::$trackingErrors)) { |
| 1099 | + } elseif (in_array($response->HighestSeverity, self::$trackingErrors)) { |
1098 | 1100 | $this->appendTrackingError($trackingValue, (string) $response->Notifications->Message);
|
1099 | 1101 | return;
|
1100 |
| - } else if (empty($response->CompletedTrackDetails) || empty($response->CompletedTrackDetails->TrackDetails)) { |
| 1102 | + } elseif (empty($response->CompletedTrackDetails) || empty($response->CompletedTrackDetails->TrackDetails)) { |
1101 | 1103 | $this->appendTrackingError($trackingValue, __('No available tracking items'));
|
1102 | 1104 | return;
|
1103 | 1105 | }
|
@@ -1644,7 +1646,7 @@ private function getDeliveryDateTime(\stdClass $trackInfo)
|
1644 | 1646 | * Return City, State, Country Code
|
1645 | 1647 | *
|
1646 | 1648 | * @param \stdClass $address
|
1647 |
| - * @return \Magento\Framework\Phrase|string |
| 1649 | + * @return string |
1648 | 1650 | */
|
1649 | 1651 | private function getDeliveryAddress(\stdClass $address)
|
1650 | 1652 | {
|
@@ -1705,11 +1707,12 @@ private function processTrackDetailsEvents(array $events)
|
1705 | 1707 | * Append error message to rate result instance
|
1706 | 1708 | * @param string $trackingValue
|
1707 | 1709 | * @param string $errorMessage
|
| 1710 | + * @return void |
1708 | 1711 | */
|
1709 | 1712 | private function appendTrackingError($trackingValue, $errorMessage)
|
1710 | 1713 | {
|
1711 | 1714 | $error = $this->_trackErrorFactory->create();
|
1712 |
| - $error->setCarrier('fedex'); |
| 1715 | + $error->setCarrier(self::CODE); |
1713 | 1716 | $error->setCarrierTitle($this->getConfigData('title'));
|
1714 | 1717 | $error->setTracking($trackingValue);
|
1715 | 1718 | $error->setErrorMessage($errorMessage);
|
|
0 commit comments