/** * Apply filters to subscriber * * @param ReportEvents\ReportEvent $event */ public function applySubscriberReportFilters(ReportEvents\ReportEvent $event) { foreach ($event->getQueryBuilders() as $queryBuilder) { foreach ($event->getFilters() as $filter) { if ($filter instanceof ModifyQueryInterface) { $filter->apply($queryBuilder); } } } }
/** * Builds the Sales reports. * * @param ReportEvents\ReportEvent $event */ public function buildSalesReport(ReportEvents\ReportEvent $event) { foreach ($this->get('commerce.report.sales-data') as $query) { if ($query instanceof FilterableInterface) { $query->setFilters($event->getFilters()); } $event->addQueryBuilder($query->getQueryBuilder()); } foreach ($event->getQueryBuilders() as $queryBuilder) { foreach ($event->getFilters() as $filter) { if ($filter instanceof ModifyQueryInterface) { $filter->apply($queryBuilder); } } } }