/**
  * Get the validation rules that apply to the request.
  *
  * @return array
  */
 public function rules()
 {
     $rules = ['t_fijo' => array('required', 'regex:/^(?:\\([0-9]\\d{3}\\)\\ ?|[0-9]\\d{3}(?:\\-?|\\ ?))[0-9]\\d{2}[- ]?\\d{4}$/', 'max:13'), 't_movil' => array('regex:/^(?:\\([0-9]\\d{3}\\)\\ ?|[0-9]\\d{3}(?:\\-?|\\ ?))[0-9]\\d{2}[- ]?\\d{4}$/', 'max:13'), 't_oficina' => array('regex:/^(?:\\([0-9]\\d{3}\\)\\ ?|[0-9]\\d{3}(?:\\-?|\\ ?))[0-9]\\d{2}[- ]?\\d{4}$/', 'max:13'), 'p_nombre_primer' => 'required|alpha_spaces|max:20', 'p_nombre_segundo' => 'alpha_spaces|max:20', 'p_apellido_primer' => 'required|alpha_spaces|max:20', 'p_apellido_segundo' => 'alpha_spaces|max:20', 'p_nacionalidad' => 'in:E,V', 'p_cedula' => 'bail|required|digits_between:1,9|unique:persona,p_cedula,' . $this->route->getParameter('personal') . ',p_id', 'p_edo_civil' => 'required|in:C,CO,D,S,V', 'p_fecha_nacimiento' => 'required|date_format:d/m/Y|after:-120 years|before:-18 years', 'p_sexo' => 'required|in:F,M', 'p_direccion' => 'required|max:100', 'p_correo' => 'bail|required|email|max:50|unique:persona,p_correo,' . $this->route->getParameter('personal') . ',p_id', 'per_id_jerarquia' => 'required|in:1,2,3,4,5,6,7,8,9,10,11,12', 'per_seccion' => 'in:A,B,C', $per = Personal::where('per_id_persona', $this->route->getParameter('personal'))->firstOrFail(), 'per_nro_equipo' => 'bail|alpha_dash|min:1|max:10|unique:personal,per_nro_equipo,' . $per->id . ',id', 'pc_id_cargo' => 'required', 'u_permisologia_acc' => 'required|in:A,P', 'u_permisologia_morb' => 'required_if:u_permisologia_acc,P|in:t,f', 'u_status' => 'required|in:t,f'];
     //Para especialidad
     if ($this->request->get('pc_id_cargo') != null) {
         foreach ($this->request->get('pc_id_cargo') as $key => $val) {
             if ($val == '11' || $val == '12') {
                 $rules['per_id_especialidad'] = 'required_if:pc_id_cargo.' . $key . ',11,12|in:1,2,3,4,5,6,7,8,9';
             }
         }
     }
     return $rules;
 }
예제 #2
0
 public static function personalFoundMod($pid)
 {
     return Personal::where('per_id_persona', $pid)->firstOrFail();
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  Request  $request
  * @param  int  $id
  * @return Response
  */
 public function update($id, InsertarPacienteIdentificadoPerRequest $request)
 {
     $requestall = $request->all();
     $persona = Persona::findOrFail($id);
     $telefono = Telefono::findOrFail($persona->p_id_telefono);
     try {
         $personal = Personal::personalFound($persona->p_id);
         $usuario = Usuario::usuarioFound($personal->id);
         //Tabla telefono
         $telefono->fill($requestall);
         $telefono->t_movil = trim($telefono->t_movil);
         $telefono->t_oficina = trim($telefono->t_oficina);
         $telefono->save();
         //Tabla persona
         $persona->fill($requestall);
         $persona->p_nombre_primer = trim($persona->p_nombre_primer);
         $persona->p_nombre_segundo = trim($persona->p_nombre_segundo);
         $persona->p_apellido_primer = trim($persona->p_apellido_primer);
         $persona->p_apellido_segundo = trim($persona->p_apellido_segundo);
         $persona->p_direccion = trim($persona->p_direccion);
         $persona->p_edad = $persona['p_fecha_nacimiento'];
         $persona->save();
         //Tabla usuario
         $usuario->u_usuario = $persona->p_correo;
         $usuario->save();
         PacienteIdentificado::msjPacienteIdenModificado($persona->full_name);
         return redirect()->route('admin.pacienteidentificado.edit.cedula');
     } catch (ModelNotFoundException $e) {
         //Tabla telefono
         $telefono->fill($requestall);
         $telefono->t_movil = trim($telefono->t_movil);
         $telefono->t_oficina = trim($telefono->t_oficina);
         $telefono->save();
         //Tabla persona
         $persona->fill($requestall);
         $persona->p_nombre_primer = trim($persona->p_nombre_primer);
         $persona->p_nombre_segundo = trim($persona->p_nombre_segundo);
         $persona->p_apellido_primer = trim($persona->p_apellido_primer);
         $persona->p_apellido_segundo = trim($persona->p_apellido_segundo);
         $persona->p_direccion = trim($persona->p_direccion);
         $persona->p_edad = $persona['p_fecha_nacimiento'];
         $persona->save();
         PacienteIdentificado::msjPacienteIdenModificado($persona->full_name);
         return redirect()->route('admin.pacienteidentificado.edit.cedula');
     }
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  Request  $request
  * @param  int  $id
  * @return Response
  */
 public function update($id, ModificarPersonalRequest $request)
 {
     $requestall = $request->all();
     $persona = Persona::findOrFail($id);
     $telefono = Telefono::findOrFail($persona->p_id_telefono);
     $personal = Personal::where('per_id_persona', $persona->p_id)->firstOrFail();
     $usuario = Usuario::where('u_id_personal', $personal->id)->firstOrFail();
     //Tabla telefono
     $telefono->fill($requestall);
     $telefono->t_movil = trim($telefono->t_movil);
     $telefono->t_oficina = trim($telefono->t_oficina);
     $telefono->save();
     //Tabla persona
     $persona->fill($requestall);
     $persona->p_nombre_primer = trim($persona->p_nombre_primer);
     $persona->p_nombre_segundo = trim($persona->p_nombre_segundo);
     $persona->p_apellido_primer = trim($persona->p_apellido_primer);
     $persona->p_apellido_segundo = trim($persona->p_apellido_segundo);
     $persona->p_direccion = trim($persona->p_direccion);
     $persona->p_edad = $persona['p_fecha_nacimiento'];
     $persona->save();
     //Tabla personal
     $personal->fill($requestall);
     if ($personal['per_id_especialidad'] == "") {
         $personal['per_id_especialidad'] = null;
     }
     $personal->per_nro_equipo = trim($personal->per_nro_equipo);
     $personal->save();
     //Tabla personal_cargo
     $personal->cargo()->sync($requestall['pc_id_cargo']);
     //Tabla usuario
     $usuario->fill($requestall);
     if ($usuario['u_permisologia_morb'] == "") {
         $usuario['u_permisologia_morb'] = 'f';
     }
     $usuario->u_usuario = $requestall['p_correo'];
     if (isset($requestall['resetpassword']) == "on") {
         $usuario->password = $requestall['p_cedula'];
         $usuario->u_id_pregunta = null;
         $usuario->u_respuesta = null;
         $usuario->u_status_primeravez = "f";
     }
     $usuario->save();
     $personal->msjPersonalModificado($persona->full_name);
     return redirect()->route('admin.personal.index');
 }