Skip to content

Commit 47361f8

Browse files
Merge pull request #1315 from magento-mpi/MAGETWO-61067
Bug - MAGETWO-61067 Shipping title and method name does not translated in shopping cart
2 parents 75e5dec + 7d7555e commit 47361f8

File tree

2 files changed

+308
-15
lines changed

2 files changed

+308
-15
lines changed

app/code/Magento/Quote/Model/Quote/Address.php

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
use Magento\Customer\Api\Data\RegionInterfaceFactory;
1111
use Magento\Framework\App\ObjectManager;
1212
use Magento\Framework\Serialize\Serializer\Json;
13+
use Magento\Store\Model\StoreManagerInterface;
1314

1415
/**
1516
* Sales Quote address model
@@ -202,6 +203,11 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress implements
202203
*/
203204
protected $_addressTotalFactory;
204205

206+
/**
207+
* @var \Magento\Quote\Model\Quote\Address\RateFactory
208+
*/
209+
protected $_addressRateFactory;
210+
205211
/**
206212
* @var \Magento\Customer\Api\Data\AddressInterfaceFactory
207213
*/
@@ -242,6 +248,11 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress implements
242248
*/
243249
private $serializer;
244250

251+
/**
252+
* @var StoreManagerInterface
253+
*/
254+
private $storeManager;
255+
245256
/**
246257
* @param \Magento\Framework\Model\Context $context
247258
* @param \Magento\Framework\Registry $registry
@@ -259,7 +270,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress implements
259270
* @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
260271
* @param Address\ItemFactory $addressItemFactory
261272
* @param \Magento\Quote\Model\ResourceModel\Quote\Address\Item\CollectionFactory $itemCollectionFactory
262-
* @param Address\RateFactory $addressRateFactory
273+
* @param \Magento\Quote\Model\Quote\Address\RateFactory $addressRateFactory
263274
* @param Address\RateCollectorInterfaceFactory $rateCollector
264275
* @param \Magento\Quote\Model\ResourceModel\Quote\Address\Rate\CollectionFactory $rateCollectionFactory
265276
* @param Address\RateRequestFactory $rateRequestFactory
@@ -276,6 +287,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress implements
276287
* @param \Magento\Framework\Data\Collection\AbstractDb|null $resourceCollection
277288
* @param array $data
278289
* @param Json $serializer
290+
* @param StoreManagerInterface $storeManager
279291
*
280292
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
281293
*/
@@ -312,7 +324,8 @@ public function __construct(
312324
\Magento\Framework\Model\ResourceModel\AbstractResource $resource = null,
313325
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
314326
array $data = [],
315-
Json $serializer = null
327+
Json $serializer = null,
328+
StoreManagerInterface $storeManager = null
316329
) {
317330
$this->_scopeConfig = $scopeConfig;
318331
$this->_addressItemFactory = $addressItemFactory;
@@ -332,6 +345,7 @@ public function __construct(
332345
$this->totalsCollector = $totalsCollector;
333346
$this->totalsReader = $totalsReader;
334347
$this->serializer = $serializer ?: ObjectManager::getInstance()->get(Json::class);
348+
$this->storeManager = $storeManager ?: ObjectManager::getInstance()->get(StoreManagerInterface::class);
335349
parent::__construct(
336350
$context,
337351
$registry,
@@ -990,16 +1004,16 @@ public function requestShippingRates(\Magento\Quote\Model\Quote\Item\AbstractIte
9901004
$request->setFreeMethodWeight($item ? 0 : $this->getFreeMethodWeight());
9911005

9921006
/**
993-
* Store and website identifiers need specify from quote
1007+
* Store and website identifiers specified from StoreManager
9941008
*/
995-
$request->setStoreId($this->getQuote()->getStore()->getId());
996-
$request->setWebsiteId($this->getQuote()->getStore()->getWebsiteId());
1009+
$request->setStoreId($this->storeManager->getStore()->getId());
1010+
$request->setWebsiteId($this->storeManager->getWebsite()->getId());
9971011
$request->setFreeShipping($this->getFreeShipping());
9981012
/**
9991013
* Currencies need to convert in free shipping
10001014
*/
1001-
$request->setBaseCurrency($this->getQuote()->getStore()->getBaseCurrency());
1002-
$request->setPackageCurrency($this->getQuote()->getStore()->getCurrentCurrency());
1015+
$request->setBaseCurrency($this->storeManager->getStore()->getBaseCurrency());
1016+
$request->setPackageCurrency($this->storeManager->getStore()->getCurrentCurrency());
10031017
$request->setLimitCarrier($this->getLimitCarrier());
10041018
$baseSubtotalInclTax = $this->getBaseSubtotalTotalInclTax();
10051019
$request->setBaseSubtotalInclTax($baseSubtotalInclTax);
@@ -1021,11 +1035,10 @@ public function requestShippingRates(\Magento\Quote\Model\Quote\Item\AbstractIte
10211035
$item->setBaseShippingAmount($rate->getPrice());
10221036
} else {
10231037

1024-
/** @var \Magento\Quote\Model\Quote $quote */
1025-
$quote = $this->getQuote();
1026-
$amountPrice = $quote->getStore()
1027-
->getBaseCurrency()
1028-
->convert($rate->getPrice(), $quote->getQuoteCurrencyCode());
1038+
/** @var \Magento\Store\Api\Data\StoreInterface */
1039+
$store = $this->storeManager->getStore();
1040+
$amountPrice = $store->getBaseCurrency()
1041+
->convert($rate->getPrice(), $store->getCurrentCurrencyCode());
10291042
$this->setBaseShippingAmount($rate->getPrice());
10301043
$this->setShippingAmount($amountPrice);
10311044
}

0 commit comments

Comments
 (0)