当前位置: 首页>>代码示例>>PHP>>正文


PHP Address::isVatValidationEnabled方法代码示例

本文整理汇总了PHP中Magento\Customer\Helper\Address::isVatValidationEnabled方法的典型用法代码示例。如果您正苦于以下问题:PHP Address::isVatValidationEnabled方法的具体用法?PHP Address::isVatValidationEnabled怎么用?PHP Address::isVatValidationEnabled使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Magento\Customer\Helper\Address的用法示例。


在下文中一共展示了Address::isVatValidationEnabled方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: isEnabled

 /**
  * Check whether VAT ID validation is enabled
  *
  * @param \Magento\Quote\Model\Quote\Address $quoteAddress
  * @param \Magento\Store\Model\Store|int $store
  * @return bool
  */
 public function isEnabled(\Magento\Quote\Model\Quote\Address $quoteAddress, $store)
 {
     $configAddressType = $this->customerAddress->getTaxCalculationAddressType($store);
     // When VAT is based on billing address then Magento have to handle only billing addresses
     $additionalBillingAddressCondition = $configAddressType == \Magento\Customer\Model\Address\AbstractAddress::TYPE_BILLING ? $configAddressType != $quoteAddress->getAddressType() : false;
     // Handle only addresses that corresponds to VAT configuration
     if (!$this->customerAddress->isVatValidationEnabled($store) || $additionalBillingAddressCondition) {
         return false;
     }
     return true;
 }
开发者ID:shabbirvividads,项目名称:magento2,代码行数:18,代码来源:VatValidator.php

示例2: afterAddressSave

 /**
  * Address after save event handler
  *
  * @param \Magento\Framework\Event\Observer $observer
  * @return void
  * @SuppressWarnings(PHPMD.CyclomaticComplexity)
  */
 public function afterAddressSave($observer)
 {
     /** @var $customerAddress Address */
     $customerAddress = $observer->getCustomerAddress();
     $customer = $customerAddress->getCustomer();
     if (!$this->_customerAddress->isVatValidationEnabled($customer->getStore()) || $this->_coreRegistry->registry(self::VIV_PROCESSED_FLAG) || !$this->_canProcessAddress($customerAddress)) {
         return;
     }
     try {
         $this->_coreRegistry->register(self::VIV_PROCESSED_FLAG, true);
         if ($customerAddress->getVatId() == '' || !$this->_customerVat->isCountryInEU($customerAddress->getCountry())) {
             $defaultGroupId = $this->_groupManagement->getDefaultGroup($customer->getStore())->getId();
             if (!$customer->getDisableAutoGroupChange() && $customer->getGroupId() != $defaultGroupId) {
                 $customer->setGroupId($defaultGroupId);
                 $customer->save();
             }
         } else {
             $result = $this->_customerVat->checkVatNumber($customerAddress->getCountryId(), $customerAddress->getVatId());
             $newGroupId = $this->_customerVat->getCustomerGroupIdBasedOnVatNumber($customerAddress->getCountryId(), $result, $customer->getStore());
             if (!$customer->getDisableAutoGroupChange() && $customer->getGroupId() != $newGroupId) {
                 $customer->setGroupId($newGroupId);
                 $customer->save();
             }
             $customerAddress->setVatValidationResult($result);
         }
     } catch (\Exception $e) {
         $this->_coreRegistry->register(self::VIV_PROCESSED_FLAG, false, true);
     }
 }
开发者ID:shabbirvividads,项目名称:magento2,代码行数:36,代码来源:Observer.php

示例3: getSuccessMessage

 /**
  * Retrieve success message
  *
  * @return string
  */
 protected function getSuccessMessage()
 {
     if ($this->addressHelper->isVatValidationEnabled()) {
         if ($this->addressHelper->getTaxCalculationAddressType() == Address::TYPE_SHIPPING) {
             // @codingStandardsIgnoreStart
             $message = __('If you are a registered VAT customer, please <a href="%1">click here</a> to enter your shipping address for proper VAT calculation.', $this->urlModel->getUrl('customer/address/edit'));
             // @codingStandardsIgnoreEnd
         } else {
             // @codingStandardsIgnoreStart
             $message = __('If you are a registered VAT customer, please <a href="%1">click here</a> to enter your billing address for proper VAT calculation.', $this->urlModel->getUrl('customer/address/edit'));
             // @codingStandardsIgnoreEnd
         }
     } else {
         $message = __('Thank you for registering with %1.', $this->storeManager->getStore()->getFrontendName());
     }
     return $message;
 }
开发者ID:whoople,项目名称:magento2-testing,代码行数:22,代码来源:CreatePost.php

示例4: execute

 /**
  * Address after save event handler
  *
  * @param \Magento\Framework\Event\Observer $observer
  * @return void
  * @SuppressWarnings(PHPMD.CyclomaticComplexity)
  */
 public function execute(\Magento\Framework\Event\Observer $observer)
 {
     /** @var $customerAddress Address */
     $customerAddress = $observer->getCustomerAddress();
     $customer = $customerAddress->getCustomer();
     if (!$this->_customerAddress->isVatValidationEnabled($customer->getStore()) || $this->_coreRegistry->registry(self::VIV_PROCESSED_FLAG) || !$this->_canProcessAddress($customerAddress)) {
         return;
     }
     try {
         $this->_coreRegistry->register(self::VIV_PROCESSED_FLAG, true);
         if ($customerAddress->getVatId() == '' || !$this->_customerVat->isCountryInEU($customerAddress->getCountry())) {
             $defaultGroupId = $this->_groupManagement->getDefaultGroup($customer->getStore())->getId();
             if (!$customer->getDisableAutoGroupChange() && $customer->getGroupId() != $defaultGroupId) {
                 $customer->setGroupId($defaultGroupId);
                 $customer->save();
                 $this->customerSession->setCustomerGroupId($defaultGroupId);
             }
         } else {
             $result = $this->_customerVat->checkVatNumber($customerAddress->getCountryId(), $customerAddress->getVatId());
             $newGroupId = $this->_customerVat->getCustomerGroupIdBasedOnVatNumber($customerAddress->getCountryId(), $result, $customer->getStore());
             if (!$customer->getDisableAutoGroupChange() && $customer->getGroupId() != $newGroupId) {
                 $customer->setGroupId($newGroupId);
                 $customer->save();
                 $this->customerSession->setCustomerGroupId($newGroupId);
             }
             $customerAddress->setVatValidationResult($result);
             if ($this->appState->getAreaCode() == Area::AREA_FRONTEND) {
                 if ($result->getIsValid()) {
                     $this->addValidMessage($customerAddress, $result);
                 } elseif ($result->getRequestSuccess()) {
                     $this->addInvalidMessage($customerAddress);
                 } else {
                     $this->addErrorMessage($customerAddress);
                 }
             }
         }
     } catch (\Exception $e) {
         $this->_coreRegistry->register(self::VIV_PROCESSED_FLAG, false, true);
     }
 }
开发者ID:Doability,项目名称:magento2dev,代码行数:47,代码来源:AfterAddressSaveObserver.php

示例5: _isVatValidationEnabled

 /**
  * Check whether VAT ID validation is enabled
  *
  * @param \Magento\Store\Model\Store|string|int $store
  * @return bool
  */
 protected function _isVatValidationEnabled($store = null)
 {
     return $this->_addressHelper->isVatValidationEnabled($store);
 }
开发者ID:aiesh,项目名称:magento2,代码行数:10,代码来源:Account.php

示例6: testIsVatValidationEnabled

 /**
  * @param $store
  * @param $result
  * @dataProvider getVatValidationEnabledDataProvider
  */
 public function testIsVatValidationEnabled($store, $result)
 {
     $this->scopeConfig->expects($this->once())->method('getValue')->with(\Magento\Customer\Helper\Address::XML_PATH_VAT_VALIDATION_ENABLED, \Magento\Store\Model\ScopeInterface::SCOPE_STORE, $store)->will($this->returnValue($result));
     $this->assertEquals($result, $this->helper->isVatValidationEnabled($store));
 }
开发者ID:,项目名称:,代码行数:10,代码来源:


注:本文中的Magento\Customer\Helper\Address::isVatValidationEnabled方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。