本文整理匯總了PHP中Magento\Store\Model\Store::getWebsiteId方法的典型用法代碼示例。如果您正苦於以下問題:PHP Store::getWebsiteId方法的具體用法?PHP Store::getWebsiteId怎麽用?PHP Store::getWebsiteId使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Magento\Store\Model\Store
的用法示例。
在下文中一共展示了Store::getWebsiteId方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: process
/**
* Calculate item fixed tax and prepare information for discount and regular taxation
*
* @param \Magento\Quote\Model\Quote\Address $address
* @param \Magento\Quote\Model\Quote\Address\Total $total
* @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
* @return void|$this
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
* @SuppressWarnings(PHPMD.UnusedLocalVariable)
*/
protected function process(\Magento\Quote\Model\Quote\Address $address, \Magento\Quote\Model\Quote\Address\Total $total, $item)
{
$attributes = $this->weeeData->getProductWeeeAttributes($item->getProduct(), $address, $address->getQuote()->getBillingAddress(), $this->_store->getWebsiteId());
$productTaxes = [];
$totalValueInclTax = 0;
$baseTotalValueInclTax = 0;
$totalRowValueInclTax = 0;
$baseTotalRowValueInclTax = 0;
$totalValueExclTax = 0;
$baseTotalValueExclTax = 0;
$totalRowValueExclTax = 0;
$baseTotalRowValueExclTax = 0;
$associatedTaxables = $item->getAssociatedTaxables();
if (!$associatedTaxables) {
$associatedTaxables = [];
} else {
// remove existing weee associated taxables
foreach ($associatedTaxables as $iTaxable => $taxable) {
if ($taxable[CommonTaxCollector::KEY_ASSOCIATED_TAXABLE_TYPE] == self::ITEM_TYPE) {
unset($associatedTaxables[$iTaxable]);
}
}
}
foreach ($attributes as $key => $attribute) {
$title = $attribute->getName();
$baseValueExclTax = $baseValueInclTax = $attribute->getAmount();
$valueExclTax = $valueInclTax = $this->priceCurrency->round($this->priceCurrency->convert($baseValueExclTax, $this->_store));
$rowValueInclTax = $rowValueExclTax = $this->priceCurrency->round($valueInclTax * $item->getTotalQty());
$baseRowValueInclTax = $this->priceCurrency->round($baseValueInclTax * $item->getTotalQty());
$baseRowValueExclTax = $baseRowValueInclTax;
$totalValueInclTax += $valueInclTax;
$baseTotalValueInclTax += $baseValueInclTax;
$totalRowValueInclTax += $rowValueInclTax;
$baseTotalRowValueInclTax += $baseRowValueInclTax;
$totalValueExclTax += $valueExclTax;
$baseTotalValueExclTax += $baseValueExclTax;
$totalRowValueExclTax += $rowValueExclTax;
$baseTotalRowValueExclTax += $baseRowValueExclTax;
$productTaxes[] = ['title' => $title, 'base_amount' => $baseValueExclTax, 'amount' => $valueExclTax, 'row_amount' => $rowValueExclTax, 'base_row_amount' => $baseRowValueExclTax, 'base_amount_incl_tax' => $baseValueInclTax, 'amount_incl_tax' => $valueInclTax, 'row_amount_incl_tax' => $rowValueInclTax, 'base_row_amount_incl_tax' => $baseRowValueInclTax];
if ($this->weeeData->isTaxable($this->_store)) {
$weeeItemCode = self::ITEM_CODE_WEEE_PREFIX . $this->getNextIncrement();
$weeeItemCode .= '-' . $title;
$associatedTaxables[] = [CommonTaxCollector::KEY_ASSOCIATED_TAXABLE_TYPE => self::ITEM_TYPE, CommonTaxCollector::KEY_ASSOCIATED_TAXABLE_CODE => $weeeItemCode, CommonTaxCollector::KEY_ASSOCIATED_TAXABLE_UNIT_PRICE => $valueExclTax, CommonTaxCollector::KEY_ASSOCIATED_TAXABLE_BASE_UNIT_PRICE => $baseValueExclTax, CommonTaxCollector::KEY_ASSOCIATED_TAXABLE_QUANTITY => $item->getTotalQty(), CommonTaxCollector::KEY_ASSOCIATED_TAXABLE_TAX_CLASS_ID => $item->getProduct()->getTaxClassId()];
$this->weeeCodeToItemMap[$weeeItemCode] = $item;
}
}
$item->setAssociatedTaxables($associatedTaxables);
$item->setWeeeTaxAppliedAmount($totalValueExclTax)->setBaseWeeeTaxAppliedAmount($baseTotalValueExclTax)->setWeeeTaxAppliedRowAmount($totalRowValueExclTax)->setBaseWeeeTaxAppliedRowAmnt($baseTotalRowValueExclTax);
$item->setWeeeTaxAppliedAmountInclTax($totalValueInclTax)->setBaseWeeeTaxAppliedAmountInclTax($baseTotalValueInclTax)->setWeeeTaxAppliedRowAmountInclTax($totalRowValueInclTax)->setBaseWeeeTaxAppliedRowAmntInclTax($baseTotalRowValueInclTax);
$this->processTotalAmount($total, $totalRowValueExclTax, $baseTotalRowValueExclTax, $totalRowValueInclTax, $baseTotalRowValueInclTax);
$this->weeeData->setApplied($item, array_merge($this->weeeData->getApplied($item), $productTaxes));
}
示例2: getStoreConfig
/**
* @param \Magento\Store\Model\Store $store
* @return \Magento\Store\Api\Data\StoreConfigInterface
*/
protected function getStoreConfig($store)
{
/** @var \Magento\Store\Model\Data\StoreConfig $storeConfig */
$storeConfig = $this->storeConfigFactory->create();
$storeConfig->setId($store->getId())->setCode($store->getCode())->setWebsiteId($store->getWebsiteId());
foreach ($this->configPaths as $methodName => $configPath) {
$configValue = $this->scopeConfig->getValue($configPath, \Magento\Store\Model\ScopeInterface::SCOPE_STORES, $store->getCode());
$storeConfig->{$methodName}($configValue);
}
$storeConfig->setBaseUrl($store->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_WEB, false));
$storeConfig->setSecureBaseUrl($store->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_WEB, true));
$storeConfig->setBaseLinkUrl($store->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_LINK, false));
$storeConfig->setSecureBaseLinkUrl($store->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_LINK, true));
$storeConfig->setBaseStaticUrl($store->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_STATIC, false));
$storeConfig->setSecureBaseStaticUrl($store->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_STATIC, true));
$storeConfig->setBaseMediaUrl($store->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA, false));
$storeConfig->setSecureBaseMediaUrl($store->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA, true));
return $storeConfig;
}
示例3: _customerIsInStore
/**
* Check whether we need to create new customer (for another website) during order creation
*
* @param \Magento\Store\Model\Store $store
* @return bool
*/
protected function _customerIsInStore($store)
{
$customerId = (int) $this->getSession()->getCustomerId();
$customer = $this->customerRepository->getById($customerId);
return $customer->getWebsiteId() == $store->getWebsiteId() || $this->accountManagement->isCustomerInStore($customer->getWebsiteId(), $store->getId());
}
示例4: getAllProducts
/**
* Get select for all products
*
* @param \Magento\Store\Model\Store $store
* @return \Magento\Framework\DB\Select
*/
protected function getAllProducts(\Magento\Store\Model\Store $store)
{
if (!isset($this->productsSelects[$store->getId()])) {
$statusAttributeId = $this->config->getAttribute(\Magento\Catalog\Model\Product::ENTITY, 'status')->getId();
$visibilityAttributeId = $this->config->getAttribute(\Magento\Catalog\Model\Product::ENTITY, 'visibility')->getId();
$metadata = $this->getMetadataPool()->getMetadata(\Magento\Catalog\Api\Data\ProductInterface::class);
$linkField = $metadata->getLinkField();
$select = $this->connection->select()->from(['cp' => $this->getTable('catalog_product_entity')], [])->joinInner(['cpw' => $this->getTable('catalog_product_website')], 'cpw.product_id = cp.entity_id', [])->joinInner(['cpsd' => $this->getTable('catalog_product_entity_int')], 'cpsd.' . $linkField . ' = cp.' . $linkField . ' AND cpsd.store_id = 0' . ' AND cpsd.attribute_id = ' . $statusAttributeId, [])->joinLeft(['cpss' => $this->getTable('catalog_product_entity_int')], 'cpss.' . $linkField . ' = cp.' . $linkField . ' AND cpss.attribute_id = cpsd.attribute_id' . ' AND cpss.store_id = ' . $store->getId(), [])->joinInner(['cpvd' => $this->getTable('catalog_product_entity_int')], 'cpvd.' . $linkField . ' = cp.' . $linkField . ' AND cpvd.store_id = 0' . ' AND cpvd.attribute_id = ' . $visibilityAttributeId, [])->joinLeft(['cpvs' => $this->getTable('catalog_product_entity_int')], 'cpvs.' . $linkField . ' = cp.' . $linkField . ' AND cpvs.attribute_id = cpvd.attribute_id ' . ' AND cpvs.store_id = ' . $store->getId(), [])->joinLeft(['ccp' => $this->getTable('catalog_category_product')], 'ccp.product_id = cp.entity_id', [])->where('cpw.website_id = ?', $store->getWebsiteId())->where($this->connection->getIfNullSql('cpss.value', 'cpsd.value') . ' = ?', \Magento\Catalog\Model\Product\Attribute\Source\Status::STATUS_ENABLED)->where($this->connection->getIfNullSql('cpvs.value', 'cpvd.value') . ' IN (?)', [\Magento\Catalog\Model\Product\Visibility::VISIBILITY_IN_CATALOG, \Magento\Catalog\Model\Product\Visibility::VISIBILITY_IN_SEARCH, \Magento\Catalog\Model\Product\Visibility::VISIBILITY_BOTH])->group('cp.entity_id')->columns(['category_id' => new \Zend_Db_Expr($store->getRootCategoryId()), 'product_id' => 'cp.entity_id', 'position' => new \Zend_Db_Expr($this->connection->getCheckSql('ccp.product_id IS NOT NULL', 'ccp.position', '0')), 'is_parent' => new \Zend_Db_Expr($this->connection->getCheckSql('ccp.product_id IS NOT NULL', '1', '0')), 'store_id' => new \Zend_Db_Expr($store->getId()), 'visibility' => new \Zend_Db_Expr($this->connection->getIfNullSql('cpvs.value', 'cpvd.value'))]);
$this->productsSelects[$store->getId()] = $select;
}
return $this->productsSelects[$store->getId()];
}
示例5: _customerIsInStore
/**
* Check whether we need to create new customer (for another website) during order creation
*
* @param \Magento\Store\Model\Store $store
* @return bool
*/
protected function _customerIsInStore($store)
{
$customerId = (int) $this->getSession()->getCustomerId();
$customerData = $this->_customerAccountService->getCustomer($customerId);
return $customerData->getWebsiteId() == $store->getWebsiteId() || $this->_customerAccountService->isCustomerInStore($customerData->getWebsiteId(), $store->getId());
}
示例6: getWebsiteId
/**
* {@inheritdoc}
*/
public function getWebsiteId()
{
$pluginInfo = $this->pluginList->getNext($this->subjectType, 'getWebsiteId');
if (!$pluginInfo) {
return parent::getWebsiteId();
} else {
return $this->___callPlugins('getWebsiteId', func_get_args(), $pluginInfo);
}
}
示例7: _process
/**
* Calculate item fixed tax and prepare information for discount and regular taxation
*
* @param \Magento\Sales\Model\Quote\Address $address
* @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
* @return void|$this
*/
protected function _process(\Magento\Sales\Model\Quote\Address $address, $item)
{
if (!$this->_weeeData->isEnabled($this->_store)) {
return $this;
}
$attributes = $this->_weeeData->getProductWeeeAttributes($item->getProduct(), $address, $address->getQuote()->getBillingAddress(), $this->_store->getWebsiteId());
$applied = array();
$productTaxes = array();
$defaultRateRequest = $this->_calculator->getRateOriginRequest($this->_store);
$rateRequest = $this->_calculator->getRateRequest($address, $address->getQuote()->getBillingAddress(), $address->getQuote()->getCustomerTaxClassId(), $this->_store);
$totalValueInclTax = 0;
$baseTotalValueInclTax = 0;
$totalRowValueInclTax = 0;
$baseTotalRowValueInclTax = 0;
$totalValueExclTax = 0;
$baseTotalValueExclTax = 0;
$totalRowValueExclTax = 0;
$baseTotalRowValueExclTax = 0;
$priceIncludesTax = $this->_taxData->priceIncludesTax($this->_store);
$calculationAlgorithm = $this->_taxData->getCalculationAgorithm($this->_store);
$defaultPercent = $currentPercent = 0;
//when FPT is not taxable
foreach ($attributes as $key => $attribute) {
$title = $attribute->getName();
$baseValue = $attribute->getAmount();
$value = $this->_store->convertPrice($baseValue);
$value = $this->_store->roundPrice($value);
if ($this->_weeeData->isTaxable($this->_store)) {
$defaultPercent = $this->_calculator->getRate($defaultRateRequest->setProductClassId($item->getProduct()->getTaxClassId()));
$currentPercent = $this->_calculator->getRate($rateRequest->setProductClassId($item->getProduct()->getTaxClassId()));
}
if ($priceIncludesTax) {
//Make sure that price including tax is rounded first
$baseValueInclTax = $baseValue / (100 + $defaultPercent) * (100 + $currentPercent);
$baseValueInclTax = $this->_store->roundPrice($baseValueInclTax);
$valueInclTax = $value / (100 + $defaultPercent) * (100 + $currentPercent);
$valueInclTax = $this->_store->roundPrice($valueInclTax);
$baseValueExclTax = $baseValueInclTax / (100 + $currentPercent) * 100;
$valueExclTax = $valueInclTax / (100 + $currentPercent) * 100;
if ($calculationAlgorithm == Calculation::CALC_UNIT_BASE) {
$baseValueExclTax = $this->_store->roundPrice($baseValueExclTax);
$valueExclTax = $this->_store->roundPrice($valueExclTax);
}
} else {
$valueExclTax = $value;
$baseValueExclTax = $baseValue;
$valueInclTax = $valueExclTax * (100 + $currentPercent) / 100;
$baseValueInclTax = $baseValueExclTax * (100 + $currentPercent) / 100;
if ($calculationAlgorithm == Calculation::CALC_UNIT_BASE) {
$baseValueInclTax = $this->_store->roundPrice($baseValueInclTax);
$valueInclTax = $this->_store->roundPrice($valueInclTax);
}
}
$rowValueInclTax = $this->_store->roundPrice($valueInclTax * $item->getTotalQty());
$baseRowValueInclTax = $this->_store->roundPrice($baseValueInclTax * $item->getTotalQty());
$rowValueExclTax = $this->_store->roundPrice($valueExclTax * $item->getTotalQty());
$baseRowValueExclTax = $this->_store->roundPrice($baseValueExclTax * $item->getTotalQty());
//Now, round the unit price just in case
$valueExclTax = $this->_store->roundPrice($valueExclTax);
$baseValueExclTax = $this->_store->roundPrice($baseValueExclTax);
$valueInclTax = $this->_store->roundPrice($valueInclTax);
$baseValueInclTax = $this->_store->roundPrice($baseValueInclTax);
$totalValueInclTax += $valueInclTax;
$baseTotalValueInclTax += $baseValueInclTax;
$totalRowValueInclTax += $rowValueInclTax;
$baseTotalRowValueInclTax += $baseRowValueInclTax;
$totalValueExclTax += $valueExclTax;
$baseTotalValueExclTax += $baseValueExclTax;
$totalRowValueExclTax += $rowValueExclTax;
$baseTotalRowValueExclTax += $baseRowValueExclTax;
$productTaxes[] = array('title' => $title, 'base_amount' => $baseValueExclTax, 'amount' => $valueExclTax, 'row_amount' => $rowValueExclTax, 'base_row_amount' => $baseRowValueExclTax, 'base_amount_incl_tax' => $baseValueInclTax, 'amount_incl_tax' => $valueInclTax, 'row_amount_incl_tax' => $rowValueInclTax, 'base_row_amount_incl_tax' => $baseRowValueInclTax);
//This include FPT as applied tax, since tax on FPT is calculated separately, we use value excluding tax
$applied[] = array('id' => $attribute->getCode(), 'percent' => null, 'hidden' => $this->_weeeData->includeInSubtotal($this->_store), 'rates' => array(array('base_real_amount' => $baseRowValueExclTax, 'base_amount' => $baseRowValueExclTax, 'amount' => $rowValueExclTax, 'code' => $attribute->getCode(), 'title' => $title, 'percent' => null, 'position' => 1, 'priority' => -1000 + $key)));
}
$item->setWeeeTaxAppliedAmount($totalValueExclTax)->setBaseWeeeTaxAppliedAmount($baseTotalValueExclTax)->setWeeeTaxAppliedRowAmount($totalRowValueExclTax)->setBaseWeeeTaxAppliedRowAmnt($baseTotalRowValueExclTax);
$item->setWeeeTaxAppliedAmountInclTax($totalValueInclTax)->setBaseWeeeTaxAppliedAmountInclTax($baseTotalValueInclTax)->setWeeeTaxAppliedRowAmountInclTax($totalRowValueInclTax)->setBaseWeeeTaxAppliedRowAmntInclTax($baseTotalRowValueInclTax);
if ($priceIncludesTax) {
$this->_processTaxSettings($item, $totalValueInclTax, $baseTotalValueInclTax, $totalRowValueInclTax, $baseTotalRowValueInclTax);
} else {
$this->_processTaxSettings($item, $totalValueExclTax, $baseTotalValueExclTax, $totalRowValueExclTax, $baseTotalRowValueExclTax);
}
$this->_processTotalAmount($address, $totalRowValueExclTax, $baseTotalRowValueExclTax, $totalRowValueInclTax, $baseTotalRowValueInclTax);
$this->_weeeData->setApplied($item, array_merge($this->_weeeData->getApplied($item), $productTaxes));
//Update the applied taxes for the quote
if ($applied) {
$this->_saveAppliedTaxes($address, $applied, $item->getWeeeTaxAppliedAmount(), $item->getBaseWeeeTaxAppliedAmount(), null);
}
}