
<?php $__env->startSection('title', 'Relatórios'); ?>

<?php $__env->startSection('content'); ?>
<?php
use Illuminate\Support\Str;
$user = Auth::user();
$modulos = [
'estresse' => 'Estresse Ocupacional',
'assedio' => 'Assédio (Sexual e Moral)',
'deficiencia' => 'Deficiência Estrutural/Organizacional',
'acoes' => 'Ações e Campanhas de Apoio',
'sociofamiliares' => 'Aspectos Sociofamiliares',
];
?>

<!-- Chart.js e Plugin -->
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-datalabels@2"></script>

<div class="container d-flex justify-content-between align-items-center mb-3">
    <a href="<?php echo e(route('ADM')); ?>" class="btn btn-primary-dark">← Voltar para o Dashboard</a>
    <a href="<?php echo e(route('relatorios.pdf')); ?>" class="btn btn-danger">📄 Baixar PDF</a>
</div>

<div class="container d-flex justify-content-center align-items-center">
    <div class="card shadow p-4 col-12">
        <h3 class="text-center text-primary mb-4">Relatórios PsicoSocial</h3>

        <ul class="nav nav-tabs mb-4" id="moduloTabs" role="tablist">
            <?php $__currentLoopData = $modulos; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $mod => $titulo): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
            <li class="nav-item" role="presentation">
                <button class="nav-link <?php echo e($loop->first ? 'active' : ''); ?>" id="<?php echo e($mod); ?>-tab" data-bs-toggle="tab" data-bs-target="#<?php echo e($mod); ?>" type="button" role="tab">
                    <?php echo e($titulo); ?>

                </button>
            </li>
            <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
        </ul>

        <div class="tab-content" id="moduloTabsContent">
            <?php $__currentLoopData = $modulos; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $mod => $titulo): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
            <div class="tab-pane fade <?php echo e($loop->first ? 'show active' : ''); ?>" id="<?php echo e($mod); ?>" role="tabpanel">

                <?php if(empty($dados[$mod]) || count($dados[$mod]) === 0): ?>
                <div class="alert alert-warning">Ainda não há respostas para este módulo.</div>
                <?php else: ?>
                <?php
                $porSetor = [];
                foreach ($dados[$mod] as $linha) {
                $setor = $linha->setor ?? 'Não informado';
                if (!isset($porSetor[$setor])) $porSetor[$setor] = [];
                $porSetor[$setor][] = $linha;
                }
                ?>

                <?php $__currentLoopData = $porSetor; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $setor => $respostasSetor): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                <?php
                $contagemRespostas = [0 => 0, 1 => 0, 2 => 0, 3 => 0, 4 => 0, 5 => 0];
                $totalPeso = 0;
                $somaPonderada = 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]);
                if (isset($contagemRespostas[$valor])) {
                $contagemRespostas[$valor]++;
                $totalPeso++;
                $somaPonderada += $valor;
                }
                }
                }
                }

                $media = $totalPeso ? ceil($somaPonderada / $totalPeso) : 0;

                $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'],
                ];

                $textoProb = $interpretacao[$media];
                ?>

                <div class="card mb-4 p-3">
                    <h4 class="text-center bg-primary-dark py-1 px-1 rounded-1 shadow-sm fw-bold mb-1">
                        <?php echo e($loop->iteration < 10 ? '0' . $loop->iteration : $loop->iteration); ?>. <?php echo e($titulo); ?>

                    </h4>
                    <div class="row">
                        <div class="col">
                            <h5 class="text-primary mb-0">GHE: <?php echo e($setor); ?></h5>
                        </div>
                        <div class="col text-end">
                            <h5 class="text-primary mb-0">Colaboradores: <?php echo e(count($respostasSetor)); ?></h5>
                        </div>
                    </div>
                    <hr>

                    <div class="row">
                        <!-- TABELA -->
                        <div class="col-md-4">
                            <div class="table-responsive">
                                <table class="table table-bordered text-center align-middle">
                                    <thead class="table-dark">
                                        <tr>
                                            <th>Resposta</th>
                                            <th>Total</th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        <?php $__currentLoopData = $contagemRespostas; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $valor => $qtd): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                                        <tr>
                                            <td style="background-color: <?php echo e($labelMap[$valor]['cor']); ?>; color: '#000' }};">
                                                <strong><?php echo e($labelMap[$valor]['texto']); ?></strong>
                                            </td>
                                            <td style="background-color: <?php echo e($labelMap[$valor]['cor']); ?>; color: '#000' }};">
                                                <?php echo e($qtd); ?>

                                            </td>
                                        </tr>
                                        <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
                                    </tbody>
                                </table>
                            </div>
                        </div>

                        <!-- GRÁFICO -->
                        <div class="col-md-4 d-flex align-items-center justify-content-center">
                            <canvas id="chart_<?php echo e($mod); ?>_<?php echo e(Str::slug($setor, '_')); ?>"
                                data-labels='<?php echo json_encode(array_column($labelMap, "texto"), 512) ?>'
                                data-data='<?php echo json_encode(array_values($contagemRespostas), 15, 512) ?>'
                                data-colors='<?php echo json_encode(array_column($labelMap, "cor"), 512) ?>'
                                style="max-height: 250px;">
                            </canvas>
                        </div>

                        <!-- PROBABILIDADE GERAL -->
                        <div class="col-md-4 d-flex align-items-center justify-content-center">
                            <div class="bg-primary-dark text-white p-4 rounded text-center">
                                <p class="mb-1 fw-bold">Probabilidade<br><small>(Geral)</small></p>
                                <h5 class="mt-2"><?php echo e($textoProb); ?></h5>
                            </div>
                        </div>
                    </div>

                    <?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;
                    }
                    }
                    }
                    ?>

                    <h5 class="text-center col-3 bg-primary-dark py-1 px-1 rounded-1 shadow-sm fw-bold mb-1">
                        Causa | Princípio
                    </h5>

                    <div class="table-responsive">
                        <table class="table table-bordered text-center align-middle">
                            <thead class="text-white" style="background-color: #002776;">
                                <tr>
                                    <th>Fonte Geradora</th>
                                    <th>Severidade</th>
                                    <th>Probabilidade</th>
                                    <th>Nível do Risco</th>
                                </tr>
                            </thead>
                            <tbody>
                                <?php $__currentLoopData = $porFonte; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $fonte => $dadosFonte): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                                <?php
                                $mediaValor = count($dadosFonte['valores']) ? ceil(array_sum($dadosFonte['valores']) / count($dadosFonte['valores'])) : 0;
                                $severidade = $dadosFonte['severidade'];
                                $codigo = intval("{$severidade}{$mediaValor}");

                                $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],
                                ];

                                $nivelRisco = 'N/A';
                                foreach ($mapaRisco as $nivel => $codigos) {
                                if (in_array($codigo, $codigos)) {
                                $nivelRisco = $nivel;
                                break;
                                }
                                }
                                ?>
                                <tr style="background-color: #00AEEF; color: white;">
                                    <td class="text-uppercase"><?php echo e($fonte); ?></td>
                                    <td><?php echo e($severidade); ?></td>
                                    <td><?php echo e($mediaValor); ?></td>
                                    <td><?php echo e($nivelRisco); ?></td>
                                </tr>
                                <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
                            </tbody>
                        </table>
                    </div>
                </div>

                <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
                <?php endif; ?>
            </div>
            <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
        </div>
    </div>
</div>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-datalabels@2"></script>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.main', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH C:\Users\igor.costa\Projetos\psicossocial\resources\views/relatorios/relatorio.blade.php ENDPATH**/ ?>