public function searchSecretaria($params) { $query = ProfessorMonitoria::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]); $query->andFilterWhere(['like', 'aluno', $this->aluno]); $query->andFilterWhere(['like', 'matricula', $this->matricula]); $query->andFilterWhere(['like', 'cpfProfessor', $this->cpfProfessor]); $query->andFilterWhere(['like', 'codDisciplina', $this->codDisciplina]); $query->andFilterWhere(['like', 'nomeDisciplina', $this->nomeDisciplina]); $query->andFilterWhere(['like', 'codTurma', $this->codTurma]); $query->andFilterWhere(['like', 'professor', $this->professor]); $query->andFilterWhere(['like', 'nomeCursoDisciplina', $this->nomeCursoDisciplina]); $query->andFilterWhere(['like', 'nomeCursoAluno', $this->nomeCursoAluno]); $query->andFilterWhere(['like', 'bolsa_traducao', $this->bolsa_traducao]); $query->andFilterWhere(['like', 'periodo', $this->periodo]); $query->orderBy(['id' => SORT_DESC]); return $dataProvider; }
public function actionGerarrelatoriosemestral($id) { $model = new Monitoria(); $modelInfo = new ProfessorMonitoria(); if ($model->load(Yii::$app->request->post())) { //Usuario - Pega professor baseando-se no CPF do usuário logado $professor = Usuario::findOne(['CPF' => Yii::$app->user->identity->cpf]); //Habilitar "extension=php_fileinfo.dll" em C:\xampp\php\php.ini $model->fileRelatorioSemestral = UploadedFile::getInstance($model, 'fileRelatorioSemestral'); $arrayUpdate = ['pathArqRelatorioSemestral' => 'uploads/relatorio-semestral/' . $professor->cpf . '_' . date('Ydm_His') . '.' . $model->fileRelatorioSemestral->extension]; Yii::$app->db->createCommand()->update('monitoria', $arrayUpdate, 'id=' . $id)->execute(); $model->fileRelatorioSemestral->saveAs('uploads/relatorio-semestral/' . $professor->cpf . '_' . date('Ydm_His') . '.' . $model->fileRelatorioSemestral->extension); return $this->redirect(['professor']); } else { $model = $this->findModel($id); $modelInfo = ProfessorMonitoria::findOne(['id' => $id]); return $this->render('_form4', ['model' => $model, 'modelInfo' => $modelInfo]); } }
use yii\helpers\ArrayHelper; use app\models\ProfessorMonitoria; /* @var $this yii\web\View */ /* @var $searchModel app\models\ProfessorMonitoriaSearch */ /* @var $dataProvider yii\data\ActiveDataProvider */ $this->title = 'Gerenciar Monitorias'; $this->params['breadcrumbs'][] = ['label' => 'Monitorias', 'url' => ['index']]; $this->params['breadcrumbs'][] = $this->title; ?> <div> <h1><?php echo Html::encode($this->title); ?> </h1> <?php // echo $this->render('_search', ['model' => $searchModel]); ?> <?php echo GridView::widget(['dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'summary' => '', 'showHeader' => true, 'columns' => [['attribute' => 'codDisciplina', 'label' => 'Cod. Disciplina'], 'nomeDisciplina', 'aluno', 'codTurma', 'nomeCursoDisciplina', ['attribute' => 'periodo', 'filter' => ArrayHelper::map(ProfessorMonitoria::find()->distinct()->orderBy(['periodo' => SORT_DESC])->asArray()->all(), 'periodo', 'periodo')], ['attribute' => 'bolsa_traducao', 'filter' => array("Sim" => "Sim", "Não" => "Não")], ['class' => 'yii\\grid\\ActionColumn', 'header' => 'Ações', 'headerOptions' => ['style' => 'text-align:center; color:#337AB7'], 'contentOptions' => ['style' => 'text-align:center; vertical-align:middle'], 'template' => '{plano} {relatorio}', 'buttons' => ['plano' => function ($url, $model) { return Html::a('<span class="btn btn-primary">Plano Disciplina</span>', ['monitoria/gerarplanosemestraldisciplina', 'id' => $model->id], ['title' => 'Plano Disciplina', 'aria-label' => 'Plano Disciplina', 'data-pjax' => '0']); }, 'relatorio' => function ($url, $model) { return Html::a('<span class="btn btn-primary">Relatório</span>', ['monitoria/gerarrelatoriosemestral', 'id' => $model->id], ['title' => 'Relatório Semestral', 'aria-label' => 'Relatório Semestral', 'data-pjax' => '0']); }]]]]); ?> <a href="?r=monitoria/index" class="btn btn-default">Voltar</a> </div>