![]() 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-reports/Block/Adminhtml/Sales/Tax/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Reports\Block\Adminhtml\Sales\Tax; /** * Adminhtml tax report grid block * * @author Magento Core Team <[email protected]> * @SuppressWarnings(PHPMD.DepthOfInheritance) */ class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid { /** * GROUP BY criteria * * @var string */ protected $_columnGroupBy = 'period'; /** * @var \Magento\Sales\Model\Order\ConfigFactory */ protected $_configFactory; /** * Constructor * * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Reports\Model\ResourceModel\Report\Collection\Factory $resourceFactory * @param \Magento\Reports\Model\Grouped\CollectionFactory $collectionFactory * @param \Magento\Reports\Helper\Data $reportsData * @param \Magento\Sales\Model\Order\ConfigFactory $configFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Backend\Helper\Data $backendHelper, \Magento\Reports\Model\ResourceModel\Report\Collection\Factory $resourceFactory, \Magento\Reports\Model\Grouped\CollectionFactory $collectionFactory, \Magento\Reports\Helper\Data $reportsData, \Magento\Sales\Model\Order\ConfigFactory $configFactory, array $data = [] ) { $this->_configFactory = $configFactory; parent::__construct($context, $backendHelper, $resourceFactory, $collectionFactory, $reportsData, $data); } /** * @inheritdoc * * @codeCoverageIgnore */ protected function _construct() { parent::_construct(); $this->setCountTotals(true); $this->setCountSubTotals(true); } /** * @inheritdoc */ public function getResourceCollectionName() { return $this->getFilterData()->getData('report_type') == 'updated_at_order' ? \Magento\Tax\Model\ResourceModel\Report\Updatedat\Collection::class : \Magento\Tax\Model\ResourceModel\Report\Collection::class; } /** * @inheritdoc */ protected function _prepareColumns() { $this->addColumn( 'period', [ 'header' => __('Interval'), 'index' => 'period', 'sortable' => false, 'period_type' => $this->getPeriodType(), 'renderer' => \Magento\Reports\Block\Adminhtml\Sales\Grid\Column\Renderer\Date::class, 'totals_label' => __('Total'), 'subtotals_label' => __('Subtotal'), 'html_decorators' => ['nobr'], 'header_css_class' => 'col-period', 'column_css_class' => 'col-period' ] ); $this->addColumn( 'code', [ 'header' => __('Tax'), 'index' => 'code', 'type' => 'string', 'sortable' => false, 'header_css_class' => 'col-tax-name', 'column_css_class' => 'col-tax-name' ] ); $this->addColumn( 'percent', [ 'header' => __('Rate'), 'index' => 'percent', 'type' => 'number', 'sortable' => false, 'header_css_class' => 'col-rate', 'column_css_class' => 'col-rate' ] ); $this->addColumn( 'orders_count', [ 'header' => __('Orders'), 'index' => 'orders_count', 'type' => 'number', 'sortable' => false, 'header_css_class' => 'col-qty', 'column_css_class' => 'col-qty' ] ); $this->setStoreIds($this->_getStoreIds()); $currencyCode = $this->getCurrentCurrencyCode(); $this->addColumn( 'tax_base_amount_sum', [ 'header' => __('Tax Amount'), 'type' => 'currency', 'currency_code' => $currencyCode, 'index' => 'tax_base_amount_sum', 'total' => 'sum', 'sortable' => false, 'rate' => $this->getRate($currencyCode), 'header_css_class' => 'col-tax-amount', 'column_css_class' => 'col-tax-amount' ] ); $this->addExportType('*/*/exportTaxCsv', __('CSV')); $this->addExportType('*/*/exportTaxExcel', __('Excel XML')); return parent::_prepareColumns(); } /** * Preparing collection. Filter canceled statuses for orders in taxes * * @return $this * @SuppressWarnings(PHPMD.UnusedLocalVariable) */ protected function _prepareCollection() { $filterData = $this->getFilterData(); if (!$filterData->hasData('order_statuses')) { $orderConfig = $this->_configFactory->create(); $statusValues = []; $canceledStatuses = $orderConfig->getStateStatuses(\Magento\Sales\Model\Order::STATE_CANCELED); foreach ($orderConfig->getStatuses() as $code => $label) { if (!isset($canceledStatuses[$code])) { $statusValues[] = $code; } } $filterData->setOrderStatuses($statusValues); } return parent::_prepareCollection(); } }