44 parent::__construct($context);
57 public function getIntervals($from, $to, $period = self::REPORT_PERIOD_TYPE_DAY)
64 $dateStart = new \DateTime($from);
65 $dateEnd = new \DateTime($to);
66 while ($dateStart->diff($dateEnd)->invert == 0) {
69 $intervals[] = $dateStart->format(
'Y-m-d');
70 $dateStart->add(
new \DateInterval(
'P1D'));
73 $intervals[] = $dateStart->format(
'Y-m');
74 $dateStart->add(
new \DateInterval(
'P1M'));
77 $intervals[] = $dateStart->format(
'Y');
78 $dateStart->add(
new \DateInterval(
'P1Y'));
96 $intervals = $this->
getIntervals($from, $to, $periodType);
98 foreach ($intervals as $interval) {
99 $item = $this->_itemFactory->create();
100 $item->setPeriod($interval);
const REPORT_PERIOD_TYPE_YEAR
__construct(\Magento\Framework\App\Helper\Context $context, \Magento\Reports\Model\ItemFactory $itemFactory)
const REPORT_PERIOD_TYPE_DAY
prepareIntervalsCollection($collection, $from, $to, $periodType=self::REPORT_PERIOD_TYPE_DAY)
const REPORT_PERIOD_TYPE_MONTH
getIntervals($from, $to, $period=self::REPORT_PERIOD_TYPE_DAY)