Relatório Psicossocial

@php $nomesModulos = [ 'estresse' => 'Estresse Ocupacional', 'assedio' => 'Assédio (Sexual e Moral)', 'deficiencia' => 'Deficiência Estrutural/Organizacional', 'acoes' => 'Ações e Campanhas de Apoio', 'sociofamiliares' => 'Aspectos Sociofamiliares', ]; $interpretacao = [ 0 => 'N/A', 1 => 'MUITO BAIXO (ACEITÁVEL)', 2 => 'BAIXO (ACEITÁVEL)', 3 => 'MODERADO (ACEITÁVEL)', 4 => 'ALTO (TEMPORARIAMENTE ACEITÁVEL)', 5 => 'MUITO ALTO (INACEITÁVEL)', ]; $labelMap = [ 0 => ['texto' => 'Nunca', 'cor' => '#d3d3d3'], 1 => ['texto' => 'Quase nunca', 'cor' => '#4682B4'], 2 => ['texto' => 'Raramente', 'cor' => '#FFD700'], 3 => ['texto' => 'Às vezes', 'cor' => '#32CD32'], 4 => ['texto' => 'Quase sempre', 'cor' => '#FF4500'], 5 => ['texto' => 'Sempre', 'cor' => '#9370DB'], ]; @endphp @foreach ($dados as $modulo => $respostasModulo)

{{ $nomesModulos[$modulo] }}

@php $porSetor = []; foreach ($respostasModulo as $linha) { $setor = $linha->setor ?? 'Não informado'; $porSetor[$setor][] = $linha; } @endphp @foreach ($porSetor as $setor => $respostasSetor) @php $contagem = [0 => 0, 1 => 0, 2 => 0, 3 => 0, 4 => 0, 5 => 0]; $total = 0; $soma = 0; foreach ($respostasSetor as $linha) { $respostas = json_decode($linha->respostas, true); foreach ($respostas as $r) { $partes = explode(',', $r); if (isset($partes[2])) { $valor = (int) trim($partes[2]); $contagem[$valor]++; $total++; $soma += $valor; } } } $media = $total ? ceil($soma / $total) : 0; $textoProb = $interpretacao[$media]; @endphp

GHE: {{ $setor }}

Colaboradores: {{ count($respostasSetor) }}

@foreach ($contagem as $valor => $qtd) @endforeach
Resposta Total
{{ $labelMap[$valor]['texto'] }} {{ $qtd }}

Probabilidade Geral

{{ $textoProb }}

@php $porFonte = []; foreach ($respostasSetor as $linha) { $respostas = json_decode($linha->respostas, true); foreach ($respostas as $r) { $partes = explode(',', $r); if (count($partes) >= 3) { $fonte = trim($partes[0]); $severidade = (int) trim($partes[1]); $valor = (int) trim($partes[2]); if (!isset($porFonte[$fonte])) { $porFonte[$fonte] = ['severidade' => $severidade, 'valores' => []]; } $porFonte[$fonte]['valores'][] = $valor; } } } $mapaRisco = [ 'N/A' => [10, 20, 30, 40, 50], 'MUITO BAIXO (ACEITÁVEL)' => [11, 12, 21], 'BAIXO (ACEITÁVEL)' => [13, 14, 15, 22, 23, 31, 32, 41, 51], 'MODERADO (ACEITÁVEL)' => [24, 25, 33, 34, 42, 43, 52], 'ALTO (TEMPORARIAMENTE ACEITÁVEL)' => [35, 44, 53], 'MUITO ALTO (INACEITÁVEL)' => [45, 54, 55], ]; @endphp @foreach ($porFonte as $fonte => $dadosFonte) @php $mediaFonte = count($dadosFonte['valores']) ? ceil(array_sum($dadosFonte['valores']) / count($dadosFonte['valores'])) : 0; $severidade = $dadosFonte['severidade']; $codigo = intval("{$severidade}{$mediaFonte}"); $nivelRisco = 'N/A'; foreach ($mapaRisco as $nivel => $codigos) { if (in_array($codigo, $codigos)) { $nivelRisco = $nivel; break; } } @endphp @endforeach
Fonte Geradora Severidade Probabilidade Nível do Risco
{{ strtoupper($fonte) }} {{ $severidade }} {{ $mediaFonte }} {{ $nivelRisco }}

@endforeach @if (!$loop->last)
@endif @endforeach