/**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $idTipoExamen = \App\TipoExamenMedico::All()->lists('idTipoExamenMedico');
     $nombreTipoExamen = \App\TipoExamenMedico::All()->lists('nombreTipoExamenMedico');
     $idFrecuenciaMedicion = \App\FrecuenciaMedicion::All()->lists('idFrecuenciaMedicion');
     $nombreFrecuenciaMedicion = \App\FrecuenciaMedicion::All()->lists('nombreFrecuenciaMedicion');
     $frecuenciaAlcohol = \App\FrecuenciaMedicion::All()->lists('nombreFrecuenciaMedicion', 'idFrecuenciaMedicion');
     $ciudad = \App\Ciudad::All()->lists('nombreCiudad', 'idCiudad');
     $tipoIdentificacion = \App\TipoIdentificacion::All()->lists('nombreTipoIdentificacion', 'idTipoIdentificacion');
     $cargo = \App\Cargo::where('Compania_idCompania', '=', \Session::get('idCompania'))->lists('nombreCargo', 'idCargo');
     $zona = \App\Zona::All()->lists('nombreZona', 'idZona');
     $sectorempresa = \App\SectorEmpresa::All()->lists('nombreSectorEmpresa', 'idSectorEmpresa');
     $empleadorcontratista = \App\Tercero::where('tipoTercero', 'like', '%*01*%')->where('Compania_idCompania', '=', \Session::get('idCompania'))->lists('nombreCompletoTercero', 'idTercero');
     $tercero = \App\Tercero::find($id);
     return view('tercero', compact('ciudad', 'tipoIdentificacion', 'cargo', 'idTipoExamen', 'nombreTipoExamen', 'idFrecuenciaMedicion', 'nombreFrecuenciaMedicion', 'frecuenciaAlcohol', 'zona', 'sectorempresa', 'empleadorcontratista'), ['tercero' => $tercero]);
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $frecuenciaMedicion = \App\FrecuenciaMedicion::All()->lists('nombreFrecuenciaMedicion', 'idFrecuenciaMedicion');
     $tipoInspeccion = \App\TipoInspeccion::find($id);
     return view('tipoinspeccion', compact('frecuenciaMedicion'), ['tipoInspeccion' => $tipoInspeccion]);
 }
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function destroy($id)
 {
     \App\FrecuenciaMedicion::destroy($id);
     return redirect('/frecuenciamedicion');
 }
 public function importarMatrizLegal()
 {
     $destinationPath = public_path() . '/imagenes/repositorio/temporal';
     Excel::load($destinationPath . '/Plantilla Matriz Legal.xlsx', function ($reader) {
         $datos = $reader->getActiveSheet();
         $matriz = array();
         $errores = array();
         $fila = 10;
         $posMatriz = 0;
         $posErr = 0;
         //*****************************
         // Fecha
         //*****************************
         // si la celda esta en blanco, reportamos error de obligatoriedad
         $fechaMatriz = $datos->getCellByColumnAndRow(0, 5)->getValue();
         if ($fechaMatriz == '' or $fechaMatriz == null) {
             $fechaMatriz = date("Y-m-d");
         }
         //*****************************
         // Nombre
         //*****************************
         // si la celda esta en blanco, reportamos error de obligatoriedad
         $nombreMatriz = $datos->getCellByColumnAndRow(1, 5)->getValue();
         if ($nombreMatriz == '' or $nombreMatriz == null) {
             $errores[$posErr]["linea"] = 5;
             // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
             $errores[$posErr]["mensaje"] = 'Debe diligenciar el nombre de la matriz';
             $posErr++;
         }
         //*****************************
         // Origen
         //*****************************
         // si la celda esta en blanco, reportamos error de obligatoriedad
         $origenMatriz = $datos->getCellByColumnAndRow(2, 5)->getValue();
         if ($origenMatriz == '' or $origenMatriz == null) {
             $errores[$posErr]["linea"] = 5;
             // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
             $errores[$posErr]["mensaje"] = 'Debe diligenciar el origen de la matriz';
             $posErr++;
         }
         //*****************************
         // Frecuencia Medicion
         //*****************************
         // si la celda esta en blanco, reportamos error de obligatoriedad
         $frecuenciaMedicion = $datos->getCellByColumnAndRow(3, 5)->getValue();
         if ($frecuenciaMedicion == '' or $frecuenciaMedicion == null) {
             $errores[$posErr]["linea"] = 5;
             // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
             $errores[$posErr]["mensaje"] = 'Debe diligenciar la Frecuencia de Medición';
             $posErr;
         } else {
             $consulta = \App\FrecuenciaMedicion::where('codigoFrecuenciaMedicion', '=', $frecuenciaMedicion)->lists('idFrecuenciaMedicion');
             // si se encuentra el id lo guardamos en el array
             if (isset($consulta[0])) {
                 $frecuenciaMedicion = $consulta[0];
             } else {
                 $errores[$posErr]["linea"] = 5;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Frecuencia ' . $frecuenciaMedicion . ' no existe';
                 $posErr;
             }
         }
         while ($datos->getCellByColumnAndRow(0, $fila)->getValue() != '' and $datos->getCellByColumnAndRow(0, $fila)->getValue() != NULL) {
             // para cada registro de matriz recorremos las columnas desde la 0 hasta la 11
             $matriz[$posMatriz]["idMatrizLegalDetalle"] = 0;
             $matriz[$posMatriz]["Compania_idCompania"] = 0;
             for ($columna = 0; $columna <= 11; $columna++) {
                 // en la fila 9 del archivo de excel (oculta) estan los nombres de los campos de la tabla
                 $campo = $datos->getCellByColumnAndRow($columna, 9)->getValue();
                 // si es una celda calculada, la ejeutamos, sino tomamos su valor
                 if ($datos->getCellByColumnAndRow($columna, $fila)->getDataType() == 'f') {
                     $matriz[$posMatriz][$campo] = $datos->getCellByColumnAndRow($columna, $fila)->getCalculatedValue();
                 } else {
                     $matriz[$posMatriz][$campo] = $datos->getCellByColumnAndRow($columna, $fila)->getValue() == null ? '' : $datos->getCellByColumnAndRow($columna, $fila)->getValue();
                 }
             }
             //*****************************
             // Tipo de norma
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["TipoNormaLegal_idTipoNormaLegal"] == '' or $matriz[$posMatriz]["TipoNormaLegal_idTipoNormaLegal"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar el tipo de norma';
                 $posErr++;
             } else {
                 $consulta = \App\TipoNormaLegal::where('codigoTipoNormaLegal', '=', $matriz[$posMatriz]["TipoNormaLegal_idTipoNormaLegal"])->lists('idTipoNormaLegal');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["TipoNormaLegal_idTipoNormaLegal"] = $consulta[0];
                 } else {
                     $errores[$posErr]["linea"] = $fila;
                     // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                     $errores[$posErr]["mensaje"] = 'Tipo Norma Legal ' . $matriz[$posMatriz]["TipoNormaLegal_idTipoNormaLegal"] . ' no existe';
                     $posErr++;
                 }
             }
             //*****************************
             // Expedida por
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["ExpideNormaLegal_idExpideNormaLegal"] == '' or $matriz[$posMatriz]["ExpideNormaLegal_idExpideNormaLegal"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar expedido por';
                 $posErr++;
             } else {
                 $consulta = \App\ExpideNormaLegal::where('codigoExpideNormaLegal', '=', $matriz[$posMatriz]["ExpideNormaLegal_idExpideNormaLegal"])->lists('idExpideNormaLegal');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["ExpideNormaLegal_idExpideNormaLegal"] = $consulta[0];
                 } else {
                     $errores[$posErr]["linea"] = $fila;
                     // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                     $errores[$posErr]["mensaje"] = 'Expide Norma Legal ' . $matriz[$posMatriz]["ExpideNormaLegal_idExpideNormaLegal"] . ' no existe';
                     $posErr++;
                 }
             }
             $posMatriz++;
             $fila++;
         }
         $totalErrores = count($errores);
         if ($totalErrores > 0) {
             $mensaje = '<table cellspacing="0" cellpadding="1" style="width:100%;">' . '<tr>' . '<td colspan="3">' . '<h3>Informe de inconsistencias en Importacion de matriz</h3>' . '</td>' . '</tr>' . '<tr>' . '<td >No. Línea</td>' . '<td >Mensaje</td>' . '</tr>';
             for ($regErr = 0; $regErr < $totalErrores; $regErr++) {
                 $mensaje .= '<tr>' . '<td >' . $errores[$regErr]["linea"] . '</td>' . '<td >' . $errores[$regErr]["mensaje"] . '</td>' . '</tr>';
             }
             $mensaje .= '</table>';
             echo json_encode(array(false, $mensaje));
         } else {
             $indice = array('idMatrizLegal' => 0);
             $data = array('fechaElaboracionMatrizLegal' => $fechaMatriz, 'nombreMatrizLegal' => $nombreMatriz, 'origenMatrizLegal' => $origenMatriz, 'Users_id' => \Session::get("idUsuario"), 'FrecuenciaMedicion_idFrecuenciaMedicion' => $frecuenciaMedicion, 'Compania_idCompania' => \Session::get("idCompania"));
             $matrizlegal = \App\MatrizLegal::updateOrCreate($indice, $data);
             // Consultamos el ultimo id insertado en la matriz legal
             $ultmatrizLegal = \App\MatrizLegal::All()->last();
             $matrizlegal = $ultmatrizLegal->idMatrizLegal;
             // recorremos el array recibido para insertar o actualizar cada registro
             for ($reg = 0; $reg < count($matriz); $reg++) {
                 $indice = array('idMatrizLegalDetalle' => $matriz[$reg]["idMatrizLegalDetalle"]);
                 $data = array('MatrizLegal_idMatrizLegal' => $matrizlegal, 'TipoNormaLegal_idTipoNormaLegal' => $matriz[$reg]['TipoNormaLegal_idTipoNormaLegal'], 'articuloAplicableMatrizLegalDetalle' => $matriz[$reg]['articuloAplicableMatrizLegalDetalle'], 'ExpideNormaLegal_idExpideNormaLegal' => $matriz[$reg]['ExpideNormaLegal_idExpideNormaLegal'], 'exigenciaMatrizLegalDetalle' => $matriz[$reg]['exigenciaMatrizLegalDetalle'], 'fuenteMatrizLegalDetalle' => $matriz[$reg]['fuenteMatrizLegalDetalle'], 'medioMatrizLegalDetalle' => $matriz[$reg]['medioMatrizLegalDetalle'], 'personaMatrizLegalDetalle' => $matriz[$reg]['personaMatrizLegalDetalle'], 'herramientaSeguimientoMatrizLegalDetalle' => $matriz[$reg]['herramientaSeguimientoMatrizLegalDetalle'], 'cumpleMatrizLegalDetalle' => $matriz[$reg]['cumpleMatrizLegalDetalle'], 'fechaVerificacionMatrizLegalDetalle' => $matriz[$reg]['fechaVerificacionMatrizLegalDetalle'], 'accionEvidenciaMatrizLegalDetalle' => $matriz[$reg]['accionEvidenciaMatrizLegalDetalle'], 'controlAImplementarMatrizLegalDetalle' => $matriz[$reg]['controlAImplementarMatrizLegalDetalle'], 'Compania_idCompania' => \Session::get("idCompania"));
                 $matrizlegaldetalle = \App\MatrizLegalDetalle::updateOrCreate($indice, $data);
             }
             echo json_encode(array(true, 'Importacion Exitosa, por favor verifique'));
         }
     });
     unlink($destinationPath . '/Plantilla Matriz Legal.xlsx');
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $idListaTarea = \App\ListaGeneral::where('tipoListaGeneral', 'TareaAltoRiesgo')->lists('idListaGeneral');
     $nombreListaTarea = \App\ListaGeneral::where('tipoListaGeneral', 'TareaAltoRiesgo')->lists('nombreListaGeneral');
     $idTipoExamen = \App\TipoExamenMedico::All()->lists('idTipoExamenMedico');
     $nombreTipoExamen = \App\TipoExamenMedico::All()->lists('nombreTipoExamenMedico');
     $idListaVacuna = \App\ListaGeneral::where('tipoListaGeneral', 'Vacuna')->lists('idListaGeneral');
     $nombreListaVacuna = \App\ListaGeneral::where('tipoListaGeneral', 'Vacuna')->lists('nombreListaGeneral');
     $idListaElemento = \App\ElementoProteccion::where('Compania_idCompania', '=', \Session::get('idCompania'))->lists('idElementoProteccion');
     $nombreListaElemento = \App\ElementoProteccion::where('Compania_idCompania', '=', \Session::get('idCompania'))->lists('nombreElementoProteccion');
     $idFrecuenciaMedicion = \App\FrecuenciaMedicion::All()->lists('idFrecuenciaMedicion');
     $nombreFrecuenciaMedicion = \App\FrecuenciaMedicion::All()->lists('nombreFrecuenciaMedicion');
     $cargoPadre = \App\Cargo::where('Compania_idCompania', "=", \Session::get('idCompania'))->lists('nombreCargo', 'idCargo');
     $cargo = \App\Cargo::find($id);
     // Cuando editamos el cargo, debemos enviar los datos de las multiregistros que se deben cargar
     // Consultamos la multiregistro de EDUCACION (tabla cargoeducacion )
     $cargoeducacion = DB::select("SELECT idCargoEducacion, PerfilCargo_idPerfilCargo as PerfilCargo_idEducacion, nombrePerfilCargo as  nombreEducacion, porcentajeCargoEducacion\n            FROM cargoeducacion  CE\n            LEFT JOIN perfilcargo  PC\n            ON CE.PerfilCargo_idPerfilCargo = PC.idPerfilCargo\n            WHERE Cargo_idCargo = " . $id);
     // para editar el cargo de formacion
     $cargoformacion = DB::select("SELECT idCargoFormacion,PerfilCargo_idPerfilCargo as PerfilCargo_idFormacion, nombrePerfilCargo as  nombreFormacion,porcentajeCargoFormacion\n            FROM cargoformacion CF\n            LEFT JOIN perfilcargo PC\n            ON CF.PerfilCargo_idPerfilCargo = PC.idPerfilCargo\n            WHERE Cargo_idCargo = " . $id);
     // $cargoHabilidad
     $cargohabilidad = DB::select("SELECT idCargoHabilidad,PerfilCargo_idPerfilCargo as PerfilCargo_idHabilidad, nombrePerfilCargo as nombreHabilidad,porcentajeCargoHabilidad\n            FROM cargohabilidad CH\n            LEFT JOIN perfilcargo PC\n            ON CH.PerfilCargo_idPerfilCargo = PC.idPerfilCargo\n            WHERE Cargo_idCargo = " . $id);
     // $cargocompetencia
     $cargocompetencia = DB::select("SELECT idCargoCompetencia,Competencia_idCompetencia,nombreCompetencia\n            FROM cargocompetencia CC\n            LEFT JOIN competencia CP\n            ON CC.Competencia_idCompetencia = CP.idCompetencia\n            WHERE Cargo_idCargo = " . $id);
     // Se retorna todas las consultas
     return view('cargo', compact('idListaTarea', 'nombreListaTarea', 'idTipoExamen', 'nombreTipoExamen', 'idListaVacuna', 'nombreListaVacuna', 'idListaElemento', 'nombreListaElemento', 'idFrecuenciaMedicion', 'nombreFrecuenciaMedicion', 'idFrecuenciaMedicion', 'nombreFrecuenciaMedicion', 'cargoeducacion', 'cargoformacion', 'cargohabilidad', 'cargocompetencia', 'cargoPadre'), ['cargo' => $cargo]);
 }
<?php

$modificar = $_GET['modificar'];
$eliminar = $_GET['eliminar'];
$visibleM = '';
$visibleE = '';
if ($modificar == 1) {
    $visibleM = 'inline-block;';
} else {
    $visibleM = 'none;';
}
if ($eliminar == 1) {
    $visibleE = 'inline-block;';
} else {
    $visibleE = 'none;';
}
$frecuenciamedicion = \App\FrecuenciaMedicion::All();
$row = array();
foreach ($frecuenciamedicion as $key => $value) {
    $row[$key][] = '<a href="frecuenciamedicion/' . $value['idFrecuenciaMedicion'] . '/edit">' . '<span class="glyphicon glyphicon-pencil" style = "display:' . $visibleM . '"></span>' . '</a>&nbsp;' . '<a href="frecuenciamedicion/' . $value['idFrecuenciaMedicion'] . '/edit?accion=eliminar">' . '<span class="glyphicon glyphicon-trash" style = "display:' . $visibleE . '"></span>' . '</a>';
    $row[$key][] = $value['idFrecuenciaMedicion'];
    $row[$key][] = $value['codigoFrecuenciaMedicion'];
    $row[$key][] = $value['nombreFrecuenciaMedicion'];
    $row[$key][] = $value['valorFrecuenciaMedicion'];
    $row[$key][] = $value['unidadFrecuenciaMedicion'];
}
$output['aaData'] = $row;
echo json_encode($output);
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $cuadromando = \App\CuadroMando::find($id);
     $cuadromandoformula = DB::table('cuadromandoformula as CF')->leftJoin('cuadromandocondicion as CC', 'CF.idCuadroMandoFormula', '=', 'CC.CuadroMandoFormula_idCuadroMandoFormula')->where('CF.CuadroMando_idCuadroMando', '=', $id);
     //$cuadromandoformula = \App\CuadroMandoFormula::where('CuadroMando_idCuadroMando',$id)->list();
     $indicador = \App\CuadroMando::where('Compania_idCompania', '=', \Session::get('idCompania'))->where('idCuadroMando', '!=', $id)->lists('indicadorCuadroMando', 'idCuadroMando');
     $companiaobjetivo = \App\CompaniaObjetivo::where('Compania_idCompania', '=', \Session::get('idCompania'))->lists('nombreCompaniaObjetivo', 'idCompaniaObjetivo');
     $proceso = \App\Proceso::where('Compania_idCompania', '=', \Session::get('idCompania'))->lists('nombreProceso', 'idProceso');
     $frecuenciamedicion = \App\FrecuenciaMedicion::All()->lists('nombreFrecuenciaMedicion', 'idFrecuenciaMedicion');
     $tercero = \App\Tercero::where('Compania_idCompania', '=', \Session::get('idCompania'))->lists('nombreCompletoTercero', 'idTercero');
     $modulo = \App\Modulo::All()->lists('nombreModulo', 'idModulo');
     return view('cuadromando', compact('cuadromandoformula', 'indicador', 'companiaobjetivo', 'proceso', 'frecuenciamedicion', 'tercero', 'modulo'), ['cuadromando' => $cuadromando]);
 }
 public function importarMatrizRiesgo()
 {
     $destinationPath = public_path() . '/imagenes/repositorio/temporal';
     Excel::load($destinationPath . '/Plantilla Matriz Riesgo.xlsx', function ($reader) {
         $datos = $reader->getActiveSheet();
         $matriz = array();
         $errores = array();
         $fila = 10;
         $posMatriz = 0;
         $posErr = 0;
         //*****************************
         // Fecha
         //*****************************
         // si la celda esta en blanco, reportamos error de obligatoriedad
         $fechaMatriz = $datos->getCellByColumnAndRow(0, 5)->getValue();
         if ($fechaMatriz == '' or $fechaMatriz == null) {
             $fechaMatriz = date("Y-m-d");
         }
         //*****************************
         // Nombre
         //*****************************
         // si la celda esta en blanco, reportamos error de obligatoriedad
         $nombreMatriz = $datos->getCellByColumnAndRow(1, 5)->getValue();
         if ($nombreMatriz == '' or $nombreMatriz == null) {
             $errores[$posErr]["linea"] = 5;
             // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
             $errores[$posErr]["mensaje"] = 'Debe diligenciar el nombre de la matriz';
             $posErr++;
         }
         //*****************************
         // Frecuencia Medicion
         //*****************************
         // si la celda esta en blanco, reportamos error de obligatoriedad
         $frecuenciaMedicion = $datos->getCellByColumnAndRow(2, 5)->getValue();
         if ($frecuenciaMedicion == '' or $frecuenciaMedicion == null) {
             $errores[$posErr]["linea"] = 5;
             // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
             $errores[$posErr]["mensaje"] = 'Debe diligenciar la Frecuencia de Medición';
             $posErr;
         } else {
             $consulta = \App\FrecuenciaMedicion::where('codigoFrecuenciaMedicion', '=', $frecuenciaMedicion)->lists('idFrecuenciaMedicion');
             // si se encuentra el id lo guardamos en el array
             if (isset($consulta[0])) {
                 $frecuenciaMedicion = $consulta[0];
             } else {
                 $errores[$posErr]["linea"] = 5;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Frecuencia ' . $frecuenciaMedicion . ' no existe';
                 $posErr;
             }
         }
         while ($datos->getCellByColumnAndRow(0, $fila)->getValue() != '' and $datos->getCellByColumnAndRow(0, $fila)->getValue() != NULL) {
             // para cada registro de matriz recorremos las columnas desde la 0 hasta la 24
             $matriz[$posMatriz]["idMatrizRiesgoDetalle"] = 0;
             $matriz[$posMatriz]["Compania_idCompania"] = 0;
             for ($columna = 0; $columna <= 24; $columna++) {
                 // en la fila 9 del archivo de excel (oculta) estan los nombres de los campos de la tabla
                 $campo = $datos->getCellByColumnAndRow($columna, 9)->getValue();
                 // si es una celda calculada, la ejeutamos, sino tomamos su valor
                 if ($datos->getCellByColumnAndRow($columna, $fila)->getDataType() == 'f') {
                     $matriz[$posMatriz][$campo] = $datos->getCellByColumnAndRow($columna, $fila)->getCalculatedValue();
                 } else {
                     $matriz[$posMatriz][$campo] = $datos->getCellByColumnAndRow($columna, $fila)->getValue() == null ? '' : $datos->getCellByColumnAndRow($columna, $fila)->getValue();
                 }
             }
             //*****************************
             // Proceso
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["Proceso_idProceso"] == '' or $matriz[$posMatriz]["Proceso_idProceso"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar el Proceso';
                 $posErr++;
             } else {
                 $consulta = \App\Proceso::where('codigoProceso', '=', $matriz[$posMatriz]["Proceso_idProceso"])->lists('idProceso');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["Proceso_idProceso"] = $consulta[0];
                 } else {
                     $errores[$posErr]["linea"] = $fila;
                     // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                     $errores[$posErr]["mensaje"] = 'Proceso ' . $matriz[$posMatriz]["Proceso_idProceso"] . ' no existe';
                     $posErr++;
                 }
             }
             //*****************************
             // Clasificación
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["ClasificacionRiesgo_idClasificacionRiesgo"] == '' or $matriz[$posMatriz]["ClasificacionRiesgo_idClasificacionRiesgo"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar la Clasificación';
                 $posErr++;
             } else {
                 $consulta = \App\ClasificacionRiesgo::where('codigoClasificacionRiesgo', '=', $matriz[$posMatriz]["ClasificacionRiesgo_idClasificacionRiesgo"])->lists('idClasificacionRiesgo');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["ClasificacionRiesgo_idClasificacionRiesgo"] = $consulta[0];
                 } else {
                     $errores[$posErr]["linea"] = $fila;
                     // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                     $errores[$posErr]["mensaje"] = 'Clasificación ' . $matriz[$posMatriz]["ClasificacionRiesgo_idClasificacionRiesgo"] . ' no existe';
                     $posErr++;
                 }
             }
             //*****************************
             // Tipo Riesgo
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["TipoRiesgo_idTipoRiesgo"] == '' or $matriz[$posMatriz]["TipoRiesgo_idTipoRiesgo"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar el Tipo de Riesgo';
                 $posErr++;
             } else {
                 $consulta = \App\TipoRiesgo::where('codigoTipoRiesgo', '=', $matriz[$posMatriz]["TipoRiesgo_idTipoRiesgo"])->lists('idTipoRiesgo');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["TipoRiesgo_idTipoRiesgo"] = $consulta[0];
                 } else {
                     $errores[$posErr]["linea"] = $fila;
                     // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                     $errores[$posErr]["mensaje"] = 'Tipo Riesgo ' . $matriz[$posMatriz]["TipoRiesgo_idTipoRiesgo"] . ' no existe';
                     $posErr++;
                 }
             }
             //*****************************
             // Tipo Riesgo Detalle
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["TipoRiesgoDetalle_idTipoRiesgoDetalle"] == '' or $matriz[$posMatriz]["TipoRiesgoDetalle_idTipoRiesgoDetalle"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar el Tipo de Riesgo';
                 $posErr++;
             } else {
                 $consulta = \App\TipoRiesgoDetalle::where('nombreTipoRiesgoDetalle', '=', $matriz[$posMatriz]["TipoRiesgoDetalle_idTipoRiesgoDetalle"])->lists('idTipoRiesgoDetalle');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["TipoRiesgoDetalle_idTipoRiesgoDetalle"] = $consulta[0];
                 } else {
                     $errores[$posErr]["linea"] = $fila;
                     // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                     $errores[$posErr]["mensaje"] = 'Tipo Riesgo Detalle ' . $matriz[$posMatriz]["TipoRiesgoDetalle_idTipoRiesgoDetalle"] . ' no existe';
                     $posErr++;
                 }
             }
             //*****************************
             // Tipo Riesgo Salud
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["TipoRiesgoSalud_idTipoRiesgoSalud"] == '' or $matriz[$posMatriz]["TipoRiesgoSalud_idTipoRiesgoSalud"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar el Tipo de Riesgo ';
                 $posErr++;
             } else {
                 $consulta = \App\TipoRiesgoSalud::where('nombreTipoRiesgoSalud', '=', $matriz[$posMatriz]["TipoRiesgoSalud_idTipoRiesgoSalud"])->lists('idTipoRiesgoSalud');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["TipoRiesgoSalud_idTipoRiesgoSalud"] = $consulta[0];
                 } else {
                     $errores[$posErr]["linea"] = $fila;
                     // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                     $errores[$posErr]["mensaje"] = 'Tipo Riesgo Salud ' . $matriz[$posMatriz]["TipoRiesgoSalud_idTipoRiesgoSalud"] . ' no existe';
                     $posErr++;
                 }
             }
             //*****************************
             // Nivel Deficiencia
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["nivelDeficienciaMatrizRiesgoDetalle"] == '' or $matriz[$posMatriz]["nivelDeficienciaMatrizRiesgoDetalle"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar el Nivel de Deficiencia';
                 $posErr++;
             } else {
                 //buscamos el id en el modelo correspondiente
                 $consulta = \App\MatrizRiesgoDetalle::where('nivelDeficienciaMatrizRiesgoDetalle', '=', $matriz[$posMatriz]["nivelDeficienciaMatrizRiesgoDetalle"])->lists('idMatrizRiesgoDetalle');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["idMatrizRiesgoDetalle"] = $consulta[0];
                 }
             }
             //*****************************
             // Nivel Exposición
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["nivelExposicionMatrizRiesgoDetalle"] == '' or $matriz[$posMatriz]["nivelExposicionMatrizRiesgoDetalle"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar el Nivel de Exposición';
                 $posErr++;
             } else {
                 //buscamos el id en el modelo correspondiente
                 $consulta = \App\MatrizRiesgoDetalle::where('nivelExposicionMatrizRiesgoDetalle', '=', $matriz[$posMatriz]["nivelExposicionMatrizRiesgoDetalle"])->lists('idMatrizRiesgoDetalle');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["idMatrizRiesgoDetalle"] = $consulta[0];
                 }
             }
             //*****************************
             // Nivel Consecuencia
             //*****************************
             // si la celda esta en blanco, reportamos error de obligatoriedad
             if ($matriz[$posMatriz]["nivelConsecuenciaMatrizRiesgoDetalle"] == '' or $matriz[$posMatriz]["nivelConsecuenciaMatrizRiesgoDetalle"] == null) {
                 $errores[$posErr]["linea"] = $fila;
                 // $errores[$posErr]["nombre"] = $matriz[ $posMatriz]["nombreCompletoTercero"];
                 $errores[$posErr]["mensaje"] = 'Debe diligenciar el Nivel de Consecuencia';
                 $posErr++;
             } else {
                 //buscamos el id en el modelo correspondiente
                 $consulta = \App\MatrizRiesgoDetalle::where('nivelConsecuenciaMatrizRiesgoDetalle', '=', $matriz[$posMatriz]["nivelConsecuenciaMatrizRiesgoDetalle"])->lists('idMatrizRiesgoDetalle');
                 // si se encuentra el id lo guardamos en el array
                 if (isset($consulta[0])) {
                     $matriz[$posMatriz]["idMatrizRiesgoDetalle"] = $consulta[0];
                 }
             }
             $posMatriz++;
             $fila++;
         }
         $totalErrores = count($errores);
         if ($totalErrores > 0) {
             $mensaje = '<table cellspacing="0" cellpadding="1" style="width:100%;">' . '<tr>' . '<td colspan="3">' . '<h3>Informe de inconsistencias en Importacion de matriz</h3>' . '</td>' . '</tr>' . '<tr>' . '<td >No. Línea</td>' . '<td >Mensaje</td>' . '</tr>';
             for ($regErr = 0; $regErr < $totalErrores; $regErr++) {
                 $mensaje .= '<tr>' . '<td >' . $errores[$regErr]["linea"] . '</td>' . '<td >' . $errores[$regErr]["mensaje"] . '</td>' . '</tr>';
             }
             $mensaje .= '</table>';
             echo json_encode(array(false, $mensaje));
         } else {
             $indice = array('idMatrizRiesgo' => 0);
             $data = array('fechaElaboracionMatrizRiesgo' => $fechaMatriz, 'nombreMatrizRiesgo' => $nombreMatriz, 'Users_id' => \Session::get("idUsuario"), 'FrecuenciaMedicion_idFrecuenciaMedicion' => $frecuenciaMedicion, 'Compania_idCompania' => \Session::get("idCompania"));
             $matrizriesgo = \App\MatrizRiesgo::updateOrCreate($indice, $data);
             // Consultamos el ultimo id insertado en la matriz de riesgo
             $ultmatrizRiesgo = \App\MatrizRiesgo::All()->last();
             $matrizriesgo = $ultmatrizRiesgo->idMatrizRiesgo;
             // recorremos el array recibido para insertar o actualizar cada registro
             for ($reg = 0; $reg < count($matriz); $reg++) {
                 $probabilidad = '';
                 $nivelProbabilidad = (int) $matriz[$reg]['nivelDeficienciaMatrizRiesgoDetalle'] * (int) ['nivelExposicionMatrizRiesgoDetalle'];
                 if ($nivelProbabilidad >= 24 && $nivelProbabilidad <= 40) {
                     $probabilidad = 'Muy Alto';
                 } else {
                     if ($nivelProbabilidad >= 10 && $nivelProbabilidad <= 20) {
                         $probabilidad = 'Alto';
                     } else {
                         if ($nivelProbabilidad >= 6 && $nivelProbabilidad <= 8) {
                             $probabilidad = 'Medio';
                         } else {
                             if ($nivelProbabilidad >= 2 && $nivelProbabilidad <= 4) {
                                 $probabilidad = 'Bajo';
                             } else {
                                 if ($nivelProbabilidad == 0) {
                                     $probabilidad = '';
                                 }
                             }
                         }
                     }
                 }
                 $nivelRiesgo = (int) $probabilidad * (int) $matriz[$reg]['nivelConsecuenciaMatrizRiesgoDetalle'];
                 if ($nivelRiesgo >= 600 && $nivelRiesgo <= 4000) {
                     $nombreRiesgo = 'I';
                     $aceptacionRiesgo = 'No aceptable';
                 } else {
                     if ($nivelRiesgo >= 150 && $nivelRiesgo <= 500) {
                         $nombreRiesgo = 'II';
                         $aceptacionRiesgo = 'No aceptable o aceptable con control específico';
                     } else {
                         if ($nivelRiesgo >= 40 && $nivelRiesgo <= 120) {
                             $nombreRiesgo = 'III';
                             $aceptacionRiesgo = 'Aceptable';
                         } else {
                             if ($nivelRiesgo == 20) {
                                 $nombreRiesgo = 'IV';
                                 $aceptacionRiesgo = 'Aceptable';
                             } else {
                                 if ($nivelRiesgo == 0) {
                                     $nombreRiesgo = '';
                                     $aceptacionRiesgo = '';
                                 }
                             }
                         }
                     }
                 }
                 $indice = array('idMatrizRiesgoDetalle' => $matriz[$reg]["idMatrizRiesgoDetalle"]);
                 $data = array('MatrizRiesgo_idMatrizRiesgo' => $matrizriesgo, 'Proceso_idProceso' => $matriz[$reg]['Proceso_idProceso'], 'rutinariaMatrizRiesgoDetalle' => $matriz[$reg]['rutinariaMatrizRiesgoDetalle'], 'ClasificacionRiesgo_idClasificacionRiesgo' => $matriz[$reg]['ClasificacionRiesgo_idClasificacionRiesgo'], 'TipoRiesgo_idTipoRiesgo' => $matriz[$reg]['TipoRiesgo_idTipoRiesgo'], 'TipoRiesgoDetalle_idTipoRiesgoDetalle' => $matriz[$reg]['TipoRiesgoDetalle_idTipoRiesgoDetalle'], 'TipoRiesgoSalud_idTipoRiesgoSalud' => $matriz[$reg]['TipoRiesgoSalud_idTipoRiesgoSalud'], 'vinculadosMatrizRiesgoDetalle' => $matriz[$reg]['vinculadosMatrizRiesgoDetalle'], 'temporalesMatrizRiesgoDetalle' => $matriz[$reg]['temporalesMatrizRiesgoDetalle'], 'totalExpuestosMatrizRiesgoDetalle' => $matriz[$reg]['vinculadosMatrizRiesgoDetalle'] + $matriz[$reg]['temporalesMatrizRiesgoDetalle'], 'fuenteMatrizRiesgoDetalle' => $matriz[$reg]['fuenteMatrizRiesgoDetalle'], 'medioMatrizRiesgoDetalle' => $matriz[$reg]['medioMatrizRiesgoDetalle'], 'personaMatrizRiesgoDetalle' => $matriz[$reg]['personaMatrizRiesgoDetalle'], 'nivelDeficienciaMatrizRiesgoDetalle' => $matriz[$reg]['nivelDeficienciaMatrizRiesgoDetalle'], 'nivelExposicionMatrizRiesgoDetalle' => $matriz[$reg]['nivelExposicionMatrizRiesgoDetalle'], 'nivelProbabilidadMatrizRiesgoDetalle' => $nivelProbabilidad, 'nombreProbabilidadMatrizRiesgoDetalle' => $probabilidad, 'nivelConsecuenciaMatrizRiesgoDetalle' => $matriz[$reg]['nivelConsecuenciaMatrizRiesgoDetalle'], 'nivelRiesgoMatrizRiesgoDetalle' => $nivelRiesgo, 'nombreRiesgoMatrizRiesgoDetalle' => $nombreRiesgo, 'aceptacionRiesgoMatrizRiesgoDetalle' => $aceptacionRiesgo, 'eliminacionMatrizRiesgoDetalle' => $matriz[$reg]['eliminacionMatrizRiesgoDetalle'], 'sustitucionMatrizRiesgoDetalle' => $matriz[$reg]['sustitucionMatrizRiesgoDetalle'], 'controlMatrizRiesgoDetalle' => $matriz[$reg]['controlMatrizRiesgoDetalle'], 'elementoProteccionMatrizRiesgoDetalle' => $matriz[$reg]['elementoProteccionMatrizRiesgoDetalle'], 'observacionMatrizRiesgoDetalle' => $matriz[$reg]['observacionMatrizRiesgoDetalle'], 'Compania_idCompania' => \Session::get("idCompania"));
                 $matrizriesgodetalle = \App\MatrizRiesgoDetalle::updateOrCreate($indice, $data);
             }
             echo json_encode(array(true, 'Importacion Exitosa, por favor verifique'));
         }
     });
     unlink($destinationPath . '/Plantilla Matriz Riesgo.xlsx');
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $grupoApoyo = \App\GrupoApoyo::find($id);
     $frecuenciaMedicion = \App\FrecuenciaMedicion::All()->lists('nombreFrecuenciaMedicion', 'idFrecuenciaMedicion');
     return view('grupoapoyo', compact('frecuenciaMedicion'), ['grupoApoyo' => $grupoApoyo]);
 }