/**
  * @param Campaign $campaign
  * @return array
  */
 public function getSummarizedStatistic(Campaign $campaign)
 {
     $today = new \DateTime('now', new \DateTimeZone('UTC'));
     $qb = $this->_em->createQueryBuilder()->from('OroTrackingBundle:TrackingEvent', 'trackingEvent')->select(['trackingEvent.name', 'IDENTITY(trackingEvent.website) as websiteId', 'COUNT(trackingEvent.id) as visitCount', 'DATE(trackingEvent.loggedAt) as loggedAtDate'])->andWhere('trackingEvent.code = :trackingEventCode')->andWhere('DATE(trackingEvent.loggedAt) < DATE(:today)')->setParameter('trackingEventCode', $campaign->getCode())->setParameter('today', $today)->groupBy('trackingEvent.name, trackingEvent.website, loggedAtDate');
     if ($campaign->getReportRefreshDate()) {
         $qb->andWhere('DATE(trackingEvent.loggedAt) > DATE(:since)')->setParameter('since', $campaign->getReportRefreshDate());
     }
     return $qb->getQuery()->getArrayResult();
 }