<?php
require '../conexao/conexao.php';
//require '../sessao.php';
require '../conexao/acesso.php';
require '../configuacoes.php';
function getBadgeClass($percentage)
{
    if ($percentage <= 89) {
        return 'badge-danger';
    } elseif ($percentage >= 70 && $percentage <= 100) {
        return 'badge-warning';
    } elseif ($percentage > 90) {
        return 'badge-primary';
    } else {
        return 'badge-success';
    }
}



//$hoje = DateTime::createFromFormat('d-m-Y', '22-09-2023');
//$hoje = DateTime::createFromFormat('d-m-Y H:i', '23-11-2023 08:51');
$hoje = new DateTime();
$hojeFormatado = $hoje->format('Y-m-d');

// pega a data de ontem
$dataOntem = date('Y-m-d', strtotime('-1 day', strtotime($hojeFormatado)));

// Obtém o mês e ano da data atual
$mesAtual = date('m', strtotime($hojeFormatado));
$anoAtual = date('Y', strtotime($hojeFormatado));

if ($hoje !== false) {
    //$hoje->setTime(0, 0, 0);
    // Continue com seu código
} else {
    echo "Formato de data inválido.";
    // Tratar o erro conforme necessário
}


$encontroualgumregistro = false;


//recuperando cidade combo filial
$query_cidade_filial = "SELECT DISTINCT MUNIC FROM FC01000 fc WHERE fc.cdfil IN (SELECT cdfil FROM fc15100)";
$result_cidade_filial = ibase_query($connection, $query_cidade_filial);

if (!$result_cidade_filial) {
    die('Erro na consulta: ' . ibase_errmsg());
}

$cidadefiliais = [];
while ($row = ibase_fetch_assoc($result_cidade_filial)) {
    $cidadefiliais[] = $row;
}


$cidade = $_GET['cidade'] ?? null;
$ano = $_GET['ano'] ?? null;
$mes = $_GET['mes'] ?? null;
$filial = $_GET['filial'] ?? null;
$etapa = $_GET['etapa'] ?? null;
$requisicao = $_GET['requisicao'] ?? null;
$paciente = $_GET['paciente'] ?? null;
$cliente = $_GET['cliente'] ?? null;



if (isset($_GET['pesquisar'])) {

    $query_diaatual = "select SUM(peso) as peso_atual from dia_trabalho_cidade dc
    inner join cidade c on c.id_cidade = dc.id_cidade
    inner join dia_trabalho dt on dt.id_dia_trabalho = dc.id_dia_trabalho
    inner join tipo_dia td on td.id_tipo_dia = dc.id_tipo_dia WHERE 1=1 and
   MONTH(dia_trabalho) = $mes AND YEAR(dia_trabalho) = $ano
   and dia_trabalho <= CURDATE() ";

    //echo $query_diaatual ;
    // Execute a consulta e obtenha os resultados
    $result = $connectionmysql->query($query_diaatual);
    if (!$result) {
        die('Erro na consulta: ' . $connectionmysql->error);
    }

    $row = $result->fetch_assoc();
    $peso_diaatual = $row["peso_atual"];

    // Sua consulta MySQL para o último dia do mês
    $query_ultimodia = "SELECT SUM(peso) as peso_ultimo FROM dia_trabalho_cidade dc
        INNER JOIN cidade c ON c.id_cidade = dc.id_cidade
        INNER JOIN dia_trabalho dt ON dt.id_dia_trabalho = dc.id_dia_trabalho
        INNER JOIN tipo_dia td ON td.id_tipo_dia = dc.id_tipo_dia 
        WHERE 1=1 and MONTH(dia_trabalho) = $mes AND YEAR(dia_trabalho) = $ano";
    $result2 = $connectionmysql->query($query_ultimodia);

    $row1 = $result2->fetch_assoc();
    $pesoUltimoDia = $row1["peso_ultimo"];


    $sql_meta = "SELECT codigo_funcionario as cdfun, etapa as cdetapa, meta, ano, mes FROM kpi.metas_producao WHERE 1=1";

    if ($ano && $ano != "Selecione") {
        $sql_meta .= " and ano = " . intval($ano);
    }
    if ($mes && $mes != "Selecione") {
        $sql_meta .= " and mes = " . intval($mes);
    }


    if ($etapa && $etapa != "Selecione") {
        $sql_meta .= " AND etapa = '" . $etapa . "'";
    }


    // Aplicar o filtro da filial
    // if ($filial && $filial != "Todos") {
    //     $sql_meta .= " and codigo_filial = " . intval($filial);
    // }

    //echo $sql_meta;
    $resultmeta = $connectionmysql->query($sql_meta);

    if (!$resultmeta) {
        die('Erro na consulta MySQL: ' . $connectionmysql->error);
    }

    // Busque todos os registros
    $metas = [];
    while ($row = $resultmeta->fetch_assoc()) {
        $metas[] = $row;
    }

    $sql_adicao = "SELECT codigo_funcionario as cdfun, etapa as cdetapa, adicao, ano, mes FROM kpi.adicao_producao WHERE 1=1";

    if ($ano && $ano != "Selecione") {
        $sql_adicao .= " and ano = " . intval($ano);
    }
    if ($mes && $mes != "Selecione") {
        $sql_adicao .= " and mes = " . intval($mes);
    }

    if ($etapa && $etapa != "Selecione") {
        $sql_adicao .= " AND etapa = '" . $etapa . "'";
    }

    // // Aplicar o filtro da filial
    // if ($filial && $filial != "Todos") {
    //     $sql_adicao .= " and codigo_filial = " . intval($filial);
    // }

    //echo $sql_meta;
    $resultadicao = $connectionmysql->query($sql_adicao);

    if (!$resultadicao) {
        die('Erro na consulta MySQL: ' . $connectionmysql->error);
    }

    // Busque todos os registros
    $adicao = [];
    while ($row = $resultadicao->fetch_assoc()) {
        $adicao[] = $row;
    }


    $query_consolidado = "SELECT pcp.cdfun,fun.nomefun, etp.DESCRICAO, COUNT(zz.ativos) AS quant_ativos
                FROM fc12500 pcp
                INNER JOIN fc12540 etp ON  pcp.CDETAPA  = etp.CDETAPA
               LEFT JOIN fc08000 fun ON pcp.cdfun = fun.cdfun and fun.cdcon = 2
                INNER JOIN (SELECT t.cdfil,t.nrrqu,t.serier, cdpro as ativos FROM fc12110 t
               --where nrrqu = '10552' and cdfil = '4'
               where t.tpcmp IN ('C','S','X')
               -- GROUP BY t.cdfil,t.nrrqu,t.serier
                ) as zz
                 on zz.cdfil = pcp.cdfil and zz.nrrqu = pcp.nrrqu and zz.serier = pcp.serier
                WHERE  pcp.cdopera = '02'";


    if ($ano && $ano != "Selecione") {
        $query_consolidado .= " AND EXTRACT(YEAR FROM pcp.data) = " . intval($ano);
    }

    if ($mes && $mes != "Selecione") {
        $query_consolidado .= " AND EXTRACT(MONTH FROM pcp.data) = " . intval($mes);
    }

    if ($etapa && $etapa != "Selecione") {
        $query_consolidado .= " AND pcp.cdetapa = '" . $etapa . "'";
    }


    $query_consolidado .= " GROUP BY pcp.cdfun,fun.nomefun, etp.DESCRICAO";

    //echo $query_consolidado; 
    $result_consolidado = ibase_query($connection, $query_consolidado);

    if (!$result_consolidado) {
        die('Erro na consulta: ' . ibase_errmsg());
    }


    $query_geral = "select pcp.cdfun, fun.nomefun, etp.DESCRICAO, count(pcp.nrrqu) as QTD
  from fc12500 pcp, fc08000 fun, fc12540 etp
 where  pcp.cdfun = fun.cdfun and fun.cdcon = $filial AND pcp.CDETAPA  = etp.CDETAPA  and pcp.cdopera = 2 ";

    if ($ano && $ano != "Selecione") {
        $query_geral .= " AND EXTRACT(YEAR FROM pcp.data) = " . intval($ano);
    }

    if ($etapa && $etapa != "Selecione") {
        $query_geral .= " AND pcp.cdetapa = '" . $etapa . "'";
    }

    if ($mes && $mes != "Selecione") {
        $query_geral .= " AND EXTRACT(MONTH FROM pcp.data) = " . intval($mes);
    }

    $query_geral .= " group by pcp.cdfun, fun.nomefun, etp.DESCRICAO order by fun.nomefun,etp.DESCRICAO";

    //echo $query_geral;
    $result_geral = ibase_query($connection, $query_geral);

    if (!$result_geral) {
        die('Erro na consulta: ' . ibase_errmsg());
    }

    $query_resumo = "SELECT pcp.cdfun,fun.nomefun, etp.DESCRICAO, SUM(quant) AS quant_caps
                FROM fc12500 pcp
                INNER JOIN fc12540 etp ON  pcp.CDETAPA  = etp.CDETAPA
               LEFT JOIN fc08000 fun ON pcp.cdfun = fun.cdfun and fun.cdcon = 2
                INNER JOIN (SELECT t.cdfil,t.nrrqu,t.serier, quant FROM fc12110 t
             WHERE t.tpcmp IN ('P')
                ) as zz
                 on zz.cdfil = pcp.cdfil and zz.nrrqu = pcp.nrrqu and zz.serier = pcp.serier
                WHERE pcp.cdopera = '02'";

    if ($ano && $ano != "Selecione") {
        $query_resumo .= " AND EXTRACT(YEAR FROM pcp.data) = " . intval($ano);
    }

    if ($mes && $mes != "Selecione") {
        $query_resumo .= " AND EXTRACT(MONTH FROM pcp.data) = " . intval($mes);
    }


    if ($etapa && $etapa != "Selecione") {
        $query_resumo .= " AND pcp.cdetapa = '" . $etapa . "'";
    }

    $query_resumo .= " GROUP BY pcp.cdfun,fun.nomefun, etp.DESCRICAO";
    $result_resumo = ibase_query($connection, $query_resumo);

    //ECHO $query_resumo;
    if (!$result_resumo) {
        die('Erro na consulta: ' . ibase_errmsg());
    }
}

$sql_meta_etapa = "SELECT SUM(m.meta) as soma
FROM etapas_pcp as e
LEFT JOIN metas_etapas_pcp as m ON e.codigo_etapa = m.id_etapa ";

if ($ano && $ano != "Selecione") {
    $sql_meta_etapa .= " WHERE m.ano = " . intval($ano);
}
if ($mes && $mes != "Selecione") {
    $sql_meta_etapa .= " AND m.mes = " . intval($mes);
}
if ($filial && $filial != "Todos") {
    $sql_meta_etapa .= " AND m.codigo_filial = " . intval($filial);
}
if ($etapa && $etapa != "Selecione") {
    $sql_meta_etapa .= " AND e.codigo_etapa = '" . $etapa . "'";
}

$resultmetaetapa = $connectionmysql->query($sql_meta_etapa);

if (!$resultmetaetapa) {
    die('Erro na consulta MySQL: ' . $connectionmysql->error);
}

$metas_etapas = [];
while ($row2 = $resultmetaetapa->fetch_assoc()) {
    $metas_etapas[] = $row2;
}


?>

<!DOCTYPE html>
<html lang="pt-br">



<?php
$pageTitle = "PCP - Resultado"; // Definir o título da página aqui
include('../geral/header.php');
?>

<body>

    <!-- Navigation Bar-->
    <?php
    include('../geral/menu.php');
    ?>
    <!-- End Navigation Bar-->

    <!-- ============================================================== -->
    <!-- Start Page Content here -->
    <!-- ============================================================== -->

    <div class="wrapper candidato">
        <div class="container-fluid">

            <div class="card-box mt-3">
                <div class="row align-items-center">

                    <div class="col-12">
                        <form method="get" action="painel_gerencial_monitoramento.php" id="indexForm" onsubmit="return validarFormulario();">
                            <h3>Painel Gerencial de Resultados PCP</h3>
                    </div>

                    <div class="col-4">
                        <label for="cidade" class="col-form-label">Cidade:</label>
                        <select id="cidade" name="cidade" class="form-control" oninput="validarCampo('cidade',this.value)">
                            <option value="Todos" <?php echo (!isset($cidade) || $cidade == "Todos") ? "selected" : ""; ?>>Selecione</option>
                            <?php foreach ($cidadefiliais as $item) : ?>
                                <option value="<?php echo $item['MUNIC']; ?>" <?php echo (isset($cidade) && $cidade == $item['MUNIC']) ? "selected" : ""; ?>>
                                    <?php echo $item['MUNIC']; ?>
                                </option>
                            <?php endforeach; ?>
                        </select>
                    </div>

                    <?php
                    // Verifica se uma filial foi selecionada anteriormente e define o valor padrão
                    $filialSelecionada = isset($_COOKIE['filialSelecionada']) ? $_COOKIE['filialSelecionada'] : 'Selecione';

                    echo '<div class="col-4">';
                    echo '<label for="filial" class="col-form-label">Filial:</label>';
                    echo '<select id="filial" name="filial" class="form-control" oninput="validarCampo(\'filial\', this.value)">';

                    // Adiciona a opção "Todos"
                    echo '<option value="Todos"' . ($filialSelecionada == "Todos" ? ' selected' : '') . '>Selecione</option>';

                    foreach ($filiais as $item) {
                        // Verifica se esta filial foi selecionada anteriormente
                        $selected = ($filialSelecionada == $item['CDFIL']) ? ' selected' : '';
                        echo '<option value="' . $item['CDFIL'] . '"' . $selected . '>Filial ' . $item['CDFIL'] . '</option>';
                    }

                    echo '</select>';
                    echo '</div>';
                    ?>



                    <div class="col-2">
                        <label for="ano" class="col-form-label">Ano:</label>
                        <select id="ano" name="ano" class="form-control" oninput="validarCampo('ano',this.value)">
                            <option value="Selecione" <?php echo (isset($ano) && $ano == "Selecione") ? "selected" : ""; ?>>Selecione</option>
                            <?php
                            $Atual = date("Y");

                            // Gera uma lista de 4 anos a partir do ano atual
                            for ($i = 0; $i < 4; $i++) {
                                $anoOpcao = $Atual - $i;
                                echo '<option value="' . $anoOpcao . '" ' . (isset($ano) && $ano == $anoOpcao ? "selected" : "") . '>' . $anoOpcao . '</option>';
                            }
                            ?>
                        </select>
                    </div>

                    <div class="col-2">
                        <label for="nota1" class="col-form-label">Mês:</label>
                        <select name="mes" id="mes" class="form-control" oninput="validarCampo('mes',this.value)">
                            <option value="Selecione" <?php echo (isset($mes) && $mes == "Selecione") ? "selected" : ""; ?>>Selecione</option>
                            <option value="01" <?php echo (isset($mes) && $mes == "1") ? "selected" : ""; ?>>Janeiro</option>
                            <option value="02" <?php echo (isset($mes) && $mes == "2") ? "selected" : ""; ?>>Fevereiro</option>
                            <option value="03" <?php echo (isset($mes) && $mes == "3") ? "selected" : ""; ?>>Março</option>
                            <option value="04" <?php echo (isset($mes) && $mes == "4") ? "selected" : ""; ?>>Abril</option>
                            <option value="05" <?php echo (isset($mes) && $mes == "5") ? "selected" : ""; ?>>Maio</option>
                            <option value="06" <?php echo (isset($mes) && $mes == "6") ? "selected" : ""; ?>>Junho</option>
                            <option value="07" <?php echo (isset($mes) && $mes == "7") ? "selected" : ""; ?>>Julho</option>
                            <option value="08" <?php echo (isset($mes) && $mes == "8") ? "selected" : ""; ?>>Agosto</option>
                            <option value="09" <?php echo (isset($mes) && $mes == "9") ? "selected" : ""; ?>>Setembro</option>
                            <option value="10" <?php echo (isset($mes) && $mes == "10") ? "selected" : ""; ?>>Outubro</option>
                            <option value="11" <?php echo (isset($mes) && $mes == "11") ? "selected" : ""; ?>>Novembro</option>
                            <option value="12" <?php echo (isset($mes) && $mes == "12") ? "selected" : ""; ?>>Dezembro</option>
                        </select>
                    </div>


                    <div class="col-2">
                        <label for="etapa" class="col-form-label">Etapa:</label>
                        <select name="etapa" id="etapa" class="form-control" oninput="validarCampo('etapa',this.value)">
                            <option value="Selecione" <?php echo (isset($etapa) && $etapa == "Selecione") ? "selected" : ""; ?>>Selecione</option>
                            <option value="01" <?php echo (isset($etapa) && $etapa == "01") ? "selected" : ""; ?>>Inclusão</option>
                            <option value="02" <?php echo (isset($etapa) && $etapa == "02") ? "selected" : ""; ?>>Conferência Inicial</option>
                            <option value="03" <?php echo (isset($etapa) && $etapa == "03") ? "selected" : ""; ?>>Sólidos</option>
                            <option value="04" <?php echo (isset($etapa) && $etapa == "04") ? "selected" : ""; ?>>Semi Sólidos</option>
                            <option value="05" <?php echo (isset($etapa) && $etapa == "05") ? "selected" : ""; ?>>Encapsulação</option>
                            <option value="06" <?php echo (isset($etapa) && $etapa == "06") ? "selected" : ""; ?>>Envelopes</option>
                            <option value="07" <?php echo (isset($etapa) && $etapa == "07") ? "selected" : ""; ?>>Conferência Final</option>
                            <option value="08" <?php echo (isset($etapa) && $etapa == "08") ? "selected" : ""; ?>>Dispensação</option>
                            <option value="09" <?php echo (isset($etapa) && $etapa == "09") ? "selected" : ""; ?>>Logística</option>
                            <option value="10" <?php echo (isset($etapa) && $etapa == "10") ? "selected" : ""; ?>>Entrega Cliente</option>
                        </select>
                    </div>


                    <!-- <div class="col-2">
                        <label for="cliente" class="col-form-label">Funcionário</label>
                        <input type="text" class="form-control" id="funcionario" name="cliente" placeholder="funcionario" value="<?php echo isset($funcionario) ? htmlspecialchars($funcionario) : ''; ?>">

                    </div> -->


                    <div class="col-12 text-right mt-3">
                        <a href="painel_gerencial_monitoramento.php" class="btn btn-warning mr-2"><i class="mdi mdi-plus"></i> Limpar</a>
                        <button name="pesquisar" class="btn btn-primary" type="submit">Pesquisar</button>
                    </div>
                    </form>
                </div>
            </div>
            <?php if (isset($_GET['pesquisar'])) { ?>
                <div class="card-box mt-3">
                    <div class="row align-items-center">

                        <div class="col-12 text-center">

                            <div class="col-12 text-center">
                                <!-- <a href="<?php ?>" class="badge badge-pill badge-secondary mb-4" style="font-size:1.5rem;">Rio Verde</a> -->
                                <h6>Resultado</h6>


                            </div>



                            <div class="card">
                                <div class="card-body">
                                    <!-- <h4 class="header-title mb-4">Default Tabs</h4> -->

                                    <ul class="nav nav-tabs">
                                        <li class="nav-item">
                                            <a href="#geral" data-bs-toggle="tab" aria-expanded="true" class="nav-link active">
                                                Visão Geral
                                            </a>
                                        </li>
                                        <li class="nav-item">
                                            <a href="#consolidada" data-bs-toggle="tab" aria-expanded="false" class="nav-link">
                                                Visão de Ativos
                                            </a>
                                        </li>
                                        <li class="nav-item">
                                            <a href="#resumo_funcionario" data-bs-toggle="tab" aria-expanded="false" class="nav-link">
                                                Qualtidade de Capsulas
                                            </a>
                                        </li>

                                    </ul>
                                    <div class="tab-content">
                                        <div class="tab-pane show active" id="geral">
                                            <table class="table table-striped table-bordered dt-responsive nowrap">
                                                <thead class="thead-light">
                                                    <tr>
                                                        <th scope="col">Código Funcionário</th>
                                                        <th scope="col">Funcionário</th>
                                                        <th scope="col">Etapa</th>
                                                        <th scope="col">Qtd Fórmulas</th>
                                                        <th scope="col">Adição</th>
                                                        <th scope="col">Meta</th>
                                                        <th scope="col">Realizado</th>
                                                        <th scope="col">Projeção</th>
                                                    </tr>
                                                </thead>
                                                <tbody>
                                                    <?php
                                                    $hasResults = false;
                                                    $totalFormulas = 0;
                                                    $totalAdicao = 0;
                                                    $totalMeta = 0;
                                                    $totalRealizado = 0;
                                                    $totalProjecao = 0;

                                                    while ($row = ibase_fetch_assoc($result_geral)) {
                                                        $encontroualgumregistro = true;
                                                        $hasResults = true;
                                                        $metaetapa = $metas_etapas[0]['soma'];
                                                        // Exibindo os dados na tabela
                                                    ?>
                                                        <tr>
                                                            <td><?= htmlspecialchars($row['CDFUN']) ?></td>
                                                            <td><?= htmlspecialchars($row['NOMEFUN']) ?></td>
                                                            <td><?= $row['DESCRICAO'] ?></td>
                                                            <td><?= htmlspecialchars($row['QTD']) ?></td>
                                                            <td>
                                                                <?php
                                                                $totalFormulas += intval($row['QTD']);
                                                                $adicaoEncontrada = 0;
                                                                foreach ($adicao as $adicoes) {
                                                                    if ($adicoes['cdfun'] == $row['CDFUN']) {
                                                                        $adicaoEncontrada = $adicoes['adicao'];
                                                                        break;
                                                                    }
                                                                }
                                                                echo htmlspecialchars($adicaoEncontrada);
                                                                $totalAdicao += $adicaoEncontrada; // Somando para o totalizador

                                                                ?>
                                                            </td>
                                                            <td>
                                                                <?php
                                                                $metaEncontrada = 0;
                                                                foreach ($metas as $meta) {
                                                                    if ($meta['cdfun'] == $row['CDFUN']) {
                                                                        $metaEncontrada = $meta['meta'];
                                                                        $totalMeta += $metaEncontrada; // Somando para o totalizador
                                                                        break;
                                                                    }
                                                                }
                                                                echo htmlspecialchars($metaEncontrada);
                                                                ?>
                                                            </td>
                                                            <td>
                                                                <?php
                                                                $qtdFormula = intval($row['QTD']);

                                                                // Verifica se a meta não é zero antes de fazer a divisão
                                                                if ($metaEncontrada != 0) {
                                                                    $realizado = (($qtdFormula + $adicaoEncontrada) * 100) / $metaEncontrada;
                                                                } else {
                                                                    $realizado = 0; // Ou outro valor padrão, caso deseje
                                                                }
                                                                echo number_format($realizado, 2, ',', '.') . '%';

                                                                ?>
                                                            </td>
                                                            <td>
                                                                <?php
                                                                if ($anoAtual == $ano && $mesAtual == $mes) {
                                                                    // Verifica se $peso_diaatual é diferente de zero antes de realizar a divisão
                                                                    if ($metaEncontrada != 0) {
                                                                        $projecao = ((($qtdFormula + $adicaoEncontrada) / $peso_diaatual) * $pesoUltimoDia / $metaEncontrada) * 100;
                                                                        echo number_format($projecao, 2, ',', '.') . '%';
                                                                        $totalProjecao += $projecao; // Somando para o totalizador
                                                                    } else {
                                                                        // Se $peso_diaatual for zero, define $projecao como zero
                                                                        $projecao = 0;
                                                                    }
                                                                } else {
                                                                    echo number_format($realizado, 2, ',', '.') . '%';
                                                                }
                                                                ?>
                                                            </td>
                                                        </tr>
                                                    <?php
                                                    }

                                                    // Exibe a linha do totalizador
                                                    ?>
                                                    <tr>
                                                        <td colspan="3" class="font-weight-bold text-center">Totais</td> <!-- Colunas adicionais para acomodar os dados do totalizador -->
                                                        <td class="font-weight-bold text-center"><?= $totalFormulas; ?></td>
                                                        <td class="font-weight-bold text-center"><?= $totalAdicao; ?></td>
                                                        <td class="font-weight-bold text-center"><?= isset($metaetapa) ? $metaetapa : 0; ?></td>
                                                        <td class="font-weight-bold text-center"><?php
                                                                                                    if (isset($metaetapa) && $metaetapa != 0) {
                                                                                                        $realizado_total = (($totalFormulas + $totalAdicao) * 100) / $metaetapa;
                                                                                                    } else {
                                                                                                        $realizado_total = 0; // Ou outro valor padrão, caso deseje
                                                                                                    }
                                                                                                    echo number_format($realizado_total, 2, ',', '.') . '%';
                                                                                                    ?></td>
                                                        <td class="font-weight-bold text-center"><?php
                                                                                                    if ($anoAtual == $ano && $mesAtual == $mes) {
                                                                                                        // Verifica se $peso_diaatual é diferente de zero antes de realizar a divisão
                                                                                                        if ($metaetapa != 0) {
                                                                                                            $projecao_total = ((($totalFormulas + $totalAdicao) / $peso_diaatual) * $pesoUltimoDia / $metaetapa) * 100;
                                                                                                            echo number_format($projecao_total, 2, ',', '.') . '%';
                                                                                                            $totalProjecao += $projecao_total; // Somando para o totalizador
                                                                                                        } else {
                                                                                                            // Se $peso_diaatual for zero, define $projecao_total como zero
                                                                                                            $projecao_total = 0;
                                                                                                        }
                                                                                                    } else {
                                                                                                        echo number_format($realizado_total, 2, ',', '.') . '%';
                                                                                                    }
                                                                                                    ?></td>
                                                    </tr>


                                                    <?php
                                                    if (!$hasResults) {
                                                        // Código para lidar com o caso de não haver resultados
                                                        echo "<tr><td colspan='8'>Nenhum registro encontrado para anteriores a hoje.</td></tr>";
                                                    }
                                                    ?>
                                                </tbody>
                                            </table>
                                        </div>
                                        <div class="tab-pane" id="consolidada">
                                            <table class="table table-striped table-bordered dt-responsive nowrap">
                                                <thead class="thead-light">
                                                    <tr>
                                                        <th scope="col">Código Funcionário</th>
                                                        <th scope="col">Funcionário</th>
                                                        <th scope="col">Etapa</th>
                                                        <th scope="col">Quantidade</th>

                                                    </tr>
                                                </thead>
                                                <tbody>
                                                    <?php
                                                    $hasResults = false;


                                                    while ($row = ibase_fetch_assoc($result_consolidado)) {
                                                        $encontroualgumregistro = true;
                                                        $hasResults = true;


                                                        // Exibindo os dados na tabela
                                                    ?>
                                                        <tr>
                                                            <td><?= htmlspecialchars($row['CDFUN']) ?></td>
                                                            <td><?= htmlspecialchars($row['NOMEFUN']) ?></td>
                                                            <td><?= htmlspecialchars($row['DESCRICAO']) ?></td>
                                                            <td><?= htmlspecialchars($row['QUANT_ATIVOS']) ?></td>
                                                        </tr>
                                                    <?php
                                                    }



                                                    if (!$hasResults) {
                                                        // Código para lidar com o caso de não haver resultados
                                                        echo "<tr><td colspan='8'>Nenhum registro encontrado para anteriores a hoje.</td></tr>";
                                                    }

                                                    ?>
                                                </tbody>
                                            </table>

                                            <?php
                                            if ($hasResults) {
                                            ?>
                                                <h6>QUADRO RESUMO</h6>


                                            <?php
                                            }
                                            ?>

                                        </div>

                                        <div class="tab-pane" id="resumo_funcionario">


                                            <table class="table table-striped table-bordered dt-responsive nowrap">
                                                <thead>
                                                    <tr>
                                                        <th scope="col">Código Funcionário</th>
                                                        <th scope="col">Funcionário</th>
                                                        <th scope="col">Etapa</th>
                                                        <th scope="col">Qunatidade de Capsulas</th>
                                                    </tr>
                                                </thead>
                                                <tbody>
                                                    <?php
                                                    while ($row = ibase_fetch_assoc($result_resumo)) {

                                                        $id = intval($row['CDFUN']);
                                                        $funcionario = htmlspecialchars($row['NOMEFUN']);
                                                        $DESC = htmlspecialchars($row['DESCRICAO']);
                                                        $count = $row['QUANT_CAPS'];

                                                        echo "<tr>";
                                                        echo "<td>{$id}</td>";
                                                        echo "<td>{$funcionario}</td>";
                                                        echo "<td>{$DESC}</td>";
                                                        echo "<td>{$count}</td>";
                                                        echo "</tr>";
                                                    }
                                                    ?>
                                                </tbody>

                                            </table>



                                        </div>



                                    </div> <!-- end card-->



                                </div>

                            </div>
                        </div>


                    </div> <!-- end container -->
                </div>
                <!-- end wrapper -->
            <?php

                // Verifica se não encontrou registros
                if ($encontroualgumregistro === false) {
                    echo '<script>alert("Sem resultado para consulta");</script>';
                }
            } ?>
            <!-- ============================================================== -->
            <!-- End Page content -->
            <!-- ============================================================== -->

            <!-- Footer Start -->
            <?php
            include('../geral/footer.php');
            ?>
            <!-- end Footer -->

            <?php
            include('../geral/mensagens_modais.php');
            ?>


            <!-- Right bar overlay-->
            <div class="rightbar-overlay"></div>

            <!-- Vendor js -->
            <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
            <script src="../../assets/libs/bootstrap/js/bootstrap.bundle.min.js"></script>
            <script src="../../assets/js/vendor.min.js"></script>

            <!-- Init js -->
            <script src="../../assets/js/pages/form-advanced.init.js"></script>

            <!-- knob plugin -->
            <script src="../../assets/libs/jquery-knob/jquery.knob.min.js"></script>

            <!-- DataTables JS -->
            <script src="https://cdn.datatables.net/1.11.3/js/jquery.dataTables.min.js"></script>
            <script src="https://cdn.datatables.net/1.11.3/js/dataTables.bootstrap5.min.js"></script>

            <!-- App js -->
            <script src="../../assets/js/app.min.js"></script>

            <script src="../geral/javascript.js"></script>


            <!-- Standard modal content -->
            <!-- Modal -->
            <div id="standard-modal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="standard-modalLabel" aria-hidden="true">
                <div class="modal-dialog modal-lg">
                    <div class="modal-content">
                        <div class="modal-header">
                            <h4 class="modal-title" id="standard-modalLabel">Detalhe da Fórmula</h4>
                            <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
                        </div>
                        <div class="modal-body">
                            <!-- Aqui incluímos a página buscar_detalhes_requisicao.php na modal -->
                            <div id="detalhes-requisicao-container">
                                <!-- O conteúdo da página buscar_detalhes_requisicao.php será carregado aqui -->

                                <?php

                                include('buscar_detalhes_requisicao.php');

                                ?>
                            </div>
                        </div>
                        <div class="modal-footer">
                            <button type="button" class="btn btn-light" data-bs-dismiss="modal">Fechar</button>
                        </div>
                    </div><!-- /.modal-content -->
                </div><!-- /.modal-dialog -->
            </div><!-- /.modal -->


            <script>
                function showModal(modalId, title, message) {
                    const modalElement = document.getElementById(modalId);
                    const modal = new bootstrap.Modal(modalElement);
                    modalElement.querySelector('.modal-title').textContent = title;
                    modalElement.querySelector('.modal-body p').textContent = message;
                    modal.show();

                    // Adiciona evento de clique para fechar a modal
                    setTimeout(() => {
                        document.addEventListener('click', closeModalOnOutsideClick);
                    }, 0);
                }

                function closeModalOnOutsideClick(event) {
                    const modalElement = document.querySelector('.modal.show');
                    if (modalElement && !modalElement.contains(event.target)) {
                        const modalInstance = bootstrap.Modal.getInstance(modalElement);
                        modalInstance.hide();
                    }
                }

                function validarCampo(id) {
                    const campo = document.getElementById(id);
                    const valor = campo.value.trim();
                    let campoValido = true;

                    if (!valor || valor === 'Selecione' || valor === 'Todos') {
                        campoValido = false;
                        campo.classList.add('is-invalido');
                    } else {
                        campo.classList.remove('is-invalido');
                    }
                    return campoValido;
                }

                function validarFormulario() {
                    let camposValidos = true;

                    const mesValido = validarCampo('mes');
                    const anoValido = validarCampo('ano');
                    const filialValida = validarCampo('filial');
                    const etapaValida = validarCampo('etapa');
                    const cidade = validarCampo('cidade');

                    camposValidos = mesValido && anoValido && filialValida && etapaValida && cidade;

                    if (!camposValidos) {
                        showModal('exampleModal', 'Informação', 'Por favor, selecione todos os campos obrigatórios para a consulta.');
                    }

                    return camposValidos;
                }

                function verificarErroNaURL() {
                    const urlParams = new URLSearchParams(window.location.search);
                    const errorMessage = urlParams.get('error');
                    if (errorMessage) {
                        showModal('exampleModal', 'Erro', errorMessage);
                    }
                }

                window.onload = verificarErroNaURL;
            </script>


</body>

</html>
<script>
    $(document).ready(function() {
        // Função para preencher o combo de filiais
        function carregarFiliais(cidade) {
            if (cidade === 'Todos') {
                $('#filial').empty();
                $('#filial').append('<option value="Todos">Selecione</option>');
            } else {
                $.ajax({
                    url: 'get_filiais.php',
                    type: 'POST',
                    dataType: 'json',
                    data: {
                        cidade: cidade
                    },
                    success: function(data) {
                        $('#filial').empty();
                        $('#filial').append('<option value="Todos">Selecione</option>');
                        data.forEach(function(item) {
                            $('#filial').append('<option value="' + item.CDFIL + '">' + item.DESCRFIL + '</option>');
                        });

                        // Seleciona a filial previamente selecionada (se houver)
                        var filialSelecionada = '<?php echo $filialSelecionada; ?>';
                        $('#filial').val(filialSelecionada).trigger('change');
                    },
                    error: function(xhr, status, error) {
                        alert('Erro na chamada AJAX: ' + status + ' - ' + error);
                    }
                });
            }
        }

        // Ao carregar a página, chama a função para preencher o combo de filiais com base na cidade inicial
        carregarFiliais($('#cidade').val());

        // Ao alterar a cidade, chama a função para preencher o combo de filiais com base na nova cidade selecionada
        $('#cidade').change(function() {
            const cidade = $(this).val();
            carregarFiliais(cidade);
        });

        // Ao selecionar uma filial, atualiza o cookie com a filial selecionada
        $('#filial').on('change', function() {
            var filialSelecionada = $(this).val() || 'Todos';
            document.cookie = 'filialSelecionada=' + filialSelecionada;
        });
    });
</script>

<script>
    document.addEventListener("DOMContentLoaded", function() {
        const modalLinkElements = document.querySelectorAll(".open-modal-link");
        const modalContainer = document.getElementById("detalhes-requisicao-container");

        modalLinkElements.forEach(function(element) {
            element.addEventListener("click", function(event) {
                event.preventDefault();
                const requisicaoId = element.getAttribute("data-requisicao");

                // Carregue a modal
                const modal = new bootstrap.Modal(document.getElementById("standard-modal"));
                modal.show();

                // Carregue o conteúdo da página buscar_detalhes_requisicao.php na modal
                modalContainer.innerHTML = '<p>Carregando...</p>';
                fetch('buscar_detalhes_requisicao.php?id=' + encodeURIComponent(requisicaoId))

                    .then(response => response.text())
                    .then(data => {
                        modalContainer.innerHTML = data;
                    });
            });
        });
    });






    //REMOVER O CINZA APÓS FECHAR A MODAL E PERMITIR O SCROLL
    var myModalEl = document.getElementById('standard-modal');
    myModalEl.addEventListener('hidden.bs.modal', function(event) {
        var modalsBackdrop = document.getElementsByClassName('modal-backdrop');
        while (modalsBackdrop.length > 0) {
            modalsBackdrop[0].parentNode.removeChild(modalsBackdrop[0]);
        }
        document.body.style.overflow = ''; // Reset overflow
    });
</script>
<style>
    .is-invalido {
        box-shadow: 0 0 5px red !important;
    }
</style>