public function actionCancelar() { $searchModel = new InscreveSearch(); $dataProvider = $searchModel->search(Yii::$app->request->queryParams); $id_usuario = Yii::$app->user->identity->idusuario; $id_evento = Yii::$app->request->post('evento_idevento'); $model = $this->findModel($id_evento); $id_pacote = Inscreve::findOne(['usuario_idusuario' => $id_usuario, 'evento_idevento' => $id_evento])->pacote_idpacote; $data_final_evento = Evento::findOne(['idevento' => $id_evento])->dataFim; $data_atual = date('Y/m/d'); if (strtotime($data_atual) > strtotime($data_final_evento)) { Yii::$app->getSession()->setFlash('danger', ['type' => 'danger', 'message' => 'O Evento ' . $model->sigla . ' já foi encerrado, não sendo possível cancelar a inscrição.', 'title' => 'Inscrição', 'positonY' => 'bottom', 'positonX' => 'right']); //Yii::$app->session->setFlash('message', 'Erro: Você não está inscrito nesse evento'); return Yii::$app->getResponse()->redirect(array('/inscreve/', 'mensagem' => 'erro')); } $cancela = new Inscreve(); $resultado = $cancela->cancelar($id_evento); if ($resultado == 1) { $pacote = new Inscreve(); $quantidade_de_pacotes = $pacote->possuiPacote(); if ($quantidade_de_pacotes != 0) { $aumentar = new Inscreve(); $aumentar->aumentarVagas($id_pacote, $id_evento, 2); } else { $aumentar = new Inscreve(); $aumentar->aumentarVagas(NULL, $id_evento, 1); } Yii::$app->getSession()->setFlash('success', ['type' => 'success', 'message' => 'Inscrição no evento ' . $model->sigla . ' foi cancelada com sucesso', 'title' => 'Inscrição', 'positonY' => 'bottom', 'positonX' => 'right']); return Yii::$app->getResponse()->redirect(array('/inscreve/', 'mensagem' => 'sucesso')); } else { Yii::$app->getSession()->setFlash('danger', ['type' => 'danger', 'message' => 'Você não está inscrito no evento ' . $model->sigla . '.', 'title' => 'Inscrição', 'positonY' => 'bottom', 'positonX' => 'right']); //Yii::$app->session->setFlash('message', 'Erro: Você não está inscrito nesse evento'); return Yii::$app->getResponse()->redirect(array('/inscreve/', 'mensagem' => 'erro')); } }
public function getInscritosEventoGeral() { $qte = Inscreve::find()->where(['evento_idevento' => $this->idevento])->count(); return $qte; }
/** * @return \yii\db\ActiveQuery */ public function getInscreves() { return $this->hasMany(Inscreve::className(), ['pacote_idpacote' => 'idpacote']); }
/** * @return \yii\db\ActiveQuery */ public function getInscreves() { return $this->hasMany(Inscreve::className(), ['usuario_idusuario' => 'idusuario']); }
public function getSomaCargaHorariaPacote($idevento, $idusuario) { $idpacote = Inscreve::find()->select('pacote_idpacote')->Where(['evento_idevento' => $idevento, 'usuario_idusuario' => $idusuario])->one(); if ($idpacote == null) { return null; } $sql = "select sum(itemProgramacao.cargaHoraria) as cargaHorariaPacote from itemProgramacao where iditemProgramacao in (\n select itemProgramacao_iditemProgramacao from itemProgramacao_has_pacote \n as item join pacote as p on item.pacote_idpacote = p.idpacote \n where idpacote ='" . $idpacote->pacote_idpacote . "')"; $somaCargaHoraria = Yii::$app->db->createCommand($sql)->queryOne(); return $somaCargaHoraria['cargaHorariaPacote']; }
public function searchCredenciados() { $id_evento = Yii::$app->request->post('evento_idevento'); if (!Yii::$app->user->isGuest) { $query = Inscreve::find()->where(['evento_idevento' => $id_evento])->andWhere(['credenciado' => 1])->innerJoin('user', 'user.idusuario = inscreve.usuario_idusuario')->orderBy('user.nome'); } else { return Yii::$app->getResponse()->redirect(array('/evento/', NULL)); // é redirecionado a tela de eventos, se não estiver logado } $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; } return $dataProvider; }