Exemplo n.º 1
0
 public function actionEventos($from, $to)
 {
     $date = new \Datetime(null);
     $hoje = $date->getTimestamp() + $date->getOffset();
     $de = date("Y-m-d", $from / 1000);
     $para = date("Y-m-d", $to / 1000);
     $model = Eventos::find()->joinWith('atividade')->where(['>=', 'd_ini', $de])->orWhere(['<=', 'd_ter', $de])->orWhere(['<=', 'd_ter', $para])->andWhere(['atividades.empresa_id' => Yii::$app->session->get('empresa')])->all();
     $d = ['success' => 1];
     foreach ($model as $dados) {
         $d['result'][] = ['id' => $dados['id'], 'title' => $dados['atividade']['atividade'], 'url' => Url::to(['evento/visualizar', 'id' => $dados['id']]), 'class' => Yii::$app->AgobUtils->cssStatus($dados['status'], $dados['d_ter']), 'start' => strtotime($dados['d_ini']) . '000', 'end' => strtotime($dados['d_ter']) . '000', 'dias' => Yii::$app->AgobUtils->diffDias($dados['d_ter']), 'status' => $dados['status']];
     }
     echo json_encode($d);
 }
Exemplo n.º 2
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Eventos::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, 'atividade_id' => $this->atividade_id, 'd_ini' => $this->d_ini, 'd_ter' => $this->d_ter]);
     $query->andFilterWhere(['like', 'status', $this->status])->andFilterWhere(['like', 'status_observacao', $this->status_observacao]);
     return $dataProvider;
 }
Exemplo n.º 3
0
 /**
  * Updates Eventos into database
  *
  * @param Eventos $eventos
  * @param array $input
  *
  * @return Eventos
  */
 public function update($eventos, $input)
 {
     $eventos->fill($input);
     $eventos->save();
     return $eventos;
 }
Exemplo n.º 4
0
 /**
  * Finds the Eventos model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param integer $id
  * @return Eventos the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($id)
 {
     if (($model = Eventos::findOne($id)) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }
Exemplo n.º 5
0
 /**
  * Creates a new Atividades model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCadastrar()
 {
     $model = new Atividades();
     if (Yii::$app->request->post()) {
         $transaction = Atividades::getDb()->beginTransaction();
         try {
             $postAtividades = Yii::$app->request->post()['Atividades'];
             $model->load(Yii::$app->request->post());
             $model->empresa_id = Yii::$app->session->get('empresa');
             if ($model->save()) {
                 switch ($model->repetir) {
                     case "0":
                         $modelEventos = new Eventos();
                         $modelEventos->atividade_id = $model->id;
                         $modelEventos->dia_inteiro = $model->dia_inteiro;
                         $modelEventos->d_ini = $postAtividades['data_inicio'];
                         $modelEventos->d_ter = $postAtividades['data_termino'];
                         $modelEventos->h_ini = $postAtividades['hora_inicio'];
                         $modelEventos->h_ter = $postAtividades['hora_termino'];
                         $modelEventos->status = $postAtividades['status'];
                         $modelEventos->status_observacao = $postAtividades['status_observacao'];
                         if (!$modelEventos->save()) {
                             throw new \yii\web\HttpException(500, 'Erro ao salvar evento para a atividade. Volte e tente novamente!');
                         }
                         break;
                     case "1":
                         $days = $this->getInterval($this->a_day, $postAtividades['data_inicio'], $postAtividades['data_termino'], $postAtividades['repetir_termina'], $postAtividades['repetir_val'], $postAtividades['condicional_dia_util']);
                         break;
                     case "2":
                         $days = $this->getInterval($this->a_week, $postAtividades['data_inicio'], $postAtividades['data_termino'], $postAtividades['repetir_termina'], $postAtividades['repetir_val'], $postAtividades['condicional_dia_util']);
                         break;
                     case "3":
                         $days = $this->getInterval($this->a_month, $postAtividades['data_inicio'], $postAtividades['data_termino'], $postAtividades['repetir_termina'], $postAtividades['repetir_val'], $postAtividades['condicional_dia_util']);
                         break;
                     case "4":
                         $days = $this->getInterval($this->a_year, $postAtividades['data_inicio'], $postAtividades['data_termino'], $postAtividades['repetir_termina'], $postAtividades['repetir_val'], $postAtividades['condicional_dia_util']);
                         break;
                 }
                 if ($model->repetir != 0) {
                     for ($i = 0; $i < count($days); $i++) {
                         $modelEventos = new Eventos();
                         $modelEventos->atividade_id = $model->id;
                         $modelEventos->dia_inteiro = $model->dia_inteiro;
                         $modelEventos->d_ini = $days[$i]['start'];
                         $modelEventos->d_ter = $days[$i]['end'];
                         $modelEventos->h_ini = $postAtividades['hora_inicio'];
                         $modelEventos->h_ter = $postAtividades['hora_termino'];
                         $modelEventos->status = $postAtividades['status'];
                         $modelEventos->status_observacao = $postAtividades['status_observacao'];
                         if (!$modelEventos->save()) {
                             throw new \yii\web\HttpException(500, 'Erro ao salvar evento para a atividade. Volte e tente novamente!');
                         }
                     }
                 }
                 $transaction->commit();
                 return $this->redirect(['view', 'id' => $model->id]);
             } else {
                 return $this->render('cadastrar', ['model' => $model]);
             }
         } catch (Exception $e) {
             $transaction->rollBack();
             throw $e;
         }
     } else {
         return $this->render('cadastrar', ['model' => $model]);
     }
 }