/**
  * Lists all CaixaMovimentacao models.
  * @return mixed
  */
 public function actionIndex()
 {
     $searchModel = new CaixaMovimentacaoSearch();
     $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
     return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider]);
 }
Example #2
0
 public function actionAnaliticoDepositos()
 {
     $searchModel = new CaixaMovimentacaoSearch();
     $searchModel->caixa_movimentacao_tipo_id = CaixaMovimentacaoTipo::DEPOSITO;
     $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
     return $this->render('analiticoDepositos', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider]);
 }
Example #3
0
 public function actionIndex()
 {
     $user = User::find()->where(['iduser' => Yii::$app->user->id])->one();
     $caixa = Caixa::find()->where(['loja_idloja' => $user->loja_idloja])->one();
     $caixaAberturaFechamento = CaixaAberturaFechamento::find()->where(['caixa_id' => $caixa->idcaixa])->orderBy('data DESC')->one();
     //VarDumper::dump($caixaAberturaFechamento,10,true);die;//caixa aberto
     $caixaMovimentacao = new CaixaMovimentacao();
     $caixaMovimentacao->data = date('Y-m-d H:i:s');
     $caixaMovimentacao->caixa_idcaixa = $caixa->idcaixa;
     if ($caixaAberturaFechamento != null and $caixaAberturaFechamento->tipo == 'abertura' and $caixaAberturaFechamento->user_id == Yii::$app->user->id) {
         #DESPESAS
         $despesaForm = new DespesaForm();
         //Se um post de DespesaForm foi disparado, entra aqui
         if (Yii::$app->request->post('DespesaForm')) {
             //VarDumper::dump('DespesaForm');die;
             if ($despesaForm->load(Yii::$app->request->post()) && $despesaForm->validate()) {
                 $connection = \Yii::$app->db;
                 //throw Exception('Unable to save record.');
                 $transaction = $connection->beginTransaction();
                 try {
                     $caixaMovimentacao = new CaixaMovimentacao();
                     $caixaMovimentacao->data = date('Y-m-d H:i:s');
                     $caixaMovimentacao->valor = $despesaForm->valor;
                     $caixaMovimentacao->caixa_movimentacao_tipo_id = 1;
                     $caixaMovimentacao->caixa_idcaixa = $caixa->idcaixa;
                     $caixaMovimentacao->obs = $despesaForm->obs;
                     if (!$caixaMovimentacao->save()) {
                         throw new Exception('Não foi possível salvar - #1.');
                     }
                     $despesa = new Despesa();
                     $despesa->tipo_despesa_idtipo_despesa = $despesaForm->tipo_despesa;
                     $despesa->caixa_movimentacao_id = $caixaMovimentacao->id;
                     if (!$despesa->save()) {
                         throw new Exception('Não foi possível salvar - #2.');
                     }
                     //Valor do caixa menor do que a saída, não conclui a operação
                     if ($caixa->valor < $caixaMovimentacao->valor) {
                         throw new Exception(' Valor de saída é maior do que o disponível no caixa.');
                     }
                     $caixa->valor -= $caixaMovimentacao->valor;
                     if (!$caixa->save()) {
                         throw new Exception('Não foi possível salvar - #4.');
                     }
                     $transaction->commit();
                     Yii::$app->session->setFlash('success', 'Salvo com sucesso');
                     return $this->redirect(['index']);
                 } catch (Exception $e) {
                     Yii::$app->session->setFlash('danger', 'Ops! Tivemos um erro. Tente novamente ou fale conosco. ' . $e->getMessage());
                     $transaction->rollback();
                     return $this->refresh();
                 }
             }
         }
         #VALE
         $valeForm = new ValeForm();
         //Se um post de DespesaForm foi disparado, entra aqui
         if (Yii::$app->request->post('ValeForm')) {
             if ($valeForm->load(Yii::$app->request->post()) && $valeForm->validate()) {
                 $connection = \Yii::$app->db;
                 //throw Exception('Unable to save record.');
                 $transaction = $connection->beginTransaction();
                 try {
                     $caixaMovimentacao = new CaixaMovimentacao();
                     $caixaMovimentacao->data = date('Y-m-d H:i:s');
                     $caixaMovimentacao->valor = $valeForm->valor;
                     $caixaMovimentacao->caixa_movimentacao_tipo_id = 3;
                     $caixaMovimentacao->caixa_idcaixa = $caixa->idcaixa;
                     $caixaMovimentacao->obs = $valeForm->obs;
                     if (!$caixaMovimentacao->save()) {
                         throw new Exception('Não foi possível salvar - #1.');
                     }
                     $vale = new Vale();
                     $vale->vale_beneficiarios_idvale_beneficiarios = $valeForm->beneficiario_id;
                     $vale->caixa_movimentacao_id = $caixaMovimentacao->id;
                     if (!$vale->save()) {
                         throw new Exception('Não foi possível salvar - #2.');
                     }
                     //Valor do caixa menor do que a saída, não conclui a operação
                     if ($caixa->valor < $caixaMovimentacao->valor) {
                         throw new Exception(' Valor de saída é maior do que o disponível no caixa.');
                     }
                     $caixa->valor -= $caixaMovimentacao->valor;
                     if (!$caixa->save()) {
                         throw new Exception('Não foi possível salvar - #3.');
                     }
                     $transaction->commit();
                     Yii::$app->session->setFlash('success', 'Salvo com sucesso');
                     return $this->redirect(['index']);
                 } catch (Exception $e) {
                     Yii::$app->session->setFlash('danger', 'Ops! Tivemos um erro. Tente novamente ou fale conosco' . $e->getMessage());
                     $transaction->rollback();
                     return $this->refresh();
                 }
             }
         }
         #DEPÓSITO
         $caixaMovimentacao = new CaixaMovimentacao();
         $caixaMovimentacao->caixa_movimentacao_tipo_id = 2;
         $caixaMovimentacao->data = date('Y-m-d H:i:s');
         $caixaMovimentacao->caixa_idcaixa = $caixa->idcaixa;
         if (Yii::$app->request->post('CaixaMovimentacao')) {
             if ($caixaMovimentacao->load(Yii::$app->request->post()) && $caixaMovimentacao->validate()) {
                 $connection = \Yii::$app->db;
                 //throw Exception('Unable to save record.');
                 $transaction = $connection->beginTransaction();
                 try {
                     if (!$caixaMovimentacao->save()) {
                         throw new Exception('Não foi possível salvar - #1.');
                     }
                     //Valor do caixa menor do que a saída, não conclui a operação
                     if ($caixa->valor < $caixaMovimentacao->valor) {
                         throw new Exception(' Valor de saída é maior do que o disponível no caixa.');
                     }
                     $caixa->valor -= $caixaMovimentacao->valor;
                     if (!$caixa->save()) {
                         throw new Exception('Não foi possível salvar - #3.');
                     }
                     $transaction->commit();
                     Yii::$app->session->setFlash('success', 'Salvo com sucesso');
                     return $this->redirect(['index']);
                 } catch (Exception $e) {
                     Yii::$app->session->setFlash('danger', 'Ops! Tivemos um erro. Tente novamente ou fale conosco' . $e->getMessage());
                     $transaction->rollback();
                     return $this->refresh();
                 }
             }
         }
         #REFORCO
         $reforcoForm = new ReforcoForm();
         //Se um post de DespesaForm foi disparado, entra aqui
         if (Yii::$app->request->post('ReforcoForm')) {
             if ($reforcoForm->load(Yii::$app->request->post()) && $reforcoForm->validate()) {
                 $connection = \Yii::$app->db;
                 //throw Exception('Unable to save record.');
                 $transaction = $connection->beginTransaction();
                 try {
                     $caixaMovimentacao = new CaixaMovimentacao();
                     $caixaMovimentacao->data = date('Y-m-d H:i:s');
                     $caixaMovimentacao->valor = $reforcoForm->valor;
                     $caixaMovimentacao->caixa_movimentacao_tipo_id = 6;
                     $caixaMovimentacao->caixa_idcaixa = $caixa->idcaixa;
                     $caixaMovimentacao->obs = $reforcoForm->obs;
                     if (!$caixaMovimentacao->save()) {
                         throw new Exception('Não foi possível salvar - #1.');
                     }
                     $caixa->valor += $caixaMovimentacao->valor;
                     if (!$caixa->save()) {
                         throw new Exception('Não foi possível salvar - #2.');
                     }
                     $transaction->commit();
                     Yii::$app->session->setFlash('success', 'Salvo com sucesso');
                     return $this->redirect(['index']);
                 } catch (Exception $e) {
                     Yii::$app->session->setFlash('danger', 'Ops! Tivemos um erro. Tente novamente ou fale conosco' . $e->getMessage());
                     $transaction->rollback();
                     return $this->refresh();
                 }
             }
         }
         #Avulso
         $avulsoForm = new AvulsoForm();
         //Se um post de DespesaForm foi disparado, entra aqui
         if (Yii::$app->request->post('AvulsoForm')) {
             if ($avulsoForm->load(Yii::$app->request->post()) && $avulsoForm->validate()) {
                 $connection = \Yii::$app->db;
                 //throw Exception('Unable to save record.');
                 $transaction = $connection->beginTransaction();
                 try {
                     $caixaMovimentacao = new CaixaMovimentacao();
                     $caixaMovimentacao->data = date('Y-m-d H:i:s');
                     $caixaMovimentacao->valor = $avulsoForm->valor;
                     $caixaMovimentacao->caixa_movimentacao_tipo_id = 7;
                     $caixaMovimentacao->caixa_idcaixa = $caixa->idcaixa;
                     $caixaMovimentacao->obs = $avulsoForm->obs;
                     if (!$caixaMovimentacao->save()) {
                         throw new Exception('Não foi possível salvar - #1.');
                     }
                     $caixa->valor += $caixaMovimentacao->valor;
                     if (!$caixa->save()) {
                         throw new Exception('Não foi possível salvar - #2.');
                     }
                     $transaction->commit();
                     Yii::$app->session->setFlash('success', 'Salvo com sucesso');
                     return $this->redirect(['index']);
                 } catch (Exception $e) {
                     Yii::$app->session->setFlash('danger', 'Ops! Tivemos um erro. Tente novamente ou fale conosco' . $e->getMessage());
                     $transaction->rollback();
                     return $this->refresh();
                 }
             }
         }
         $searchModel = new CaixaMovimentacaoSearch();
         $searchModel->caixa_idcaixa = $caixa->idcaixa;
         $searchModel->data = date('Y-m-d');
         //$searchModel->data = date('Y-m-d');
         $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
         return $this->render('index', ['caixa' => $caixa, 'dataProvider' => $dataProvider, 'despesa' => $despesaForm, 'deposito' => $caixaMovimentacao, 'vale' => $valeForm, 'reforco' => $reforcoForm, 'avulso' => $avulsoForm, 'caixaMovimentacao' => $caixaMovimentacao]);
     } else {
         return $this->redirect(['caixa/abrir']);
     }
 }