/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Coordinates::find()->select(['GAID', 'FDATE' => 'max(FDATE)', 'longitude', 'latitude'])->groupBy('GAID'); $dataProvider = new ActiveDataProvider(['query' => $query, 'sort' => ['defaultOrder' => ['FDATE' => SORT_DESC]]]); $this->load($params); if (!$this->validate()) { return $dataProvider; } $query->andFilterWhere(['GAID' => $this->GAID]); return $dataProvider; }