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

// Receba o ID da requisição da consulta
$filialselect = !empty($_GET['filial']) ? $_GET['filial'] : null;
$filial = explode(',', $filialselect);
$filial = array_filter($filial, function ($item) {
    return $item !== 'x';
});
$filial = array_values($filial);
$filial = implode(',', $filial);

$periodo = $_GET['periodo'] ?? null;
$semana = $_GET['semana'] ?? null;
$data_fim = $_GET['data_fim'] ?? null;
$data_inicio = $_GET['data_inicio'] ?? null;
// Capturar os valores de 'ano' e 'mes' passados pela URL usando $_GET
$ano = isset($_GET['ano']) ? (int)$_GET['ano'] : date('Y'); // Default para o ano atual
$mes = isset($_GET['mes']) ? (int)$_GET['mes'] : date('m'); // Default para o mês atual

// Garantir que o mês tenha dois dígitos (ex: 01, 02, etc.)
$mes = str_pad($mes, 2, '0', STR_PAD_LEFT);

// Definir o início e o fim do mês

$sql_medicos_demandantes = " SELECT DISTINCT A1.CODIGO_MEDICO,ME.NOMEMEDICO as NOME_MEDICO,
 CR.SIGLA || '-' || ME.CR_ESTADO || '-' || ME.CRM as CRM_COMPLETO,
       ESPEC.NOMEESPECIALIDADE
        from ATENDIMENTO_A1 A1
left join UTIL_REL_AG1(1) AG on AG.AG1_OP > 0
inner join MEDICO ME on A1.CODIGO_MEDICO = ME.CODIGO
left join MEDICO_ESPECIALIDADE ESPEC on ESPEC.CODIGO = ME.CODIGO_MEDICO_ESPECIALIDADE
left join MEDICO_CR CR on ME.CODIGO_CONSELHO_REGIONAL = CR.CODIGO and CR.CR_PADRAO = -1
where A1.TIPO_ATENDIMENTO = 1";

// Adicionando condição de filial, se houver
if ($filial && $filial != "Todos") {
    // Verifica se $filial é uma string e não um array
    if (is_string($filial)) {
        // Certifique-se de que os valores sejam inteiros
        $filial = implode(",", array_map('intval', explode(",", $filial))); // Converte a string em array e depois para string separada por vírgulas
    }
    // Adiciona a condição de filial à consulta
    $sql_medicos_demandantes .= " AND A1.aviada_lj IN ($filial)";
}

// Adicionando condição de ano, se houver
if ($ano && $ano != "Todos") {
    $sql_medicos_demandantes .= " AND EXTRACT(YEAR FROM A1.aviada_dt) = " . intval($ano);
}

// Adicionando condição de mês, se houver
if ($mes && $mes != "Todos") {
    $sql_medicos_demandantes .= " AND EXTRACT(MONTH FROM A1.aviada_dt) = " . intval($mes);
}
if (!empty($periodo) && $periodo != "mes") {
    if ($periodo == 1) {
        $sql_medicos_demandantes .= " AND EXTRACT(DAY FROM A1.aviada_dt) <= 15 ";
    } elseif ($periodo == 2) {
        $sql_medicos_demandantes .= " AND EXTRACT(DAY FROM  A1.aviada_dt) > 15 ";
    }
}
if (!empty($semana)) {
    if ($semana != "mes") {
        $sql_medicos_demandantes .= " AND A1.aviada_dt  BETWEEN '$data_inicio' AND '$data_fim'";
    }
}
// Finalize a consulta
$sql_medicos_demandantes .= "
        GROUP BY A1.CODIGO_MEDICO,ME.NOMEMEDICO, CRM_COMPLETO, NOMEESPECIALIDADE;";

//echo $sql_medicos_demandantes;
// exit();

$resultmedicodemandantes = ibase_query($connection, $sql_medicos_demandantes);

if (!$resultmedicodemandantes) {
    die('Erro na consulta' . $sql_medicos_demandantes . 'Firebird/InterBase: ' . ibase_errmsg());
}
?>

<table id="tabelaModalMedico" class="table table-bordered table-hover table-sm">
    <h4>Médicos Demandantes</h4>
    <thead class="thead-light">
        <tr>

            <th scope="col" style="width: 231.68px;">Nome Médico</th>
            <th scope="col" style="width: auto;">CRM</th>
            <th scope="col">Especialidade</th>
        </tr>
    </thead>
    <tbody>
        <?php while ($row = ibase_fetch_assoc($resultmedicodemandantes)) {
            $row['NOME_MEDICO'] = mb_convert_encoding($row['NOME_MEDICO'], 'UTF-8', 'ISO-8859-1');
        ?>
            <tr>

                <td><?= htmlspecialchars($row['NOME_MEDICO']) ?></td>
                <td><?= htmlspecialchars($row['CRM_COMPLETO']); ?></td>
                <td><?= htmlspecialchars($row['NOMEESPECIALIDADE']) ?></td>
            </tr>
        <?php } ?>
    </tbody>
</table>