/** * Creates a new Eventos model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Eventos(); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model]); } }
/** * Updates Eventos into database * * @param Eventos $eventos * @param array $input * * @return Eventos */ public function update($eventos, $input) { $eventos->fill($input); $eventos->save(); return $eventos; }
/** * 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]); } }