/** * * Adiciona um horario na agenda a partir de requisições ajax * @throws CHttpException */ public function actionAjaxCreate($id, $turno, $dia_semana) { $horario = new Horario(); $horario->cod_pessoa = $id; $horario->turno = $turno; $horario->dia_semana = $dia_semana; $horario->save(); }
/** * Creates a new model. * If creation is successful, the browser will be redirected to the 'view' page. */ public function actionCreate() { $model = new Horario(); // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); if (isset($_POST['Horario'])) { $model->attributes = $_POST['Horario']; if ($model->save()) { $this->redirect(array('view', 'id' => $model->id)); } } $this->render('create', array('model' => $model)); }
/** * Store a newly created resource in storage. * POST /quiebre/crear * * @return Response */ public function postCrear() { //si la peticion es ajax if (Request::ajax()) { $regex = 'regex:/^([a-zA-Z01-9 .,ñÑÁÉÍÓÚáéíóú_-]{2,60})$/i'; $required = 'required'; $numeric = 'numeric'; $reglas = array(); $mensaje = array('required' => ':attribute Es requerido', 'regex' => ':attribute Solo debe ser Texto', 'numeric' => ':attribute seleccione'); $validator = Validator::make(Input::all(), $reglas, $mensaje); if ($validator->fails()) { return Response::json(array('rst' => 2, 'msj' => $validator->messages())); } $horario = new Horario(); $horario->horario = Input::get('horario'); $horario->hora_inicio = Input::get('hora_inicio'); $horario->hora_fin = Input::get('hora_fin'); $horario->horario_tipo_id = Input::get('thorario'); $horario->estado = Input::get('estado'); $horario->save(); return Response::json(array('rst' => 1, 'msj' => 'Registro realizado correctamente')); } }
/** * Creates a new model. * If creation is successful, the browser will be redirected to the 'view' page. */ public function actionCrear($id) { $horario = new Horario(); if ($id) { $micrositio = Micrositio::model()->findByPk($id); $pagina = Pagina::model()->findByAttributes(array('micrositio_id' => $micrositio->id)); $pgPrograma = PgPrograma::model()->findByAttributes(array('pagina_id' => $pagina->id)); $horario->pg_programa_id = $pgPrograma->id; } if (isset($_POST['Horario'])) { $horario->attributes = $_POST['Horario']; $horario->hora_inicio = date('Gi', strtotime($horario->hora_inicio)); $horario->hora_fin = date('Gi', strtotime($horario->hora_fin)); if ($horario->save()) { Yii::app()->user->setFlash('success', Horarios::getDiaSemana($horario->dia_semana) . ' ' . Horarios::hora($horario->hora_inicio) . ' guardado con éxito'); $this->redirect(array('programas/view', 'id' => $pgPrograma->pagina->micrositio_id)); } //if($horario->save()) } //if(isset($_POST['Horario'])) // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); $this->render('crear', array('model' => $horario)); }
$view->horario = Horario::getHorarios(); $view->contentTemplate = "templates/horariosGrid.php"; // seteo el template que se va a mostrar break; case 'grabar': // limpio todos los valores antes de guardarlos // por ls dudas venga algo raro $Id = intval($_POST['Id']); $IdCarrera = intval($_POST['IdCarrera']); $IdAsignatura = intval($_POST['IdAsignatura']); $IdModulo = intval($_POST['IdModulo']); $Horario = new Horario($Id); $Horario->setIdCarrera($IdCarrera); $Horario->setIdAsignatura($IdAsignatura); $Horario->setIdModulo($IdModulo); $Horario->save(); break; case 'nuevo': $view->horario = new Horario(); $view->label = 'Nuevo Horario'; $view->disableLayout = true; $view->contentTemplate = "templates/horarioForm.php"; // seteo el template que se va a mostrar break; case 'editar': $editId = intval($_POST['Id']); $view->label = 'Editar Horario'; $view->horario = new Horario($editId); $view->disableLayout = true; $view->contentTemplate = "templates/horarioForm.php"; // seteo el template que se va a mostrar
public function update($id) { $data = Input::all(); $rules = ['nome' => 'required', 'senha' => 'min:4|max:4', 'cpf' => 'required|min:14|max:14|unique:funcionario,cpf,' . $id, 'pis' => 'required', 'ctps' => 'required', 'salario' => 'required', 'dsr' => 'required', 'horario' => 'required']; $niceNames = array('nome' => 'Nome Completo', 'senha' => 'Senha', 'pis' => 'PIS', 'ctps' => 'CTPS', 'cpf' => 'CPF', 'salario' => 'Salário', 'horario' => 'Horário', 'dsr' => 'D.S.R'); $validator = Validator::make(Input::all(), $rules); $validator->setAttributeNames($niceNames); $validator->after(function ($validator) { $dow = array('Domingo', 'Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sábado'); $data = Input::all(); $total_minutos = 0; foreach ($data['horario'] as $k => $hora) { if (isset($hora[0]) && isset($hora[1]) && !empty($hora[0]) && !empty($hora[1]) && $hora[0] != '' && $hora[1] != '') { $hora1 = strtotime($hora[0]); $hora2 = strtotime($hora[1]); if ($hora2 <= $hora1) { $validator->errors()->add('horario[' . $k . '][0]', $dow[$k] . ' - O horário de entrada do 1° turno deve ser menor que o horário de saída do 1° turno'); } $total_minutos += round(abs($hora2 - $hora1) / 60, 2); } if (isset($hora[2]) && isset($hora[3]) && !empty($hora[2]) && !empty($hora[3]) && $hora[2] != '' && $hora[3] != '') { $hora1 = strtotime($hora[2]); $hora2 = strtotime($hora[3]); if ($hora2 <= $hora1) { $validator->errors()->add('horario[' . $k . '][2]', $dow[$k] . ' - O horário de entrada do 2° turno deve ser menor que o horário de saída do 2° turno'); } $total_minutos += round(abs($hora2 - $hora1) / 60, 2); } if (isset($hora[1]) && isset($hora[2]) && !empty($hora[1]) && !empty($hora[2]) && $hora[1] != '' && $hora[2] != '') { $hora1 = strtotime($hora[1]); $hora2 = strtotime($hora[2]); if ($hora2 <= $hora1) { $validator->errors()->add('horario[' . $k . '][1]', $dow[$k] . ' - O horário de saída do 1° turno deve ser menor que o horário de entrada do 2° turno'); } } if (isset($hora[0]) && !isset($hora[1]) || isset($hora[1]) && !isset($hora[0]) || !$hora[0] && $hora[1] || !$hora[1] && $hora[0]) { $validator->errors()->add('horario[' . $k . '][0]', $dow[$k] . ' - É necessário preencher um horário de entrada e de saída no 1° turno'); } if (isset($hora[2]) && !isset($hora[3]) || isset($hora[3]) && !isset($hora[2]) || !$hora[2] && $hora[3] || !$hora[3] && $hora[2]) { $validator->errors()->add('horario[' . $k . '][2]', $dow[$k] . ' - É necessário preencher um horário de entrada e de saída no 2° turno'); } } if ($total_minutos / 60 > 44) { $validator->errors()->add('horario[0][0]', 'Horário - O total de horas da jornada semanal não pode exceder 44 horas'); } }); if ($validator->fails()) { return redirect(route('funcionario-editar', ['id' => $id]))->withErrors($validator->errors()->all())->withInput(); } $usuario = Auth::user(); $funcionario = Funcionario::where('id_usuario', '=', $usuario->id)->where('id', '=', $id)->first(); // if (count($errors = $funcionario->validateInput($data, null))) { // return redirect(route('funcionario-novo')) // ->withErrors($errors) // ->withInput(); // } $grupo_horario = new GrupoHorario(); $funcionario->nome = $data['nome']; $funcionario->cpf = $data['cpf']; $funcionario->ctps = $data['ctps']; $funcionario->pis = $data['pis']; $funcionario->salario = str_replace(',', '.', str_replace('.', '', $data['salario'])); if (isset($data['senha']) && !empty($data['senha'])) { $funcionario->senha = Hash::make($data['senha']); } $funcionario->save(); $grupo_horario->dsr = $data['dsr']; $grupo_horario->id_funcionario = $funcionario->id; $grupo_horario->save(); foreach ($data['horario'] as $dia => $hora) { $horario = new Horario(); $horario->id_grupo_horario = $grupo_horario->id; $horario->hora1 = $hora[0] ? $hora[0] : null; $horario->hora2 = $hora[1] ? $hora[1] : null; $horario->hora3 = $hora[2] ? $hora[2] : null; $horario->hora4 = $hora[3] ? $hora[3] : null; $horario->dia = $dia; $horario->save(); } return redirect(route('funcionarios'))->with('alertModal', ['message' => 'Funcionário alterado com sucesso!', 'title' => 'Sucesso!']); }
/** * Performs the work of inserting or updating the row in the database. * * If the object is new, it inserts it; otherwise an update is performed. * All related objects are also updated in this method. * * @param PropelPDO $con * @return int The number of rows affected by this insert/update and any referring fk objects' save() operations. * @throws PropelException * @see save() */ protected function doSave(PropelPDO $con) { $affectedRows = 0; // initialize var to track total num of affected rows if (!$this->alreadyInSave) { $this->alreadyInSave = true; // We call the save method on the following object(s) if they // were passed to this object by their coresponding set // method. This object relates to these object(s) by a // foreign key reference. if ($this->aHorario !== null) { if ($this->aHorario->isModified() || $this->aHorario->isNew()) { $affectedRows += $this->aHorario->save($con); } $this->setHorario($this->aHorario); } if ($this->aDisciplina !== null) { if ($this->aDisciplina->isModified() || $this->aDisciplina->isNew()) { $affectedRows += $this->aDisciplina->save($con); } $this->setDisciplina($this->aDisciplina); } if ($this->aProfessor !== null) { if ($this->aProfessor->isModified() || $this->aProfessor->isNew()) { $affectedRows += $this->aProfessor->save($con); } $this->setProfessor($this->aProfessor); } if ($this->aPeriodo !== null) { if ($this->aPeriodo->isModified() || $this->aPeriodo->isNew()) { $affectedRows += $this->aPeriodo->save($con); } $this->setPeriodo($this->aPeriodo); } if ($this->aLocal !== null) { if ($this->aLocal->isModified() || $this->aLocal->isNew()) { $affectedRows += $this->aLocal->save($con); } $this->setLocal($this->aLocal); } if ($this->aWeek !== null) { if ($this->aWeek->isModified() || $this->aWeek->isNew()) { $affectedRows += $this->aWeek->save($con); } $this->setWeek($this->aWeek); } if ($this->isNew()) { $this->modifiedColumns[] = GradeunitPeer::ID; } // If this object has been modified, then save it to the database. if ($this->isModified()) { if ($this->isNew()) { $pk = GradeunitPeer::doInsert($this, $con); $affectedRows += 1; // we are assuming that there is only 1 row per doInsert() which // should always be true here (even though technically // BasePeer::doInsert() can insert multiple rows). $this->setId($pk); //[IMV] update autoincrement primary key $this->setNew(false); } else { $affectedRows += GradeunitPeer::doUpdate($this, $con); } $this->resetModified(); // [HL] After being saved an object is no longer 'modified' } $this->alreadyInSave = false; } return $affectedRows; }
public function get_guardar_cambios() { $data = Input::all(); $registro = Horario::select('*')->where('id_plantilla', $data['idReg'])->get(); //Si aún no hay ningún registro para la materia y grupo seleccionados... if (sizeof($registro) < 1) { foreach ($data['horasDia'] as $dia) { //Se crean los registros $registro = new Horario(); $registro->id_plantilla = $data['idReg']; /* Si el día no está asignado, los valores de hora_inicio, hora_fin y id_aula quedan en null. Índice nulo para horas: 0. Índice nulo para aulas: 1. */ if ($dia[1] == 1) { //Si no hay aula asignada, se añade el valor nulo $registro->id_aula = 1; } else { for ($i = $dia[2]; $i <= $dia[3]; $i++) { $row = Disponible::select('id')->where('id_aula', $dia[1])->where('dia', $dia[0])->where('hora', $i)->get(); $aula = Disponible::find($row[0]->id); $aula->disponible = 0; $aula->save(); } $registro->id_aula = $dia[1]; $registro->hora_inicio = $dia[2]; $registro->hora_fin = $dia[3]; } //Se agrega el valor del día y se guarda el registro. $registro->dia = $dia[0]; $registro->save(); } } else { //Separa los ID de las horas por comas y las convierte en un array. $horas = []; if ($data['ocupadas'] != "") { //Se revisa que no tenga horas ocupadas. $data['ocupadas'] = str_replace(" ", "", $data['ocupadas']); $data['ocupadas'] = strtoupper($data['ocupadas']); $horas = explode(',', $data['ocupadas']); foreach ($horas as $hora) { //Cambia las horas anteriores a libres. $liberarHora = Disponible::find($hora); $liberarHora->disponible = 1; $liberarHora->save(); } } $k = 0; foreach ($data['horasDia'] as $dia) { //Se crean los registros $materia = $registro[$k]['id']; $materia = Horario::find($materia); $k++; /* Si el día no está asignado, los valores de hora_inicio, hora_fin y id_aula quedan en null. Índice nulo para horas: 0. Índice nulo para aulas: 1. */ if ($dia[1] == 1) { //Si no hay aula asignada, se añade el valor nulo $materia->id_aula = 1; } else { for ($i = $dia[2]; $i <= $dia[3]; $i++) { $row = Disponible::select('id')->where('id_aula', $dia[1])->where('dia', $dia[0])->where('hora', $i)->get(); $aula = Disponible::find($row[0]->id); $aula->disponible = 0; $aula->save(); } $materia->id_aula = $dia[1]; $materia->hora_inicio = $dia[2]; $materia->hora_fin = $dia[3]; } //Se agrega el valor del día y se guarda el registro. $materia->dia = $dia[0]; $materia->save(); } } //Se agrega el profesor asignado a la base de datos. $temp = Plantilla::find($data['idReg']); $temp->id_profesor = $data['idProf']; $temp->save(); }