public function actionIndex()
 {
     $formatter = Yii::$app->formatter;
     $query = FinanceRecord::find()->today()->exceptCancelled();
     $data = $query->asArray()->orderBy(['ID' => SORT_ASC, 'EventTime' => SORT_ASC])->all();
     $usersPerHour = [];
     if (count($data)) {
         /** @var FinanceRecord $finance */
         $usersPerHourData = ArrayHelper::map($data, function ($finance) use($formatter) {
             return $finance['ID'];
         }, function ($finance) {
             return $finance;
         }, function ($finance) use($formatter) {
             return $formatter->asDate($finance['EventTime'], 'php:H:00');
         });
         if (count($usersPerHourData) > 0) {
             $usersPerHour = ['labels' => array_keys($usersPerHourData), 'datasets' => [['label' => 'Количество уникальных посетителей в час', 'fillColor' => "rgba(250,100,0,0.8)", 'pointColor' => "rgba(220,220,220,1)", 'pointStrokeColor' => "#0f0", 'data' => []]]];
             foreach ($usersPerHourData as $day => $hFin) {
                 $objectUses = [];
                 foreach ($hFin as $id => $f) {
                     if ($f['ClassID'] == 1) {
                         $objectUses[] = $f['ContractorID'];
                     }
                 }
                 $usersPerHour['datasets'][0]['data'][] = count(array_unique($objectUses));
                 unset($objectUses);
             }
         }
     }
     $dataProvider = (new ActionsSearch(['attributes' => ['deleted' => 0]]))->search(Yii::$app->request->queryParams);
     return $this->render('index', ['usersPerHour' => $usersPerHour, 'dataProvider' => $dataProvider, 'cashBoxCash' => \common\models\cf\FinanceRecord::todayStats()]);
 }