<?php
require '../conexao/conexao.php';

//require '../sessao.php';
require '../conexao/acesso.php';
require '../configuacoes.php';
require '../configuracao/consulta_banco_dados.php';
require '../configuracao/filtros.php';
require '../logs/gera-log.php';

gerarLog(
    1, // tipo de log (acesso)
    $basePath, // módulo
    $_SESSION['CodUsuario'],
    $_SESSION['NomeUsuario']
);

// Instancia a classe de consulta_bb ao banco de dados
$consulta_bb = new ConsultaBancoDeDados();
$filtros = new Filtros();


function getPorcentagemClass($percentage)
{
    if ($percentage >= 105) {
        return 'text-primary';    // Azul para 105% ou mais
    } elseif ($percentage >= 100) {
        return 'text-success';    // Verde para 100% a 104,99%
    } elseif ($percentage >= 90) {
        return 'text-warning';    // Amarelo/Laranja para 90% a 99,99%
    } else {
        return 'text-danger';     // Vermelho para 0% a 89,99%
    }
}


//$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
}


require '../querys/query-filiais.php';
$filiais = new Filiais($connectionmysql);
$cidades = $consulta_bb->get_cidades();

//$cidades = $consulta_bb->getCidadesFiliais(); // Obtém todas as cidades


$etapas = $consulta_bb->get_etapaFirebird();

$encontroualgumregistro = false;
$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'])) {

    gerarLog(
        5, // tipo de log (acesso)
        $basePath, // módulo
        $_SESSION['CodUsuario'],
        $_SESSION['NomeUsuario']
    );

    $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"];
    //CALCULO DIAS RESTANTES PARA FINALIZAR O MÊS
    $diasrestantes = $pesoUltimoDia - $peso_diaatual;
    //echo $diasrestantes;

    $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 != "Todos") {
        $sql_meta .= " AND etapa = '" . $etapa . "'";
    }


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

    //echo $sql_meta; exit;

    $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;
    }
    //    echo $sql_meta;

    $sql_adicao = "SELECT codigo_funcionario as cdfun, etapa as cdetapa, sum(adicao) as 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 != "Todos") {
        $sql_adicao .= " AND etapa = '" . $etapa . "'";
    }

    // // Aplicar o filtro da filial
    // if ($filial && $filial != "Todos") {
    //     $sql_adicao .= " and codigo_filial = " . intval($filial);
    // }
    $sql_adicao .= " GROUP BY cdfun , cdetapa ,ano,mes";

    //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, pcp.cdetapa, etp.DESCRICAO , count(pcp.nrrqu) 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_consolidado .= " AND EXTRACT(YEAR FROM pcp.data) = " . intval($ano);
    //     }

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

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

    //     $query_consolidado .= " group by pcp.cdfun, fun.nomefun,pcp.cdetapa, etp.DESCRICAO
    // order by fun.nomefun , pcp.cdetapa";

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

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

    $query_geral = "SELECT 
  PM.CODIGO_PROCESSO_TIPO ||' - '|| FFP.NOMETIPO as PROCESSO,
  CAST(SUM(CASE 
                WHEN AG.AG1_OP = 1 AND PM.TIPO_MOV = 1 THEN (
                    SELECT COUNT(*)
                    FROM ATENDIMENTO_A2 A2
                    WHERE PM.CODIGO_MOV = A2.CODIGO_ATEND_A1 
                    AND PM.NUMEROFORMULA_MOV = A2.NUMEROFORMULA 
                    AND A2.CONCLUIDOFORMULA = -1
                )
                WHEN AG.AG1_OP = 0 AND PM.TIPO_MOV = 1 THEN 1
                ELSE 0 
            END) AS INTEGER) as QTD_TOTAL,
  FU.NOMEFUNCIONARIO as MANIPULADOR,
  FU.CODIGO as CDFUN

    FROM  PROCESSO_MANIPULACAO PM
  inner join FUNCIONARIO FU on PM.CODIGO_FUNCIONARIO = FU.CODIGO
  inner join FORMAFARMACEUTICA_PROCESSO_TIPO FFP on PM.CODIGO_PROCESSO_TIPO = FFP.CODIGO
  inner join ATENDIMENTO_A1 A1 ON PM.CODIGO_MOV = A1.CODIGO AND PM.TIPO_MOV = 1
  left join UTIL_REL_AG1 (1) AG ON AG.AG1_OP >= 0 
  WHERE A1.STATUS_MOV <> 0 ";

    if (!empty($cliente) && $cliente != "Selecione" && $cliente != "Todos") {
        $query_geral .= " AND UPPER(CAST(FU.NOMEFUNCIONARIO AS VARCHAR(100))) LIKE UPPER('%" . $cliente . "%')";
    }

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

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

    if ($etapa && $etapa != "Todos") {
        $query_geral .= " AND PM.CODIGO_PROCESSO_TIPO = '" . $etapa . "'";
    }

    $query_geral .= " GROUP BY  PM.CODIGO_PROCESSO_TIPO,  FFP.NOMETIPO,  FU.NOMEFUNCIONARIO, FU.CODIGO
ORDER BY  FFP.NOMETIPO,  FU.NOMEFUNCIONARIO";

    //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, pcp.cdetapa, 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 ($etapa && $etapa != "Selecione") {
    //         $query_resumo .= " AND pcp.cdetapa = '" . $etapa . "'";
    //     }

    //     $query_resumo .= "
    // group by pcp.cdfun, fun.nomefun,pcp.cdetapa, etp.DESCRICAO
    // order by fun.nomefun";
    //     $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  metas_etapas_pcp as m 
WHERE 1=1"; // Base inicial da consulta

// Filtro por ano
if (!empty($ano) && $ano != "Selecione") {
    $sql_meta_etapa .= " AND m.ano = " . intval($ano);
}

// Filtro por mês
if (!empty($mes) && $mes != "Selecione") {
    $sql_meta_etapa .= " AND m.mes = " . intval($mes);
}

// Filtro por filial
if (!empty($filial) && $filial != "Todos") {
    $sql_meta_etapa .= " AND m.codigo_filial = " . intval($filial);
}

// Filtro por etapa
if (!empty($etapa) && $etapa != "Todos") {
    $sql_meta_etapa .= " AND m.id_etapa = '" . addslashes($etapa) . "'";
}
//echo $sql_meta_etapa; exit;

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

//echo $sql_meta_etapa ;
//var_dump($metas_etapas);
?>

<!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>

                    <?php
                    // Exibe o filtro de cidade
                    echo $filtros->filtroCidade($cidade, $cidades, false, '', true, false);
                    ?>
                    <!-- <div class="form-group col-6 col-md-4 col-lg-2">
                        <label for="cidade" class="col-form-label">Cidade:</label>
                        <select id="cidade" name="cidade" class="form-control">
                            <option value="Todos" <?php echo (!isset($cidade) || $cidade == "Todos") ? "selected" : ""; ?>>Todos</option>
                            <?php foreach ($cidades as $item) : ?>
                                <option value="<?= $item['MUNIC']; ?>" <?= isset($cidade) && trim($cidade) == trim($item['MUNIC']) ? "selected" : ""; ?>>
                                    <?php echo $item['MUNIC']; ?>
                                </option>
                            <?php endforeach; ?>
                        </select>
                    </div> -->
                    <div class="form-group col-6 col-md-4 col-lg-2">
                        <label class="col-form-label">Filiais</label>
                        <select name="filial" class="form-control">
                            <option value="Todos" <?php if ($filial == 'Todos') echo 'selected'; ?>>Todos</option>
                            <?php
                            $listagemFiliais = $filiais->listarFiliais();
                            foreach ($listagemFiliais as $itens) { ?>
                                <option value="<?php echo $itens['id']; ?>" <?php if ($itens['id'] == $filial) {
                                                                                echo 'selected';
                                                                            } ?>>
                                    <?php echo $itens['nome_filial']; ?>
                                </option>
                            <?php } ?>
                        </select>
                    </div>

                    <?php
                    // Exibe o filtro de etapa
                    echo $filtros->filtroEtapa($etapa, $etapas, false, false, 'produtividade.php');

                    // Exibe o filtro de ano
                    echo $filtros->filtroAno($ano);

                    // Exibe o filtro de mes
                    echo $filtros->filtroMes($mes);
                    ?>

                    <div class="form-group col-6 col-md-4 col-lg-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($cliente) ? htmlspecialchars($cliente) : ''; ?>">

                    </div>

                    <div class="col-12 col-md-12 col-lg-12 d-flex mt-3" style="align-items:center;justify-content: end;">
                        <div>
                            <a href="painel_gerencial_monitoramento.php" class="btn btn-warning mr-2"><i class="mdi mdi-plus"></i> Limpar</a>
                        </div>
                        <div>
                            <button name="pesquisar" class="btn btn-primary" type="submit">Pesquisar</button>
                        </div>
                    </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 Consolidada
                                            </a>
                                        </li>
                                        <li class="nav-item">
                                            <a href="#resumo_funcionario" data-bs-toggle="tab" aria-expanded="false" class="nav-link">
                                                Resumo Funcionário
                                            </a>
                                        </li> -->

                                    </ul>
                                    <div class="tab-content">
                                        <div class="tab-pane show active" id="geral">
                                            <table id="minhaTabela" 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 = isset($metas_etapas[0]['soma']) ? $metas_etapas[0]['soma'] : 0;
                                                        //$nomefun = mb_convert_encoding($row['MANIPULADOR'], 'UTF-8', 'ISO-8859-1');
                                                        $nomefun = $row['MANIPULADOR'];
                                                        // $nomeetapa = mb_convert_encoding($row['PROCESSO'], 'UTF-8', 'ISO-8859-1');
                                                        $nomeetapa = $row['PROCESSO'];

                                                        // Exibindo os dados na tabela
                                                    ?>
                                                        <tr>
                                                            <!-- <td><?= htmlspecialchars($row['CDFUN']) ?></td> -->
                                                            <td>

                                                                <?php echo htmlspecialchars($row['CDFUN']); ?>
                                                                <!-- <a href="#" class="open-modal-link" data-bs-toggle="modal" data-bs-target="#standard-modal" data-requisicao="<?php echo htmlspecialchars($row['CDFUN']); ?>" data-nome="<?php echo htmlspecialchars($row['manipulador']); ?>">
                                                                    <?php echo htmlspecialchars($row['CDFUN']); ?>
                                                                </a> -->
                                                            </td>


                                                            <td><?= htmlspecialchars($nomefun) ?></td>
                                                            <td><?= $nomeetapa ?></td>
                                                            <td><?= htmlspecialchars($row['QTD_TOTAL']) ?></td>
                                                            <td>
                                                                <?php
                                                                $totalFormulas += intval($row['QTD_TOTAL']);
                                                                $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_TOTAL']);

                                                                // 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
                                                                }
                                                                $classeRealizado = getPorcentagemClass($realizado);
                                                                echo '<span class="' . $classeRealizado . '" style="font-weight: bold;">' . number_format($realizado, 2, ',', '.') . '%</span>';

                                                                ?>
                                                            </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;
                                                                        $classeProjecao = getPorcentagemClass($projecao);
                                                                        echo '<span class="' . $classeProjecao . '" style="font-weight: bold;">' . number_format($projecao, 2, ',', '.') . '%</span>';
                                                                        $totalProjecao += $projecao; // Somando para o totalizador
                                                                    } else {
                                                                        // Se $peso_diaatual for zero, define $projecao como zero
                                                                        $projecao = 0;
                                                                    }
                                                                } else {
                                                                    echo '<span class="' . $classeRealizado . '" style="font-weight: bold;">' . number_format($realizado, 2, ',', '.') . '%</span>';
                                                                }
                                                                ?>
                                                            </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
                                                                                                    }
                                                                                                    $classeRealizadoTotal = getPorcentagemClass($realizado_total);
                                                                                                    echo '<span class="' . $classeRealizadoTotal . '" style="font-weight: bold;">' . number_format($realizado_total, 2, ',', '.') . '%</span>';
                                                                                                    ?></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 (isset($metaetapa) && $metaetapa != 0) {
                                                                                                            $projecao_total = ((($totalFormulas + $totalAdicao) / $peso_diaatual) * $pesoUltimoDia / $metaetapa) * 100;
                                                                                                            $classeProjecaoTotal = getPorcentagemClass($projecao_total);
                                                                                                            echo '<span class="' . $classeProjecaoTotal . '" style="font-weight: bold;">' . number_format($projecao_total, 2, ',', '.') . '%</span>';
                                                                                                            $totalProjecao += $projecao_total; // Somando para o totalizador
                                                                                                        } else {
                                                                                                            // Se $peso_diaatual for zero, define $projecao_total como zero
                                                                                                            $projecao_total = 0;
                                                                                                            echo '<span class="text-danger" style="font-weight: bold;">0%</span>';
                                                                                                        }
                                                                                                    } else {
                                                                                                        echo '<span class="' . $classeRealizadoTotal . '" style="font-weight: bold;">' . number_format($realizado_total, 2, ',', '.') . '%</span>';
                                                                                                    }
                                                                                                    ?></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">Código Etapa</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;
                                                        $nomefun = $row['NOMEFUN'];
                                                        $nome_etapa =  $row['DESCRICAO'];
                                                        // Exibindo os dados na tabela
                                                    ?>
                                                        <tr>

                                                            <td><?= htmlspecialchars($row['CDFUN']) ?></td>
                                                            <td><?= htmlspecialchars($nomefun) ?></td>
                                                            <td><?= htmlspecialchars($row['CDETAPA']) ?></td>
                                                            <td><?= htmlspecialchars($nome_etapa) ?></td>
                                                            <td><?= htmlspecialchars($row['COUNT']) ?></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>Funcionário</th>
                                                        <th><strong>Inclusão</strong></th>
                                                        <th><strong>Conferência Inicial</strong></th>
                                                        <th><strong>Sólidos</strong></th>
                                                        <th><strong>Semi Sólidos</strong></th>
                                                        <th><strong>Encapsulação</strong></th>
                                                        <th><strong>Envelopes</strong></th>
                                                        <th><strong>Conferência Final</strong></th>
                                                        <th><strong>Dispensação</strong></th>
                                                        <th><strong>Logística</strong></th>
                                                        <th><strong>Entrega Cliente</strong></th>
                                                        <th><strong>TOTAL</strong></th>
                                                    </tr>
                                                </thead>
                                                <tbody>
                                                    <?php
                                                    // Inicialize um array associativo para armazenar as contagens de etapas por funcionário
                                                    $etapasPorFuncionario = array();

                                                    // Inicialize um array para armazenar as contagens totais de etapas
                                                    $totalEtapas = array_fill(0, 10, 0);

                                                    while ($row = ibase_fetch_assoc($result_resumo)) {
                                                        // Obtenha os dados do funcionário e da etapa da linha atual
                                                        $funcionario = htmlspecialchars($row['manipulador']);
                                                        $etapa = intval($row['CDETAPA']);
                                                        $count = intval($row['QTD']);

                                                        // Verifique se o funcionário já está no array $etapasPorFuncionario
                                                        if (!isset($etapasPorFuncionario[$funcionario])) {
                                                            // Se não estiver, inicialize um array vazio para o funcionário
                                                            $etapasPorFuncionario[$funcionario] = array_fill(0, 10, 0);
                                                        }

                                                        // Atualize a contagem da etapa para o funcionário na coluna correspondente
                                                        $etapasPorFuncionario[$funcionario][$etapa - 1] = $count;

                                                        // Atualize a contagem total da etapa
                                                        $totalEtapas[$etapa - 1] += $count;
                                                    }

                                                    // Exiba as contagens na tabela
                                                    foreach ($etapasPorFuncionario as $funcionario => $contagens) {
                                                        echo "<tr>";
                                                        echo "<td>$funcionario</td>";
                                                        foreach ($contagens as $contagem) {
                                                            echo "<td>$contagem</td>";
                                                        }
                                                        echo "<td>" . array_sum($contagens) . "</td>";
                                                        echo "</tr>";
                                                    }

                                                    // Adicione a linha de totais por coluna
                                                    echo "<tr>";
                                                    echo "<td><strong>TOTAL</strong></td>";
                                                    foreach ($totalEtapas as $totalEtapa) {
                                                        echo "<td><strong>$totalEtapa</strong></td>";
                                                    }
                                                    echo "<td><strong>" . array_sum($totalEtapas) . "</strong></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>


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

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

            <!-- <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>
            <link rel="stylesheet" href="https://cdn.datatables.net/1.11.3/css/dataTables.bootstrap5.min.css">
            <link rel="stylesheet" href="../../assets/css/resetedatatable.css">
 -->

            <!-- 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">Apuração Diária</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 -->
                            </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>
                applyFilter('cidade', 'filial', 'data-cidade', '<?php echo isset($filialselect) ? $filialselect : ''; ?>');



                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(campoId) {
                    const campo = document.getElementById(campoId);
                    const valor = campo.value;

                    if (valor === "Selecione" || valor.trim() === "" || valor.trim() === "produtividade.php") {
                        campo.classList.add('is-invalid'); // Adiciona a classe para destacar o erro
                        return false;
                    } else {
                        campo.classList.remove('is-invalid'); // Remove a classe caso seja válido
                        return true;
                    }
                }

                function validarFormulario() {
                    let camposValidos = true;

                    const mesValido = validarCampo('mes');
                    const anoValido = validarCampo('ano');
                    const etapa = validarCampo('etapa');

                    camposValidos = mesValido && anoValido && etapa;

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

                    return camposValidos; // Retorna true apenas se todos os campos forem válidos
                }

                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.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");
                        const
                            nome =
                            element.getAttribute("data-nome");
                        //
                        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('apuracao_diaria_modal.php?id=' + encodeURIComponent(requisicaoId) + '&nome=' + encodeURIComponent(nome) + '&filial=<?php echo urlencode($filial); ?>&ano=<?php echo urlencode($ano); ?>&mes=<?php echo urlencode($mes); ?>&etapa=<?php echo urlencode($etapa); ?>&dias=<?php echo urlencode($diasrestantes); ?>')
                            .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>