public function searchLog($params) { $query = Event::find(); $dataProvider = new ActiveDataProvider(['query' => $query, 'sort' => ['defaultOrder' => ['created_at' => SORT_DESC]], 'pagination' => ['pageSize' => 5]]); if (!($this->load($params) && $this->validate())) { return $dataProvider; } $query->andFilterWhere(['id' => $this->id, 'paramint' => $this->paramint, 'paramfloat' => $this->paramfloat, 'paramdate' => $this->paramdate, 'paramdatetwo' => $this->paramdatetwo, 'paramdatethree' => $this->paramdatethree, 'paramdateint' => $this->paramdateint, 'mod_id' => $this->mod_id, 'created_at' => $this->created_at, 'updated_at' => $this->updated_at, 'deleted_at' => $this->deleted_at]); $query->andFilterWhere(['like', 'user', $this->user])->andFilterWhere(['like', 'action', $this->action])->andFilterWhere(['like', 'paramstring', $this->paramstring])->andFilterWhere(['like', 'paramtext', $this->paramtext])->andFilterWhere(['like', 'mod_table', $this->mod_table]); return $dataProvider; }
/** * function run * * @return mixed */ public function run() { $dataset = \app\modules\event\models\Event::find()->SELECT(['FROM_UNIXTIME(created_at, \'%H\' ) AS created_at', 'COUNT(created_at) AS mod_id'])->where('FROM_UNIXTIME(created_at, \'%Y%m%d\' ) = DATE_FORMAT(NOW(),\'%Y%m%d\')')->groupBy(['FROM_UNIXTIME(created_at, \'%H\' )'])->orderBy('created_at ASC')->limit(24)->all(); $labels = []; $values = []; foreach ($dataset as $data) { $labels[] = $data->created_at; $values[] = $data->mod_id; } return $this->render('@app/modules/templates/widgets/stats/views/_statistic', ['labels' => $labels, 'values' => $values]); }