![]() 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/cartforge.co/vendor/magento/module-sales/Model/ResourceModel/Order/Grid/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Sales\Model\ResourceModel\Order\Grid; use Magento\Framework\App\ObjectManager; use Magento\Framework\Data\Collection\Db\FetchStrategyInterface as FetchStrategy; use Magento\Framework\Data\Collection\EntityFactoryInterface as EntityFactory; use Magento\Framework\Event\ManagerInterface as EventManager; use Magento\Framework\Stdlib\DateTime\TimezoneInterface; use Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult; use Magento\Sales\Model\ResourceModel\Order; use Psr\Log\LoggerInterface as Logger; /** * Order grid collection */ class Collection extends SearchResult { /** * @var TimezoneInterface */ private $timeZone; /** * Initialize dependencies. * * @param EntityFactory $entityFactory * @param Logger $logger * @param FetchStrategy $fetchStrategy * @param EventManager $eventManager * @param string $mainTable * @param string $resourceModel * @param TimezoneInterface|null $timeZone */ public function __construct( EntityFactory $entityFactory, Logger $logger, FetchStrategy $fetchStrategy, EventManager $eventManager, $mainTable = 'sales_order_grid', $resourceModel = Order::class, TimezoneInterface $timeZone = null ) { parent::__construct($entityFactory, $logger, $fetchStrategy, $eventManager, $mainTable, $resourceModel); $this->timeZone = $timeZone ?: ObjectManager::getInstance() ->get(TimezoneInterface::class); } /** * @inheritdoc */ protected function _initSelect() { parent::_initSelect(); $tableDescription = $this->getConnection()->describeTable($this->getMainTable()); foreach ($tableDescription as $columnInfo) { $this->addFilterToMap($columnInfo['COLUMN_NAME'], 'main_table.' . $columnInfo['COLUMN_NAME']); } return $this; } /** * @inheritDoc */ public function addFieldToFilter($field, $condition = null) { if ($field === 'created_at') { if (is_array($condition)) { foreach ($condition as $key => $value) { $condition[$key] = $this->timeZone->convertConfigTimeToUtc($value); } } } return parent::addFieldToFilter($field, $condition); } }