Esempio n. 1
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function searchAluno($params)
 {
     $query = Monitoria::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;
     }
     //Pega o ID do aluno baseando-se no CPF do usuário logado
     $aluno = Aluno::findOne(['CPF' => Yii::$app->user->identity->login]);
     $query->joinWith(['aluno']);
     $query->joinWith(['disciplinaperiodo']);
     $query->joinWith(['periodoinscricao']);
     $query->leftJoin('disciplina', 'disciplina.id = disciplina_periodo.idDisciplina');
     $query->leftJoin('curso', 'curso.ID = disciplina_periodo.idCurso');
     $query->andFilterWhere(['ID' => $this->ID, 'IDAluno' => $aluno->ID]);
     $query->andFilterWhere(['like', 'numProcs', $this->numProcs]);
     $query->andFilterWhere(['like', 'aluno.nome', $this->IDAluno]);
     $query->andFilterWhere(['like', 'disciplina.nomeDisciplina', $this->IDDisc]);
     $query->andFilterWhere(['like', 'curso.nome', $this->nomeCurso]);
     $query->andFilterWhere(['like', 'periodoinscricao.ano', $this->IDperiodoinscr]);
     $query->orderBy(['ID' => SORT_DESC]);
     return $dataProvider;
 }
Esempio n. 2
0
 /**
  * Creates a new Monitoria model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = new Monitoria();
     if ($model->load(Yii::$app->request->post())) {
         //Arquivo Histórico
         $model->file = UploadedFile::getInstance($model, 'file');
         $model->file->saveAs('uploads/historicos/' . $model->file->baseName . '.' . $model->file->extension);
         $model->pathArqHistorico = $model->file->name;
         $model->file = 'uploads/historicos/' . $model->file->baseName . '.' . $model->file->extension;
         if ($model->validate()) {
             //Número do Processo
             $model->numProcs = date("Y") . '/' . str_pad(strval($proxProcesso = Monitoria::find()->count() + 1), 6, '0', STR_PAD_LEFT);
         }
         if ($model->save()) {
             return $this->redirect(['view', 'id' => $model->ID]);
         } else {
             if ($model->errors) {
                 Yii::$app->getSession()->setFlash('danger', $this->convert_multi_array($model->errors));
                 //foreach ($model->getErrors() as $key => $value) {
                 //    Yii::$app->getSession()->setFlash('danger', $key.' - '.$value);
                 //}
                 foreach (Yii::$app->session->getAllFlashes() as $key => $message) {
                     echo '<div class="alert alert-' . $key . '" role="alert">' . $message . '</div>';
                 }
             }
         }
     } else {
         //Número do Processo
         $model->numProcs = '[Novo]';
         //Aluno - Pega aluno baseando-se no CPF do usuário logado
         $aluno = Aluno::findOne(['CPF' => Yii::$app->user->identity->login]);
         $model->IDAluno = $aluno->ID;
         //Status - Aguardando Avaliação
         $model->status = 0;
         //Seleciona o último período de inscrição
         $periodoInscricao = PeriodoInscricaoMonitoria::find()->orderBy(['ID' => SORT_DESC])->one();
         $model->IDperiodoinscr = $periodoInscricao->ID;
         $periodo = $periodoInscricao->ano . '/' . $periodoInscricao->periodo;
         return $this->render('create', ['model' => $model, 'periodo' => $periodo, 'matricula' => $aluno->matricula, 'banco' => $aluno->banco, 'agencia' => $aluno->agencia, 'conta' => $aluno->conta]);
     }
 }
Esempio n. 3
0
 public function searchPendencias($params)
 {
     $query = Monitoria::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->joinWith(['usuario']);
     $query->joinWith(['disciplinaperiodo']);
     $query->joinWith(['periodoinscricao']);
     $query->leftJoin('disciplina', 'disciplina.id = disciplina_periodo.idDisciplina');
     $query->leftJoin('curso', 'curso.id = disciplina_periodo.idCurso');
     $query->andFilterWhere(['id' => $this->id, 'status' => '0']);
     $query->andFilterWhere(['like', 'usuario.name', $this->IDAluno]);
     $query->andFilterWhere(['like', 'disciplina.nomeDisciplina', $this->IDDisc]);
     $query->andFilterWhere(['like', 'curso.nome', $this->nomeCurso]);
     $query->andFilterWhere(['like', 'periodoinscricao.ano', $this->IDperiodoinscr]);
     $query->orderBy(['id' => SORT_DESC]);
     return $dataProvider;
 }
 /**
  * Creates a new Frequencia model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate($date)
 {
     $model = new Frequencia();
     $aluno = Aluno::find()->where(['CPF' => Yii::$app->user->identity->login])->one();
     // pesquisa para pegar o id do aluno
     $moni = Monitoria::find()->where(['IDAluno' => $aluno->ID])->one();
     // pesquisa para pegar o id de monitoria do aluno
     $model->dmy = $date;
     $model->IDMonitoria = $moni->ID;
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
         return $this->redirect(['index']);
     } else {
         return $this->renderAjax('create', ['model' => $model]);
     }
 }