![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-catalog/Block/Adminhtml/Product/Edit/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit; use Magento\Customer\Helper\Session\CurrentCustomer; use Magento\Tax\Api\TaxCalculationInterface; use Magento\Tax\Model\TaxClass\Source\Product as ProductTaxClassSource; use Magento\Framework\App\ObjectManager; use Magento\Tax\Helper\Data as TaxHelper; class Js extends \Magento\Backend\Block\Template { /** * Core registry * * @var \Magento\Framework\Registry */ protected $coreRegistry = null; /** * @var TaxCalculationInterface */ protected $calculationService; /** * @var ProductTaxClassSource */ protected $productTaxClassSource; /** * Current customer * * @var CurrentCustomer */ protected $currentCustomer; /** * Json helper * * @var \Magento\Framework\Json\Helper\Data */ protected $jsonHelper; /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Framework\Registry $registry * @param CurrentCustomer $currentCustomer * @param \Magento\Framework\Json\Helper\Data $jsonHelper * @param TaxCalculationInterface $calculationService * @param ProductTaxClassSource $productTaxClassSource * @param array $data * @param TaxHelper|null $taxHelper */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Framework\Registry $registry, CurrentCustomer $currentCustomer, \Magento\Framework\Json\Helper\Data $jsonHelper, TaxCalculationInterface $calculationService, ProductTaxClassSource $productTaxClassSource, array $data = [], ?TaxHelper $taxHelper = null ) { $this->coreRegistry = $registry; $this->currentCustomer = $currentCustomer; $this->jsonHelper = $jsonHelper; $this->calculationService = $calculationService; $this->productTaxClassSource = $productTaxClassSource; $data['taxHelper'] = $taxHelper ?? ObjectManager::getInstance()->get(TaxHelper::class); parent::__construct($context, $data); } /** * Get currently edited product * * @return \Magento\Catalog\Model\Product */ public function getProduct() { return $this->coreRegistry->registry('current_product'); } /** * Get store object of currently edited product * * @return \Magento\Store\Model\Store */ public function getStore() { $product = $this->getProduct(); if ($product) { return $this->_storeManager->getStore($product->getStoreId()); } return $this->_storeManager->getStore(); } /** * Get all tax rates JSON for all product tax classes. * * @return string */ public function getAllRatesByProductClassJson() { $result = []; foreach ($this->productTaxClassSource->getAllOptions() as $productTaxClass) { $taxClassId = $productTaxClass['value']; $taxRate = $this->calculationService->getDefaultCalculatedRate( $taxClassId, $this->currentCustomer->getCustomerId(), $this->getStore()->getId() ); $result["value_{$taxClassId}"] = $taxRate; } return $this->jsonHelper->jsonEncode($result); } }