當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Data::getShippingPrice方法代碼示例

本文整理匯總了PHP中Magento\Tax\Helper\Data::getShippingPrice方法的典型用法代碼示例。如果您正苦於以下問題:PHP Data::getShippingPrice方法的具體用法?PHP Data::getShippingPrice怎麽用?PHP Data::getShippingPrice使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Magento\Tax\Helper\Data的用法示例。


在下文中一共展示了Data::getShippingPrice方法的11個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: _prepareShippingOptions

 /**
  * Attempt to collect address shipping rates and return them for further usage in instant update API
  * Returns empty array if it was impossible to obtain any shipping rate
  * If there are shipping rates obtained, the method must return one of them as default.
  *
  * @param Address $address
  * @param bool $mayReturnEmpty
  * @param bool $calculateTax
  * @return array|false
  * @SuppressWarnings(PHPMD.CyclomaticComplexity)
  * @SuppressWarnings(PHPMD.NPathComplexity)
  */
 protected function _prepareShippingOptions(Address $address, $mayReturnEmpty = false, $calculateTax = false)
 {
     $options = [];
     $i = 0;
     $iMin = false;
     $min = false;
     $userSelectedOption = null;
     foreach ($address->getGroupedAllShippingRates() as $group) {
         foreach ($group as $rate) {
             $amount = (double) $rate->getPrice();
             if ($rate->getErrorMessage()) {
                 continue;
             }
             $isDefault = $address->getShippingMethod() === $rate->getCode();
             $amountExclTax = $this->_taxData->getShippingPrice($amount, false, $address);
             $amountInclTax = $this->_taxData->getShippingPrice($amount, true, $address);
             $options[$i] = new \Magento\Framework\DataObject(['is_default' => $isDefault, 'name' => trim("{$rate->getCarrierTitle()} - {$rate->getMethodTitle()}", ' -'), 'code' => $rate->getCode(), 'amount' => $amountExclTax]);
             if ($calculateTax) {
                 $options[$i]->setTaxAmount($amountInclTax - $amountExclTax + $address->getTaxAmount() - $address->getShippingTaxAmount());
             }
             if ($isDefault) {
                 $userSelectedOption = $options[$i];
             }
             if (false === $min || $amountInclTax < $min) {
                 $min = $amountInclTax;
                 $iMin = $i;
             }
             $i++;
         }
     }
     if ($mayReturnEmpty && $userSelectedOption === null) {
         $options[] = new \Magento\Framework\DataObject(['is_default' => true, 'name' => __('N/A'), 'code' => 'no_rate', 'amount' => 0.0]);
         if ($calculateTax) {
             $options[$i]->setTaxAmount($address->getTaxAmount());
         }
     } elseif ($userSelectedOption === null && isset($options[$iMin])) {
         $options[$iMin]->setIsDefault(true);
     }
     // Magento will transfer only first 10 cheapest shipping options if there are more than 10 available.
     if (count($options) > 10) {
         usort($options, [get_class($this), 'cmpShippingOptions']);
         array_splice($options, 10);
         // User selected option will be always included in options list
         if ($userSelectedOption !== null && !in_array($userSelectedOption, $options)) {
             $options[9] = $userSelectedOption;
         }
     }
     return $options;
 }
開發者ID:Doability,項目名稱:magento2dev,代碼行數:61,代碼來源:Checkout.php

示例2: _getShippingPrice

 /**
  * Get selected shipping method price
  *
  * @param bool $inclTax
  * @return string
  */
 protected function _getShippingPrice($inclTax)
 {
     $address = $this->getQuote()->getShippingAddress();
     $rate = $address->getShippingRateByCode($address->getShippingMethod());
     return $this->formatPrice($this->_taxData->getShippingPrice($rate->getPrice(), $inclTax, $address));
 }
開發者ID:Atlis,項目名稱:docker-magento2,代碼行數:12,代碼來源:Progress.php

示例3: getShippingPrice

 /**
  * @param float $price
  * @param bool|null $flag
  * @return float
  */
 public function getShippingPrice($price, $flag)
 {
     return $this->getQuote()->getStore()->convertPrice($this->_taxData->getShippingPrice($price, $flag, $this->getAddress()), true);
 }
開發者ID:Atlis,項目名稱:docker-magento2,代碼行數:9,代碼來源:Available.php

示例4: _getShippingPrice

 /**
  * Return formatted shipping price
  *
  * @param float $price
  * @param bool $isInclTax
  * @return string
  */
 protected function _getShippingPrice($price, $isInclTax)
 {
     return $this->_formatPrice($this->_taxHelper->getShippingPrice($price, $isInclTax, $this->_address));
 }
開發者ID:whoople,項目名稱:magento2-testing,代碼行數:11,代碼來源:Review.php

示例5: getShippingPrice

 /**
  * Get shipping price
  *
  * @param float $price
  * @param bool $flag
  * @return float
  */
 public function getShippingPrice($price, $flag)
 {
     return $this->priceCurrency->convertAndFormat($this->_taxData->getShippingPrice($price, $flag, $this->getAddress(), null, $this->getAddress()->getQuote()->getStore()), true, PriceCurrencyInterface::DEFAULT_PRECISION, $this->getQuote()->getStore());
 }
開發者ID:zhangjiachao,項目名稱:magento2,代碼行數:11,代碼來源:Form.php

示例6: getShippingPriceWithFlag

 /**
  * Get Shipping Price including or excluding tax
  *
  * @param bool $flag
  * @return float
  */
 protected function getShippingPriceWithFlag($flag)
 {
     $price = $this->taxHelper->getShippingPrice($this->getShippingRate()->getPrice(), $flag, $this->getAddress(), $this->getQuote()->getCustomerTaxClassId());
     return $this->priceCurrency->convertAndFormat($price, true, PriceCurrencyInterface::DEFAULT_PRECISION, $this->getQuote()->getStore());
 }
開發者ID:kidaa30,項目名稱:magento2-platformsh,代碼行數:11,代碼來源:Price.php

示例7: getShippingPriceWithFlag

 /**
  * Get Shipping Price including or excluding tax
  *
  * @param \Magento\Quote\Model\Quote\Address\Rate $rateModel
  * @param bool $flag
  * @return float
  */
 private function getShippingPriceWithFlag($rateModel, $flag)
 {
     return $this->taxHelper->getShippingPrice($rateModel->getPrice(), $flag, $rateModel->getAddress(), $rateModel->getAddress()->getQuote()->getCustomerTaxClassId());
 }
開發者ID:pradeep-wagento,項目名稱:magento2,代碼行數:11,代碼來源:ShippingMethodConverter.php

示例8: getShippingPrice

 /**
  * @param Address $address
  * @param float $price
  * @param bool $flag
  * @return float
  */
 public function getShippingPrice($address, $price, $flag)
 {
     return $address->getQuote()->getStore()->convertPrice($this->_taxHelper->getShippingPrice($price, $flag, $address), true);
 }
開發者ID:aiesh,項目名稱:magento2,代碼行數:10,代碼來源:Shipping.php

示例9: getShippingPrice

 /**
  * @param Address $address
  * @param float $price
  * @param bool $flag
  * @return float
  */
 public function getShippingPrice($address, $price, $flag)
 {
     return $this->priceCurrency->convertAndFormat($this->_taxHelper->getShippingPrice($price, $flag, $address), true, PriceCurrencyInterface::DEFAULT_PRECISION, $address->getQuote()->getStore());
 }
開發者ID:zhangjiachao,項目名稱:magento2,代碼行數:10,代碼來源:Shipping.php

示例10: getShippingPrice

 /**
  * Get Shipping Price
  *
  * @param float $price
  * @param bool $flag
  * @return float
  */
 public function getShippingPrice($price, $flag)
 {
     return $this->formatPrice($this->_taxHelper->getShippingPrice($price, $flag, $this->getAddress(), $this->getQuote()->getCustomerTaxClassId()));
 }
開發者ID:Atlis,項目名稱:docker-magento2,代碼行數:11,代碼來源:Shipping.php

示例11: getShippingPriceWithFlag

 /**
  * Get Shipping Price including or excluding tax
  *
  * @param bool $flag
  * @return float
  */
 protected function getShippingPriceWithFlag($flag)
 {
     $price = $this->taxHelper->getShippingPrice($this->getShippingRate()->getPrice(), $flag, $this->getAddress(), $this->getQuote()->getCustomerTaxClassId());
     return $this->getQuote()->getStore()->convertPrice($price, true);
 }
開發者ID:aiesh,項目名稱:magento2,代碼行數:11,代碼來源:Price.php


注:本文中的Magento\Tax\Helper\Data::getShippingPrice方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。