/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Pecas::find(); $query->joinWith('preco'); $dataProvider = new ActiveDataProvider(['query' => $query]); $dataProvider->sort->attributes['preco.preco'] = ['asc' => ['precos.preco' => SORT_ASC], 'desc' => ['precos.preco' => SORT_DESC]]; $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]); $query->andFilterWhere(['categoria_id' => $this->categoria_id]); $query->andFilterWhere(['like', 'nome', $this->nome]); return $dataProvider; }
private function buscaPeca($peca, $loja) { $peca = $this->converte($peca); $loja = $this->converte($loja); $model = Pecas::find()->where(['nome' => $peca])->andWhere(['loja' => $loja])->one(); return $model; }