本文整理匯總了PHP中Magento\Quote\Model\Quote::getExtensionAttributes方法的典型用法代碼示例。如果您正苦於以下問題:PHP Quote::getExtensionAttributes方法的具體用法?PHP Quote::getExtensionAttributes怎麽用?PHP Quote::getExtensionAttributes使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Magento\Quote\Model\Quote
的用法示例。
在下文中一共展示了Quote::getExtensionAttributes方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: processShippingAssignment
/**
* @param \Magento\Quote\Model\Quote $quote
* @return void
* @throws InputException
*/
private function processShippingAssignment($quote)
{
// Shipping Assignments processing
$extensionAttributes = $quote->getExtensionAttributes();
if (!$quote->isVirtual() && $extensionAttributes && $extensionAttributes->getShippingAssignments()) {
$shippingAssignments = $extensionAttributes->getShippingAssignments();
if (count($shippingAssignments) > 1) {
throw new InputException(__("Only 1 shipping assignment can be set"));
}
$this->shippingAssignmentPersister->save($quote, $shippingAssignments[0]);
}
}
示例2: updateShippingMethod
/**
* Set shipping method to quote, if needed
*
* @param string $methodCode
* @return void
*/
public function updateShippingMethod($methodCode)
{
$shippingAddress = $this->_quote->getShippingAddress();
if (!$this->_quote->getIsVirtual() && $shippingAddress) {
if ($methodCode != $shippingAddress->getShippingMethod()) {
$this->ignoreAddressValidation();
$shippingAddress->setShippingMethod($methodCode)->setCollectShippingRates(true);
$cartExtension = $this->_quote->getExtensionAttributes();
if ($cartExtension && $cartExtension->getShippingAssignments()) {
$cartExtension->getShippingAssignments()[0]->getShipping()->setMethod($methodCode);
}
$this->_quote->collectTotals();
$this->quoteRepository->save($this->_quote);
}
}
}
示例3: prepareShippingAssignment
/**
* @param \Magento\Quote\Model\Quote $quote
* @return \Magento\Quote\Model\Quote
*/
private function prepareShippingAssignment($quote)
{
$cartExtension = $quote->getExtensionAttributes();
if ($cartExtension === null) {
$cartExtension = $this->getCartExtensionFactory()->create();
}
/** @var \Magento\Quote\Api\Data\ShippingAssignmentInterface $shippingAssignment */
$shippingAssignment = $this->getShippingAssignmentProcessor()->create($quote);
$shipping = $shippingAssignment->getShipping();
$shipping->setMethod(null);
$shippingAssignment->setShipping($shipping);
$cartExtension->setShippingAssignments([$shippingAssignment]);
return $quote->setExtensionAttributes($cartExtension);
}