public function addItem(Request $request, $id) { $compra = Compra::find($id); $item = CompraItem::create(['compra_id' => $compra->id, 'produto_id' => $request->item['produto_id'], 'quantidade' => $request->item['quantidade']]); $produto = Produto::find($item->produto->id); $dados = ['produto' => $produto->nome, 'referencia' => $produto->referencia, 'quantidade' => $request->item['quantidade'], 'compra_id' => $id, 'id' => $item->id]; return $dados; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Produto::find(); $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, 'grupo' => $this->grupo, 'qtde' => $this->qtde, 'prc_custo' => $this->prc_custo, 'prc_venda' => $this->prc_venda]); $query->andFilterWhere(['like', 'descricao', $this->descricao])->andFilterWhere(['like', 'foto', $this->foto]); return $dataProvider; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Produto::find(); $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(['preco' => $this->preco]); $query->andFilterWhere(['like', 'desc_tam', $this->desc_tam]); return $dataProvider; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Produto::find(); $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(['prod_codigo' => $this->prod_codigo, 'cate_codigo' => $this->cate_codigo, 'fabr_codigo' => $this->fabr_codigo, 'prod_valor' => $this->prod_valor, 'prod_estoque' => $this->prod_estoque]); $query->andFilterWhere(['like', 'prod_nome', $this->prod_nome]); return $dataProvider; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Produto::find(); $query->joinWith(['produtoCategoriaIdprodutoCategoria']); $dataProvider = new ActiveDataProvider(['query' => $query]); $dataProvider->sort->attributes['produtoCategoriaIdprodutoCategoria'] = ['asc' => ['produto_categoria.categoria' => SORT_ASC], 'desc' => ['produto_categoria.categoria' => SORT_DESC]]; //$this->load($params); if (!($this->load($params) && $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(['idproduto' => $this->idproduto, 'valor_venda' => $this->valor_venda, 'produto_categoria_idproduto_categoria' => $this->produto_categoria_idproduto_categoria]); $query->andFilterWhere(['like', 'status', $this->status])->andFilterWhere(['like', 'referencia', $this->referencia])->andFilterWhere(['like', 'modelo', $this->modelo])->andFilterWhere(['like', 'fabricante', $this->fabricante])->andFilterWhere(['like', 'produto_categoria.categoria', $this->produtoCategoriaIdprodutoCategoria]); return $dataProvider; }
public function store(Request $request, $id) { $compra = Compra::find($id); $saldo = []; foreach ($compra->compra_itens as $key => $it) { if ($it->quantidade > $request->item[$key]['quantidade']) { $saldo[$key]['produto_id'] = $it->produto_id; $saldo[$key]['preco_compra'] = $it->preco_compra; $saldo[$key]['quantidade'] = $it->quantidade - $request->item[$key]['quantidade']; } } $new_compra = new Compra(); if (count($saldo) > 0) { $new_compra->fornecedor_id = $compra->fornecedor_id; $new_compra->user_id = Auth::user()->id; $new_compra->data_compra = date('d/m/Y'); $new_compra->save(); foreach ($saldo as $s) { $it = new CompraItem(); $it->compra_id = $new_compra->id; $it->produto_id = $s['produto_id']; $it->quantidade = $s['quantidade']; $it->save(); } } DB::beginTransaction(); try { foreach ($request->item as $item) { $p = Produto::find($item['produto_id']); $p->estoque += $item['quantidade']; $p->save(); } $compra->status = 2; $compra->save(); DB::commit(); } catch (\Exception $e) { DB::rollBack(); throw $e; } if ($this->reenviaEmail($new_compra)) { flash()->success('Confirmação de compra efetuada com sucesso e e-mail com itens que faltaram reenviado para o fornecedor'); } else { flash()->success('Confirmação de compra efetuada com sucesso, mas email não foi enviado, envie o mesmo manualmente.'); } return redirect()->route('compras.index'); }
/** * Updates an existing Itempedido model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $idPedido * @param integer $idProduto * @return mixed */ public function actionUpdate($idPedido, $idProduto) { $model = $this->findModel($idPedido, $idProduto); $oldIdProduto = $idProduto; $oldQtdProdutoVenda = $model->quantidade; $pedidos = ArrayHelper::map(Pedido::find()->all(), 'idPedido', 'idPedido'); $produtosvenda = ArrayHelper::map(Produto::find()->where(['isInsumo' => 0])->all(), 'idProduto', 'nome'); if ($model->load(Yii::$app->request->post())) { $itempedido = Yii::$app->request->post()['Itempedido']; $produtoVenda = Produto::find()->where(['idProduto' => $itempedido['idProduto']])->one(); $model->total = $produtoVenda->valorVenda * $itempedido['quantidade']; $model->save(); $itempedido = Yii::$app->request->post()['Itempedido']; Insumos::atualizaQtdNoEstoqueUpdate($itempedido['idProduto'], $oldIdProduto, $itempedido['quantidade'], $oldQtdProdutoVenda); return $this->redirect(['view', 'idPedido' => $model->idPedido, 'idProduto' => $model->idProduto]); } else { return $this->render('update', ['model' => $model, 'produtosvenda' => $produtosvenda, 'pedidos' => $pedidos]); } }
<div class="pedido-create"> <h1><?php echo Html::encode($this->title); ?> </h1> <div class="pedido-form"> <?php $form = ActiveForm::begin(['enableClientValidation' => false]); ?> <?php $rows = \app\models\Produto::find()->all(); $data = ArrayHelper::map($rows, 'prod_codigo', 'prod_nome'); echo $form->field($model, 'prod_codigo')->dropDownList($data, ['prompt' => 'Selecione um produto']); ?> <?php echo $form->field($model, 'pepr_quantidade')->textInput(['maxlength' => true]); ?> <div class="form-group"> <?php echo Html::submitButton($model->isNewRecord ? 'Adicionar' : 'Alterar', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']); ?> </div>
/** * Updates an existing Compra model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id * @return mixed */ public function actionUpdate($id) { $modelCompra = $this->findModel($id); $conta = Conta::findOne($modelCompra->idconta); $mensagem = ""; //Informa ao usuário mensagens de erro na view $compraProduto = new Compraproduto(); $produtos = ArrayHelper::map(Produto::find()->where(['isInsumo' => 1])->orderBy('nome ASC')->all(), 'idProduto', 'nome'); $produtosDaCompras = Compraproduto::find()->where(['idCompra' => $id])->all(); //Recebe o valor total da compra $valorTotalDaCompra = 0; $novoProduto = new Produto(); $produtosValorAlterado = []; $arrayFinal = []; $arrayIds = []; if (Yii::$app->request->post()) { $itensInseridos = true; //Inicia a transação: $transaction = \Yii::$app->db->beginTransaction(); // try { $compraProdutoAux = Yii::$app->request->post()['Compraproduto']; $compraProdutos = Compraproduto::find()->where(['idCompra' => $id])->all(); if (count($compraProdutos) > 0) { foreach ($compraProdutos as $cp) { $cp->delete(); } } for ($i = 0; $i < count($compraProdutoAux['idProduto']); $i++) { $cp = new Compraproduto(); $cp->idCompra = $id; $cp->idProduto = $compraProdutoAux['idProduto'][$i]; $cp->quantidade = $compraProdutoAux['quantidade'][$i]; $cp->valorCompra = Yii::$app->request->post()['compraproduto-valorcompra-disp'][$i]; if ($cp->comparaPrecoProduto($cp)) { $lp = $novoProduto->getListaInsumos($cp->idProduto); foreach ($lp as $key) { $produto = Yii::$app->db->createCommand('SELECT idProduto, nome FROM produto WHERE idProduto = :id ', ['id' => $key['idprodutoVenda']])->queryOne(); array_push($produtosValorAlterado, $produto); } } for ($j = 0; $j < count($produtosValorAlterado); $j++) { array_push($arrayIds, $produtosValorAlterado[$j]['idProduto']); } if (!$cp->save(false)) { $mensagem = "Não foi possível salvar os dados de algum"; $transaction->rollBack(); //desfaz alterações no BD $itensInseridos = false; break; //encerra o laço for } else { $valorTotalDaCompra += floatval($cp->valorCompra); } } $arrayIds = array_unique($arrayIds); foreach ($arrayIds as $idProduto) { $produto = Yii::$app->db->createCommand('SELECT idProduto, nome FROM produto WHERE idProduto = :id ', ['id' => $idProduto])->queryOne(); array_push($arrayFinal, $produto); } $modelCompra->valor = $valorTotalDaCompra; if (!$modelCompra->save(false)) { $mensagem = "Não foi possível salvar os dados "; $transaction->rollBack(); //desfaz alterações no BD $itensInseridos = false; } else { $conta->valor = $modelCompra->valor; if (!$conta->save(false)) { $mensagem = "Não foi possível salvar os dados "; $transaction->rollBack(); //desfaz alterações no BD $itensInseridos = false; } } if ($itensInseridos) { $transaction->commit(); return $this->redirect(['view', 'id' => $modelCompra->idconta, 'produtosValorAlterado' => $arrayFinal]); } /*} catch (\Exception $exception) { $transaction->rollBack(); $mensagem = "Ocorreu uma falha inesperada ao tentar salvar "; }*/ } return $this->render('update', ['modelCompra' => $modelCompra, 'compraProduto' => $compraProduto, 'produtos' => $produtos, 'produtosDaCompras' => $produtosDaCompras, 'mensagem' => $mensagem]); }
/** * Updates an existing Pedido model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id * @return mixed */ public function actionUpdate($id) { $modelPedido = $this->findModel($id); $mensagem = ""; //Informa ao usuário mensagens de erro na view $situacaopedido = ArrayHelper::map(Situacaopedido::find()->all(), 'idSituacaoPedido', 'titulo'); $produtosVenda = ArrayHelper::map(Produto::find()->where(['isInsumo' => 0])->all(), 'idProduto', 'nome'); $itensPedido = Itempedido::find()->where(['idPedido' => $id])->all(); $formasPagamento = ArrayHelper::map(Formapagamento::find()->all(), 'idTipoPagamento', 'titulo'); $antigaSituacao = $modelPedido->idSituacaoAtual; $historicoSituacao = Historicosituacao::findOne([$modelPedido->idPedido, $modelPedido->idSituacaoAtual, Yii::$app->getUser()->id]); $historicoSituacao = Historicosituacao::find()->where(['idPedido' => $modelPedido->idPedido, 'user_id' => Yii::$app->getUser()->id])->orderBy('dataHora')->one(); //Recebe todas as mesas registradas $mesa = ArrayHelper::map(Mesa::find()->all(), 'idMesa', 'numeroDaMesa'); if ($modelPedido->load(Yii::$app->request->post()) && count($itensPedido) > 0) { //Carrega demais modelos //Inicia a transação: $transaction = \Yii::$app->db->beginTransaction(); try { //Tenta salvar um registro de Pedido: if ($modelPedido->save()) { //Carrega os dados dos itens do Pedido: $itemPedidoPost = Yii::$app->request->post()['Itempedido']; $itensInseridos = true; for ($i = 0; $i < count($itensPedido); $i++) { $itemPedido = Itempedido::findOne(['idPedido' => $id, 'idProduto' => $itensPedido[$i]->idProduto]); if ($itemPedido != null || $modelPedido->idSituacaoAtual == Pedido::CANCELADO) { $itemPedido->removerItemPedido(); } } //AQUI for ($i = 0; $i < count($itemPedidoPost['idProduto']); $i++) { $itemPedido = new Itempedido(); $itemPedido->idProduto = $itemPedidoPost['idProduto'][$i]; $itemPedido->quantidade = $itemPedidoPost['quantidade'][$i]; $produtoVenda = Produto::find()->where(['idProduto' => $itemPedido->idProduto])->one(); $itemPedido->total = floatval(number_format($produtoVenda->valorVenda * $itemPedido->quantidade, 2)); $itemPedido->idPedido = $modelPedido->idPedido; //Tenta salvar os itens do Pedido: if ($modelPedido->idSituacaoAtual != Pedido::CANCELADO) { //Verifica a quantidade em estoque de insumos $verificaEstoque = $itemPedido->verificaQtdEstProdutoPedido($itemPedido->idProduto, $itemPedido->quantidade); if (count($verificaEstoque) <= 0) { if ($itemPedido->save()) { Insumo::atualizaQtdNoEstoqueInsert($itemPedido->idProduto, $itemPedido->quantidade); } else { $mensagem = "Não foi possível salvar os dados de algum item do Pedido"; $transaction->rollBack(); //desfaz alterações no BD $itensInseridos = false; break; //encerra o laço for } } else { $insumosFaltando = ""; foreach ($verificaEstoque as $i => $insumo) { $insumosFaltando .= $insumo->nome; if ($i < count($verificaEstoque) - 1) { $insumosFaltando .= ", "; } } $mensagem = "<b>Pedido não foi alterado com sucesso! </b>Quantidade dos insumos(" . $insumosFaltando . ")\n ficarão abaixo da quantidade mínima de insumos em estoque."; $transaction->rollBack(); //desfaz alterações no BD $itensInseridos = false; break; //encerra o laço for } } } if ($antigaSituacao != $modelPedido->idSituacaoAtual || $historicoSituacao->user_id != Yii::$app->getUser()->id) { $modelPedido->cadastrarNovaHistoricoSituacaoPedido($modelPedido->idPedido, $modelPedido->idSituacaoAtual, Yii::$app->getUser()->id); } if ($modelPedido->idSituacaoAtual == Pedido::CONCLUIDO) { $caixa = new Caixa(); $caixa = $caixa->getCaixaAberto(); if ($caixa != null) { $caixa = Caixa::findOne($caixa->idcaixa); $caixa->valoremcaixa += floatval($modelPedido->totalPedido); $caixa->valorapurado += floatval($modelPedido->totalPedido); $caixa->valorlucro += number_format($caixa->calculaValorLucroPedido($modelPedido->idPedido), 2); if (!$caixa->save()) { $mensagem = "Não foi possível salvar os dados do Pedido"; $transaction->rollBack(); //desfaz alterações no BD $itensInseridos = false; } } else { $mensagem = "Não foi possível concluir o Pedido, pois Caixa não está aberto"; $transaction->rollBack(); //desfaz alterações no BD $itensInseridos = false; } } //Testa se todos os itens foram inseridos (ou tudo ou nada): if ($itensInseridos) { $transaction->commit(); return $this->redirect(['view', 'id' => $modelPedido->idPedido]); } } else { $mensagem = "Não foi possível salvar os dados do Pedido"; } } catch (\Exception $exception) { $transaction->rollBack(); $mensagem = "Ocorreu uma falha inesperada ao tentar salvar o Pedido"; } } return $this->render('update', ['modelPedido' => $modelPedido, 'situacaopedido' => $situacaopedido, 'produtosVenda' => $produtosVenda, 'itemPedido' => $itensPedido, 'formasPagamento' => $formasPagamento, 'mensagem' => $mensagem, 'mesa' => $mesa]); }
/** * @param $idProdutoVenda * @return mixed */ public function searchQuantidadeProdutosEmVendas($idProdutoVenda) { //Guarda o mês anterior $mes = date('m') - 1; //Guarda o último dia do mês $lastDayOfMonth = date('t', strtotime(date('Y') . '-' . $mes . '-' . date('d'))); //Busca os produtos vendidos(produzidos) no período mensal(Do primeiro até o último dia do mês atual) $query = Produto::find()->joinWith('itempedidos')->joinWith('itempedidos.pedido')->joinWith('itempedidos.pedido.pagamento')->joinWith('itempedidos.pedido.pagamento.contasareceber')->joinWith('itempedidos.pedido.pagamento.contasareceber.conta')->where(['produto.idProduto' => $idProdutoVenda])->andWhere(['between', 'dataHora', date('Y') . '-' . $mes . '-' . '01', date('Y') . '-' . $mes . '-' . $lastDayOfMonth]); //Guarda a soma dos produtos vendidos(produzidos) no período mensal(Do primeiro até o último dia do mês) $sumQuantidade = $query->sum('quantidade'); return $sumQuantidade; }
AppAsset::register($this); $formatter = \Yii::$app->formatter; $caixa = new Caixa(); $Compraproduto = new Compraproduto(); //Pega a instaância do caixa aberto $caixa = $caixa->getCaixaAberto(); //Rechpera o nome da loja $loja = Loja::find()->where(['user_id' => Yii::$app->user->getId()])->one(); //Busca os produtos com estoque mínimo $qtdProdutoMinimo = Produto::find()->where("quantidadeMinima >= quantidadeEstoque AND isInsumo = 1")->all(); //Verifica se o nome da Loja está cadastrado if (count($loja) > 0) { $nomeLoja = $loja->nome; $url = Url::toRoute(['/loja/view', 'id' => Yii::$app->user->getId()]); } else { $nomeLoja = 'Cadastre sua loja'; $url = Url::toRoute(['/loja/create']); } ?> <?php $this->beginPage() ?> <!DOCTYPE html> <html lang="<?= Yii::$app->language ?>">
/** * @return \yii\db\ActiveQuery */ public function getNomeProduto() { return Produto::find()->where(['idProduto' => $this->idProduto])->one()->nome; }
/** * Deletes an existing Categoria model. * If deletion is successful, the browser will be redirected to the 'index' page. * @param integer $id * @return mixed */ public function actionDelete($id) { //Guarda a mensagem $mensagem = ""; $transaction = \Yii::$app->db->beginTransaction(); try { //Verifica se a categoria a ser deletada não é //a padrão(SEM CATEGORIA) if ($id != Categoria::SEM_CATEGORIA) { $produtosDaCategoria = Produto::find()->where(['idCategoria' => $id])->all(); if (count($produtosDaCategoria) > 0) { foreach ($produtosDaCategoria as $prod) { //Muda a categoria do produto para "Sem categoria" $prod->idCategoria = Categoria::SEM_CATEGORIA; $prod->save(); } } } if ($this->findModel($id)->delete()) { $transaction->commit(); } } catch (\Exception $exception) { $transaction->rollBack(); $mensagem = "Ocorreu uma falha inesperada ao tentar salvar "; } $searchModel = new CategoriaSearch(); $dataProvider = $searchModel->search(Yii::$app->request->queryParams); return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'mensagem' => $mensagem]); }
<?php use yii\helpers\Html; use yii\widgets\ActiveForm; use yii\helpers\ArrayHelper; use app\models\Produto; /* @var $this yii\web\View */ /* @var $model app\models\PedidoProduto */ /* @var $form yii\widgets\ActiveForm */ $produtos = ArrayHelper::getColumn(Produto::find()->all(), function ($element) { return $element['desc_tam']; }); $produtos = array_combine($produtos, $produtos); ?> <div class="pedido-produto-form"> <?php $form = ActiveForm::begin(); ?> <?php echo $form->field($model, 'produto_desc_tam')->dropDownList($produtos, ['prompt' => 'Selecione...'])->label('Descrição'); ?> <div class="form-group"> <?php echo Html::submitButton($model->isNewRecord ? 'Adicionar' : 'Atualizar', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']); ?> </div>
/** * Recupera todos os produtos */ public function actionGetProduto() { $produtos = ArrayHelper::map(Produto::find()->all(), 'nome', 'idProduto'); echo Json::encode($produtos); }
/** * @return array|null * Gera a lista dos produtos cadastrados */ public static function getListToDropDownList() { $options = []; $optGroups = Categoria::find()->all(); foreach ($optGroups as $categoria) { $produtosCategoria = []; $produtos = Produto::find()->where(['idCategoria' => $categoria->idCategoria])->all(); foreach ($produtos as $p) { $key = $p->idProduto; $produtosCategoria[$key] = $p->nome; } $options[$categoria->nome] = $produtosCategoria; } return $options; }
/** * Atualiza a quantidade de estoque do Produto * @param $idProdVnd * @param int $qtdProdVnd * @return bool */ public function atualizaQtdNoEstoqueDelete($idProdVnd, $qtdProdVnd = 1) { $insumos = Insumo::find()->where(['idProdutoVenda' => $idProdVnd])->all(); $itensDeletados = true; foreach ($insumos as $key => $ins) { $qtdInsumo = $ins->quantidade * $qtdProdVnd; $produto = Produto::find()->where(['idProduto' => $ins->idprodutoInsumo])->one(); $produto->quantidadeEstoque += $qtdInsumo; if (!$produto->save()) { $itensDeletados = false; } } if ($itensDeletados) { return true; } return false; }
/** * Updates an existing Cardapio model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id * @return mixed */ public function actionUpdate($id) { $modelCardapio = $this->findModel($id); $modelItemCardapio = new Itemcardapio(); $mensagem = ""; $itensCardapio = Itemcardapio::find()->where(['idCardapio' => $id])->orderBy('ordem ASC')->all(); $produtos = ArrayHelper::map(Produto::find()->where(['isInsumo' => 0])->all(), 'idProduto', 'nome'); if ($modelCardapio->load(Yii::$app->request->post())) { //Inicia a transação: $transaction = \Yii::$app->db->beginTransaction(); try { $itensInseridos = true; if ($modelCardapio->save()) { if (Itemcardapio::deleteAll(['idCardapio' => $id]) > 0) { $itensCardapio = Yii::$app->request->post()['Itemcardapio']; for ($i = 0; $i < count($itensCardapio['idProduto']); $i++) { $itemCardapio = new Itemcardapio(); $itemCardapio->idCardapio = $modelCardapio->idCardapio; $itemCardapio->idProduto = $itensCardapio['idProduto'][$i]; $itemCardapio->ordem = $itensCardapio['ordem'][$i]; if (!$itemCardapio->save()) { $itensInseridos = false; } } if ($itensInseridos) { $transaction->commit(); return $this->redirect(['view', 'id' => $modelCardapio->idCardapio]); } else { $mensagem = "Não foi possível salvar os dados"; $transaction->rollBack(); //desfaz alterações no BD } } } } catch (\Exception $exception) { $transaction->rollBack(); $mensagem = "Ocorreu uma falha inesperada ao tentar salvar"; } } //Seta o fuso horário brasileiro date_default_timezone_set('America/Sao_Paulo'); return $this->render('update', ['modelCardapio' => $modelCardapio, 'modelItemCardapio' => $modelItemCardapio, 'mensagem' => $mensagem, 'itensCardapio' => $itensCardapio, 'produtos' => $produtos]); }
/** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(ProdutosRequest $request, $id) { $produto = Produto::find($id); $produto->update($request->all()); if ($request->fornecedor) { foreach ($request->fornecedor as $value) { // Vefirica se os campos não são vazios if ($value['fornecedor_id'] != '? undefined:undefined ?' || $value['preco_compra'] != '') { // Se já tiver um cadastro atualiza if ($value['id'] != '') { FornecedorProduto::find($value['id'])->update($value); } else { $produto->fornecedor_produtos()->create($value); } } } } flash()->success('Produto atualizado com sucesso'); return redirect('/produtos'); }
public static function addEstoque($id, $qtd) { $produto = Produto::find($id); $produto->estoque += $qtd; $produto->save(); }
/** * Updates an existing Insumos model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id * @return mixed */ public function actionUpdate($idprodutoVenda, $idprodutoInsumo) { $model = $this->findModel($idprodutoVenda, $idprodutoInsumo); $produtosvenda = ArrayHelper::map(Produto::find()->where(['isInsumo' => 0])->all(), 'idProduto', 'nome'); $insumos = ArrayHelper::map(Produto::find()->where(['isInsumo' => 1])->all(), 'idProduto', 'nome'); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'idprodutoVenda' => $model->idprodutoVenda, 'idprodutoInsumo' => $model->idprodutoInsumo]); } else { return $this->render('update', ['model' => $model, 'insumos' => $insumos, 'produtosvenda' => $produtosvenda]); } }