public static function getData() { $rows = Promocion::find()->all(); $arrayData = array(); foreach ($rows as $row) { $row->imagenes = Promocion::getPromImagesById($row->id); $arrayData[$row->id] = $row->attributes + ['imagenes' => $row->imagenes]; } $jsonData = Json::encode($arrayData); return $jsonData; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Promocion::find(); $query->joinWith(['menu', 'sucursal']); $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } $query->andFilterWhere(['id' => $this->id, 'id_menu' => $this->id_menu, 'id_sucursal' => $this->id_sucursal, 'precio' => $this->precio, 'dia' => $this->dia, 'fecha_ini' => $this->fecha_ini, 'fecha_fin' => $this->fecha_fin, 'create_user' => $this->create_user, 'create_time' => $this->create_time, 'update_user' => $this->update_user, 'update_time' => $this->update_time]); $query->andFilterWhere(['like', 'descripcion', $this->descripcion])->andFilterWhere(['like', 'menu.nombre', $this->menu])->andFilterWhere(['like', 'sucursal.nombre', $this->sucursal]); return $dataProvider; }