/**
  * Display the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function show($id, Request $request)
 {
     if (isset($request['accion']) and $request['accion'] == 'imprimir') {
         $idPlanCapacitacion = \App\ActaCapacitacion::find($id);
         $actaCapacitacion = DB::table('actacapacitacion as ac')->leftJoin('plancapacitacion as pc', 'ac.PlanCapacitacion_idPlanCapacitacion', '=', 'pc.idPlanCapacitacion')->leftJoin('tercero as t', 'pc.Tercero_idResponsable', '=', 't.idTercero')->select(DB::raw('numeroActaCapacitacion, fechaElaboracionActaCapacitacion, PlanCapacitacion_idPlanCapacitacion, idPlanCapacitacion, tipoPlanCapacitacion, nombrePlanCapacitacion, objetivoPlanCapacitacion, Tercero_idResponsable, t.nombreCompletoTercero, personalInvolucradoPlanCapacitacion, fechaInicioPlanCapacitacion, fechaFinPlanCapacitacion, metodoEficaciaPlanCapacitacion'))->where('idActaCapacitacion', '=', $id)->get();
         $planCapacitacionTema = DB::table('plancapacitaciontema as pct')->leftJoin('tercero as t', 'pct.Tercero_idCapacitador', '=', 't.idTercero')->select(DB::raw('nombrePlanCapacitacionTema, Tercero_idCapacitador, t.nombreCompletoTercero,fechaPlanCapacitacionTema, horaPlanCapacitacionTema,dictadaPlanCapacitacionTema,cumpleObjetivoPlanCapacitacionTema'))->orderby('idPlanCapacitacionTema', 'ASC')->where('PlanCapacitacion_idPlanCapacitacion', '=', $idPlanCapacitacion->PlanCapacitacion_idPlanCapacitacion)->get();
         $actaCapacitacionAsistente = DB::table('actacapacitacionasistente as aca')->leftJoin('tercero as t', 'aca.Tercero_idAsistente', '=', 't.idTercero')->leftJoin('cargo as c', 't.Cargo_idCargo', '=', 'c.idCargo')->select(DB::raw('ActaCapacitacion_idActaCapacitacion, Tercero_idAsistente, t.nombreCompletoTercero, t.Cargo_idCargo, c.nombreCargo'))->orderby('idActaCapacitacionAsistente', 'ASC')->where('ActaCapacitacion_idActaCapacitacion', '=', $id)->get();
         return view('formatos.actacapacitacionimpresion', compact('actaCapacitacion', 'planCapacitacionTema', 'actaCapacitacionAsistente'));
     }
     $planCapacitacion = \App\PlanCapacitacion::find($request['idPlanCapacitacion']);
     $tercero = \App\Tercero::find($planCapacitacion->Tercero_idResponsable);
     if ($request->ajax()) {
         $plan = DB::select('SELECT idPlanCapacitacionTema as PlanCapacitacionTema_idPlanCapacitacionTema, 0 as idActaCapacitacionTema, nombrePlanCapacitacionTema, PCT.Tercero_idCapacitador, fechaPlanCapacitacionTema, horaPlanCapacitacionTema, 1 as dictadaPlanCapacitacionTema,  0 as cumpleObjetivoPlanCapacitacionTema
             FROM plancapacitaciontema PCT
             LEFT JOIN actacapacitaciontema ACT
                 ON PCT.idPlanCapacitacionTema = ACT.PlanCapacitacionTema_idPlanCapacitacionTema
             LEFT JOIN plancapacitacion PC 
                 ON PC.idPlanCapacitacion = PCT.PlanCapacitacion_idPlanCapacitacion
             WHERE   PlanCapacitacion_idPlanCapacitacion = ' . $request['idPlanCapacitacion'] . ' and Compania_idCompania = ' . \Session::get("idCompania") . ' and (cumpleObjetivoActaCapacitacionTema = 0 or cumpleObjetivoActaCapacitacionTema IS NULL)');
         // $plan = DB::select(
         //                 'SELECT idPlanCapacitacionTema as PlanCapacitacionTema_idPlanCapacitacionTema, 0 as idActaCapacitacionTema, nombrePlanCapacitacionTema, PCT.Tercero_idCapacitador, fechaPlanCapacitacionTema, horaPlanCapacitacionTema, 1 as dictadaPlanCapacitacionTema,  0 as cumpleObjetivoPlanCapacitacionTema
         //                 FROM plancapacitaciontema PCT
         //                 LEFT JOIN actacapacitaciontema ACT
         //                     ON PCT.idPlanCapacitacionTema = ACT.PlanCapacitacionTema_idPlanCapacitacionTema
         //                 WHERE   PlanCapacitacion_idPlanCapacitacion = '.$request['idPlanCapacitacion'].' and
         //                         ACT.PlanCapacitacionTema_idPlanCapacitacionTema IS NULL OR
         //                         (dictadaActaCapacitacionTema = 0 OR cumpleObjetivoActaCapacitacionTema = 0)');
         return response()->json([$planCapacitacion, $plan, $tercero]);
     }
 }
Exemplo n.º 2
0
 /**
  * Update the specified resource in storage.
  *
  * @param  Request  $request
  * @param  int  $id
  * @return Response
  */
 public function update(TerceroRequest $request, $id)
 {
     if ($request['respuesta'] != 'falso') {
         $tercero = \App\Tercero::find($id);
         $tercero->fill($request->all());
         $tercero->Cargo_idCargo = ($request['Cargo_idCargo'] == '' or $request['Cargo_idCargo'] == 0) ? null : $request['Cargo_idCargo'];
         $tercero->Zona_idZona = ($request['Zona_idZona'] == '' or $request['Zona_idZona'] == 0) ? null : $request['Zona_idZona'];
         $tercero->SectorEmpresa_idSectorEmpresa = ($request['SectorEmpresa_idSectorEmpresa'] == '' or $request['SectorEmpresa_idSectorEmpresa'] == 0) ? null : $request['SectorEmpresa_idSectorEmpresa'];
         $tercero->Tercero_idEmpleadorContratista = ($request['Tercero_idEmpleadorContratista'] == '' or $request['Tercero_idEmpleadorContratista'] == 0) ? null : $request['Tercero_idEmpleadorContratista'];
         if (null !== Input::file('imagenTercero')) {
             $image = Input::file('imagenTercero');
             $imageName = $request->file('imagenTercero')->getClientOriginalName();
             $manager = new ImageManager();
             $manager->make($image->getRealPath())->heighten(500)->save('imagenes/tercero/' . $imageName);
             $tercero->imagenTercero = 'tercero/' . $imageName;
         }
         $tercero->save();
         $indice = array('Tercero_idTercero' => $id);
         $data = array('fechaNacimientoTerceroInformacion' => $request['fechaNacimientoTerceroInformacion'], 'fechaIngresoTerceroInformacion' => $request['fechaIngresoTerceroInformacion'], 'fechaRetiroTerceroInformacion' => $request['fechaRetiroTerceroInformacion'], 'tipoContratoTerceroInformacion' => $request['tipoContratoTerceroInformacion'], 'aniosExperienciaTerceroInformacion' => $request['aniosExperienciaTerceroInformacion'], 'educacionTerceroInformacion' => $request['educacionTerceroInformacion'], 'experienciaTerceroInformacion' => $request['experienciaTerceroInformacion'], 'formacionTerceroInformacion' => $request['formacionTerceroInformacion'], 'estadoCivilTerceroInformacion' => $request['estadoCivilTerceroInformacion'], 'numeroHijosTerceroInformacion' => $request['numeroHijosTerceroInformacion'], 'composicionFamiliarTerceroInformacion' => $request['composicionFamiliarTerceroInformacion'], 'personasACargoTerceroInformacion' => $request['personasACargoTerceroInformacion'], 'estratoSocialTerceroInformacion' => $request['estratoSocialTerceroInformacion'], 'tipoViviendaTerceroInformacion' => $request['tipoViviendaTerceroInformacion'], 'tipoTransporteTerceroInformacion' => $request['tipoTransporteTerceroInformacion'], 'HobbyTerceroInformacion' => $request['HobbyTerceroInformacion'], 'actividadFisicaTerceroInformacion' => $request['actividadFisicaTerceroInformacion'], 'consumeLicorTerceroInformacion' => $request['consumeLicorTerceroInformacion'], 'FrecuenciaMedicion_idConsumeLicor' => ($request['FrecuenciaMedicion_idConsumeLicor'] == '' or $request['FrecuenciaMedicion_idConsumeLicor'] == 0) ? null : $request['FrecuenciaMedicion_idConsumeLicor'], 'consumeCigarrilloTerceroInformacion' => $request['consumeCigarrilloTerceroInformacion']);
         $terceroinformacion = \App\TerceroInformacion::updateOrCreate($indice, $data);
         \App\TerceroContacto::where('Tercero_idTercero', $id)->delete();
         \App\TerceroProducto::where('Tercero_idTercero', $id)->delete();
         \App\TerceroExamenMedico::where('Tercero_idTercero', $id)->delete();
         // \App\TerceroArchivo::where('Tercero_idTercero',$id)->delete();
         $contadorContacto = count($request['nombreTerceroContacto']);
         for ($i = 0; $i < $contadorContacto; $i++) {
             \App\TerceroContacto::create(['Tercero_idTercero' => $id, 'nombreTerceroContacto' => $request['nombreTerceroContacto'][$i], 'cargoTerceroContacto' => $request['cargoTerceroContacto'][$i], 'telefonoTerceroContacto' => $request['telefonoTerceroContacto'][$i], 'movilTerceroContacto' => $request['movilTerceroContacto'][$i], 'correoElectronicoTerceroContacto' => $request['correoElectronicoTerceroContacto'][$i]]);
         }
         $contadorProducto = count($request['codigoTerceroProducto']);
         for ($i = 0; $i < $contadorProducto; $i++) {
             \App\TerceroProducto::create(['Tercero_idTercero' => $id, 'codigoTerceroProducto' => $request['codigoTerceroProducto'][$i], 'nombreTerceroProducto' => $request['nombreTerceroProducto'][$i]]);
         }
         $contadorExamen = count($request['TipoExamenMedico_idTipoExamenMedico']);
         for ($i = 0; $i < $contadorExamen; $i++) {
             \App\TerceroExamenMedico::create(['Tercero_idTercero' => $id, 'TipoExamenMedico_idTipoExamenMedico' => $request['TipoExamenMedico_idTipoExamenMedico'][$i], 'ingresoTerceroExamenMedico' => $request['ingresoTerceroExamenMedico'][$i], 'retiroTerceroExamenMedico' => $request['retiroTerceroExamenMedico'][$i], 'periodicoTerceroExamenMedico' => $request['periodicoTerceroExamenMedico'][$i], 'FrecuenciaMedicion_idFrecuenciaMedicion' => $request['FrecuenciaMedicion_idFrecuenciaMedicion'][$i]]);
         }
         // HAGO UN INSERT A LOS NUEVOS ARCHIVOS SUBIDOS EN EL DROPZONE
         if ($request['archivoTerceroArray'] != '') {
             $arrayImage = $request['archivoTerceroArray'];
             $arrayImage = substr($arrayImage, 0, strlen($arrayImage) - 1);
             $arrayImage = explode(",", $arrayImage);
             $ruta = '';
             for ($i = 0; $i < count($arrayImage); $i++) {
                 if ($arrayImage[$i] != '' || $arrayImage[$i] != 0) {
                     $origen = public_path() . '/imagenes/repositorio/temporal/' . $arrayImage[$i];
                     $destinationPath = public_path() . '/imagenes/tercero/' . $arrayImage[$i];
                     if (file_exists($origen)) {
                         copy($origen, $destinationPath);
                         unlink($origen);
                         $ruta = '/tercero/' . $arrayImage[$i];
                         DB::table('terceroarchivo')->insert(['idTerceroArchivo' => '0', 'Tercero_idTercero' => $tercero->idTercero, 'fechaTerceroArchivo' => $request['fechaTerceroArchivo'], 'rutaTerceroArchivo' => $ruta]);
                     } else {
                         echo "No existe el archivo";
                     }
                 }
             }
         }
         // HAGO UN UPDATE DE LOS DATOS
         // $index = array(
         //     'idTerceroArchivo' => $request['idTerceroArchivo'][$i]);
         // $data= array(
         //     'Tercero_idTercero' => $tercero->idTercero,
         //     'tituloTerceroArchivo' => '',
         //     'fechaTerceroArchivo' => $request['fechaTerceroArchivo'][$i],
         //     'descripcionTerceroArchivo' => '',
         //     'rutaTerceroArchivo' => '');
         // $save = \App\TerceroArchivo::updateOrCreate($index, $data);
         // for ($i=0; $i < ; $i++)
         // {
         //     DB::table('terceroarchivo')->update(['idTerceroArchivo' => '', 'Tercero_idTercero' =>$tercero->idTercero,'fechaTerceroArchivo' => '', 'descripcionTerceroArchivo' => '','rutaTerceroArchivo' => '']);
         // }
         // ELIMINO LOS ARCHIVOS
         $idsEliminar = $request['eliminarArchivo'];
         $idsEliminar = substr($idsEliminar, 0, strlen($idsEliminar) - 1);
         if ($idsEliminar != '') {
             $idsEliminar = explode(',', $idsEliminar);
             \App\TerceroArchivo::whereIn('idTerceroArchivo', $idsEliminar)->delete();
         }
         return redirect('/tercero');
     }
 }
Exemplo n.º 3
0
 protected function grabarDetalle($id, $request)
 {
     // en el formulario hay un campo oculto en el que almacenamos los id que se eliminan separados por coma
     // en este proceso lo convertimos en array y eliminamos dichos id de la tabla de detalle
     $idsEliminar = explode(',', $request['eliminarRecomendacion']);
     \App\AccidenteRecomendacion::whereIn('idAccidenteRecomendacion', $idsEliminar)->delete();
     $contadorDetalle = count($request['idAccidenteRecomendacion']);
     $causas = '';
     for ($i = 0; $i < $contadorDetalle; $i++) {
         $indice = array('idAccidenteRecomendacion' => $request['idAccidenteRecomendacion'][$i]);
         $data = array('Accidente_idAccidente' => $id, 'controlAccidenteRecomendacion' => $request['controlAccidenteRecomendacion'][$i], 'fuenteAccidenteRecomendacion' => $request['fuenteAccidenteRecomendacion'][$i], 'medioAccidenteRecomendacion' => $request['medioAccidenteRecomendacion'][$i], 'personaAccidenteRecomendacion' => $request['personaAccidenteRecomendacion'][$i], 'fechaVerificacionAccidenteRecomendacion' => $request['fechaVerificacionAccidenteRecomendacion'][$i], 'medidaEfectivaAccidenteRecomendacion' => $request['medidaEfectivaAccidenteRecomendacion'][$i], 'Proceso_idResponsable' => $request['Proceso_idResponsable'][$i]);
         $respuesta = \App\AccidenteRecomendacion::updateOrCreate($indice, $data);
         $causas .= $request['controlAccidenteRecomendacion'][$i] . ', ';
     }
     $causas = substr($causas, 0, strlen($causas) - 2);
     //************************************************
     //
     //  R E P O R T E   A C C I O N E S
     //  C O R R E C T I V A S,  P R E V E N T I V A S
     //  Y   D E   M E J O R A
     //
     //************************************************
     // todos los accidentes o incidentes los  insertamos un registro en el ACPM (Accion Correctiva)
     //COnsultamos el nombre del tercero empleado
     $nombreTercero = \App\Tercero::find($request['Tercero_idEmpleado']);
     guardarReporteACPM($fechaAccion = date("Y-m-d"), $idModulo = 3, $tipoAccion = 'Correctiva', $descripcionAccion = 'Para el ' . $request['clasificacionAccidente'] . ' de ' . $nombreTercero->nombreCompletoTercero . ', se recomienda implementar controles por las siguientes causas: ' . $causas);
     // en el formulario hay un campo oculto en el que almacenamos los id que se eliminan separados por coma
     // en este proceso lo convertimos en array y eliminamos dichos id de la tabla de detalle
     $idsEliminar = explode(',', $request['eliminarEquipo']);
     \App\AccidenteEquipo::whereIn('idAccidenteEquipo', $idsEliminar)->delete();
     $contadorDetalle = count($request['idAccidenteEquipo']);
     for ($i = 0; $i < $contadorDetalle; $i++) {
         $indice = array('idAccidenteEquipo' => $request['idAccidenteEquipo'][$i]);
         $data = array('Accidente_idAccidente' => $id, 'Tercero_idInvestigador' => $request['Tercero_idInvestigador'][$i]);
         $respuesta = \App\AccidenteEquipo::updateOrCreate($indice, $data);
     }
 }
 public function grabarDetalle($request, $id)
 {
     $files = Input::file('archivoExamenMedicoDetalle');
     $contadorDetalle = count($request['TipoExamenMedico_idTipoExamenMedico']);
     for ($i = 0; $i < $contadorDetalle; $i++) {
         $indice = array('idExamenMedicoDetalle' => $request['idExamenMedicoDetalle'][$i]);
         $data = array('ExamenMedico_idExamenMedico' => $id, 'TipoExamenMedico_idTipoExamenMedico' => $request['TipoExamenMedico_idTipoExamenMedico'][$i], 'resultadoExamenMedicoDetalle' => $request['resultadoExamenMedicoDetalle'][$i], 'observacionExamenMedicoDetalle' => $request['observacionExamenMedicoDetalle'][$i]);
         $file = $files[$i];
         $rutaImagen = '';
         $destinationPath = 'imagenes/examenmedico/';
         if (isset($file)) {
             $filename = $destinationPath . $file->getClientOriginalName();
             $manager = new ImageManager();
             $manager->make($file->getRealPath())->save($filename);
             $rutaImagen = 'examenmedico/' . $file->getClientOriginalName();
             $data['fotoExamenMedicoDetalle'] = $rutaImagen;
         } else {
             $rutaImagen = $request['fotoExamenMedicoDetalle'][$i];
         }
         $respuesta = \App\ExamenMedicoDetalle::updateOrCreate($indice, $data);
         // verificamos si no tiene el chulo SE CUMPLE, insertamos un registro en el ACPM (Accion Correctiva)
         if ($request['resultadoExamenMedicoDetalle'][$i] < $request['limiteInferiorTipoExamenMedico'][$i] or $request['resultadoExamenMedicoDetalle'][$i] > $request['limiteSuperiorTipoExamenMedico'][$i]) {
             //Consultamos el nombre del tercero empleado
             $nombreTercero = \App\Tercero::find($request['Tercero_idTercero']);
             //COnsultamos el nombre del tercero empleado
             $nombreTercero = \App\Tercero::find($request['Tercero_idTercero']);
             //************************************************
             //
             //  R E P O R T E   A C C I O N E S
             //  C O R R E C T I V A S,  P R E V E N T I V A S
             //  Y   D E   M E J O R A
             //
             //************************************************
             // todos los accidentes o incidentes los  insertamos un registro en el ACPM (Accion Correctiva)
             //COnsultamos el nombre del tercero empleado
             $nombreTercero = \App\Tercero::find($request['Tercero_idTercero']);
             guardarReporteACPM($fechaAccion = date("Y-m-d"), $idModulo = 22, $tipoAccion = 'Correctiva', $descripcionAccion = 'El Examen Medico ' . $request['nombreTipoExamenMedico'][$i] . ' de ' . $nombreTercero->nombreCompletoTercero . ', no esta dentro de los limites (Resultado ' . $request['resultadoExamenMedicoDetalle'][$i] . ' Rango de ' . $request['limiteInferiorTipoExamenMedico'][$i] . ' a ' . $request['limiteSuperiorTipoExamenMedico'][$i] . ')');
         }
     }
 }