![]() 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/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Sales\Model\ResourceModel; use Magento\Sales\Model\ResourceModel\Report\Bestsellers as BestsellersReport; /** * Sales Mysql resource helper model */ class Helper extends \Magento\Framework\DB\Helper implements HelperInterface { /** * @var \Magento\Reports\Model\ResourceModel\Helper */ protected $_reportsResourceHelper; /** * @param \Magento\Framework\App\ResourceConnection $resource * @param \Magento\Reports\Model\ResourceModel\Helper $reportsResourceHelper * @param string $modulePrefix */ public function __construct( \Magento\Framework\App\ResourceConnection $resource, \Magento\Reports\Model\ResourceModel\Helper $reportsResourceHelper, $modulePrefix = 'sales' ) { parent::__construct($resource, $modulePrefix); $this->_reportsResourceHelper = $reportsResourceHelper; } /** * Update rating position * * @param string $aggregation One of BestsellersReport::AGGREGATION_XXX constants * @param array $aggregationAliases * @param string $mainTable * @param string $aggregationTable * @return $this */ public function getBestsellersReportUpdateRatingPos( $aggregation, $aggregationAliases, $mainTable, $aggregationTable ) { $connection = $this->_resource->getConnection('sales'); if ($aggregation == $aggregationAliases['monthly']) { $this->_reportsResourceHelper->updateReportRatingPos( $connection, 'month', 'qty_ordered', $mainTable, $aggregationTable ); } elseif ($aggregation == $aggregationAliases['yearly']) { $this->_reportsResourceHelper->updateReportRatingPos( $connection, 'year', 'qty_ordered', $mainTable, $aggregationTable ); } else { $this->_reportsResourceHelper->updateReportRatingPos( $connection, 'day', 'qty_ordered', $mainTable, $aggregationTable ); } return $this; } }