<?php
require '../conexao/conexao.php';
require '../sessao.php';
require '../configuacoes.php';
//Declarando null pro resultado do record, caso o usuário clique em pesquisar, ela será preenchida.
$resultmeta = null;

//VERIFICANDO SE O USUÁRIO CLICOU NO BOTÃO PESQUISAR
if (isset($_GET['form_submitted']) && $_GET['form_submitted'] == '1') {

$records_per_page = 10;
$current_page = $_GET['page'] ?? 1;
$start_from = ($current_page - 1) * $records_per_page;
$hasResults = false;


    // Obtendo os parâmetros
    $nome = $_GET['nome'] ?? null;
    $nome_fantasia_razao = $_GET['nome_fantasia_razao'] ?? null;
    $cpf = $_GET['cpf'] ?? null;
    $cnpj = $_GET['cnpj'] ?? null;
    $situacao = $_GET['situacao'] ?? null;
	
	$tipopessoa = $_GET['tipopessoa'] ?? null;

    // Removendo quaisquer caracteres que não sejam numéricos do CPF
        $cpf = preg_replace('/\D/', '', $cpf);

        // Removendo quaisquer caracteres que não sejam numéricos do CNPJ
        $cnpj = preg_replace('/\D/', '', $cnpj);


    // Iniciando a construção do SQL BASE
    $sql_base = "SELECT * from pessoa WHERE 1=1 and nome <> 'Manda Receita'";

        // Adicionando condições conforme os parâmetros
        if (isset($nome) && trim($nome) !== "") {
            $nome = strtoupper($nome);
            $nome_seguro = $connectionmysql->real_escape_string($nome);
            $sql_base .= " AND UPPER(nome) LIKE '%$nome_seguro%'";
        }

        if (isset($nome_fantasia_razao) && trim($nome_fantasia_razao) !== "") {
            $nome_fantasia_razao = strtoupper($nome_fantasia_razao);
            $nome_seguro = $connectionmysql->real_escape_string($nome_fantasia_razao);
            $sql_base .= " AND UPPER(nome_razao) LIKE '%$nome_seguro%'";
        }

        if (isset($nome_fantasia_razao) && trim($nome_fantasia_razao) !== "") {
            $nome_fantasia_razao = strtoupper($nome_fantasia_razao);
        
            // Escapar a entrada do usuário para evitar injeção SQL
            $nome_seguro = $connectionmysql->real_escape_string($nome_fantasia_razao);
        
            // Adicionar os caracteres de porcentagem para a busca com LIKE e concatenar com a consulta SQL
            $sql_base .= " AND (UPPER(nome_razao) LIKE '%" . $nome_seguro . "%' OR UPPER(nome_fantasia) LIKE '%" . $nome_seguro . "%')";
        }
        
        
        // Se o CPF estiver preenchido, adicione-o à consulta SQL
        if (isset($cpf) && trim($cpf) !== "") {

            $escaped_cpf = $connectionmysql->real_escape_string($cpf); 
            $sql_base .= " AND cpf = '" . $escaped_cpf . "'";
        }

        // Se o CNPJ estiver preenchido, adicione-o à consulta SQL
        if (isset($cnpj) && trim($cnpj) !== "") {
          
            $escaped_cnpj = $connectionmysql->real_escape_string($cnpj); 
            $sql_base .= " AND cnpj = '" . $escaped_cnpj . "'";
        }


        if ($tipopessoa === 'f' || $tipopessoa === 'j') {
			$sql_base .= " AND tipo_pessoa = '$tipopessoa'";
		}

        if ($situacao === 'A' || $situacao === 'I') {
			$sql_base .= " AND situacao = '$situacao'";
		}


// 1. Contagem de registros totais
$sql_count = "SELECT COUNT(*) AS total FROM (" . $sql_base . ") AS subquery";
$result_count = $connectionmysql->query($sql_count);
$total_records = 0;
if ($result_count) {
    $total_records = $result_count->fetch_assoc()['total'];
    $total_pages = ceil($total_records / $records_per_page);  // Determina o número total de páginas

    // 2. Construindo a consulta final com LIMIT para paginação

    $sql_final = $sql_base . " ORDER BY tipo_pessoa,nome LIMIT $start_from, $records_per_page"; 

    $resultmeta= $connectionmysql->query($sql_final);

} else {
    die('Erro na contagem de registros: ' . $connectionmysql->error);
}

//echo $total_records;
//echo $sql_final;




}
?>

<!DOCTYPE html>
<html lang="pt-br">
  <?php 
        $pageTitle = "Consultar Pessoa"; // 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">
                        
                        <div class="col-6 text-left">
                            <h4 class="page-title">Consultar Pessoa</h4>
                        </div>

                        <div class="col-6 text-right">
                           
                        <a href="formulario_inclusao_alteracao_pessoa.php?id=0" class="btn btn-light" alt="Incluir Cadastro" title="Incluir Cadastro"><i class="mdi mdi-plus"></i> Adicionar</a>
                            
                            
                        </div>

                        <div class="col-12">
                            <hr>
                        </div>

                        <div class="col-12">
						<form method="get" action="">
                            <div class="form-row mb-3">
							
									<div class="form-group col-md-3">
									<label for="tipopessoa" class="col-form-label">Tipo Pessoa</label>
                                    <select id="tipopessoa" name="tipopessoa" class="form-control">
										<option value="Todos" <?php echo (!isset($tipopessoa) || $tipopessoa == "Todos") ? "selected" : ""; ?>>Todos</option>
										<option value="f" <?php echo (isset($tipopessoa) && $tipopessoa == "f") ? "selected" : ""; ?>>Física</option>
										<option value="j" <?php echo (isset($tipopessoa) && $tipopessoa == "j") ? "selected" : ""; ?>>Jurídica</option>
									</select>
								</div>

                                <div class="form-group col-md-3">
                                    <label for="nome" class="col-form-label">Nome</label>
                                    <input type="text" class="form-control" id="nome" name="nome" placeholder="Nome" value="<?php echo isset($nomeMedico) ? htmlspecialchars($nomeMedico) : ''; ?>">

                                </div>

                                <div class="form-group col-md-3 pessoa-fisica">
                                    <label for="cpf" class="col-form-label">Cpf</label>
                                    
                                    
                                    <p><input type="text" name="cpf" id="cpf" class="form-control" placeholder="Informe o cpf" value=""></p>

                                </div>
								
                                <div class="form-group col-md-3 pessoa-juridica">
                                    <label for="cnpj" class="col-form-label">cnpj</label>
                                    
                                    <p>  <input type="text" name="cnpj" id="cnpj" class="form-control" placeholder="Informe o cnpj" value="" ></p>
                                </div>




                                <div class="form-group col-md-3 pessoa-juridica">
                                    <label for="nome_fantasia_razao" class="col-form-label">Nome Fantasia/Razão Social</label>
                                    <p>  <input type="text" name="nome_fantasia_razao" id="nome_fantasia_razao" class="form-control" placeholder="Informe o nome Fantasia ou Razão Social" value="" ></p>
                            </div>
								


								<div class="form-group col-md-3">
									<label for="situacao" class="col-form-label">Situação</label>
									<select id="situacao" name="situacao" class="form-control">
										<option value="Todos" <?php echo (!isset($situacao) || $situacao == "Todos") ? "selected" : ""; ?>>Todos</option>
										<option value="A" <?php echo (isset($situacao) && $situacao == "1") ? "selected" : ""; ?>>Ativo</option>
										<option value="I" <?php echo (isset($situacao) && $situacao == "0") ? "selected" : ""; ?>>Inativo</option>
									</select>
								</div>
								
								<div class="form-group col-md-3">
									<label for="situacao" class="col-form-label">Situação</label>
									<select id="situacao" name="situacao" class="form-control">
										<option value="Todos" <?php echo (!isset($situacao) || $situacao == "Todos") ? "selected" : ""; ?>>Todos</option>
										<option value="A" <?php echo (isset($situacao) && $situacao == "1") ? "selected" : ""; ?>>Ativo</option>
										<option value="I" <?php echo (isset($situacao) && $situacao == "0") ? "selected" : ""; ?>>Inativo</option>
									</select>
								</div>
                                <!--CAMPO PARA INDICAR QUE CLICAMOS NO PESQUISAR -->
                                <input type="hidden" name="form_submitted" value="1" />

                                <div class="col-12 text-right">
								<a href="index.php" class="btn btn-warning mr-2"><i class="mdi mdi-plus"></i> Limpar</a>
                                    <button type="submit" class="btn btn-primary"><i class="mdi mdi-magnify"></i> Pesquisar</button>
                                </div>
						</form>
                            </div>
                        </div>
                        <?php
                        //VERIFICANDO SE O USUÁRIO CLICOU NO BOTÃO PESQUISAR
                        if (isset($_GET['form_submitted']) && $_GET['form_submitted'] == '1') { ?>

                        <div class="col-12">
                            <div style="display: flex; justify-content: space-between; align-items: center;">
                                <h6>Lista de Pessoas</h6>
                                <div>
                                   
                                    <span>Total de registros: <?php echo $total_records; ?></span>
                                </div>
                            </div>
             
								  <table id="datatable-buttons" class="table table-striped table-bordered dt-responsive nowrap">
								<thead>
									<tr class="text-center">
                                        <th>Tipo</th>
                                        <th>Nome</th>
										<th>Cpf</th>
										<th>Nome Fantasia</th>
										<th>CNPJ</th>
										<th>Situação</th>
										<th>Situacao 2 </th>
										<th>Ações</th>
									</tr>
								</thead>
								<tbody>
									<?php
									$hasResults = false;  // Inicializa como false

                                    if ($resultmeta) {  // Verifica se $resultmeta é válido
                                        while ($row = $resultmeta->fetch_assoc()) {  // Usa $row em vez de $rowMeta para consistência
                                            $hasResults = true;  // Indica que encontrou ao menos um resultado
                                            $id_pessoa = $row['id_pessoa'];
                                            ?>
                                            <tr class="text-center">
                                            <td>
                                                <?php 
                                                if($row['tipo_pessoa'] == 'f') {
                                                    echo 'Física';
                                                } elseif($row['tipo_pessoa'] == 'j') {
                                                    echo 'Jurídica';
                                                } 
                                                ?>
                                            </td>   
                                                <td><?php echo htmlspecialchars($row['nome']); ?></td>
                                                <td><?php echo htmlspecialchars($row['cpf']); ?></td>
                                                <td><?php echo htmlspecialchars($row['nome_fantasia']); ?></td>
                                                <td><?php echo htmlspecialchars($row['cnpj']); ?></td>
                                                <td>
                                                <?php 
                                                if($row['situacao'] == 'A') {
                                                    echo 'Ativo';
                                                } elseif($row['situacao'] == 'I') {
                                                    echo 'Inativo';
                                                } 
                                                ?>
                                            </td>  
											<td>
											<?php 
                                                if($row['situacao'] == 'A') {
                                                    echo 'Ativo';
                                                } elseif($row['situacao'] == 'I') {
                                                    echo 'Inativo';
                                                } 
                                                ?>
												</td>
                                                <td>
                                                
                                                <a href="formulario_inclusao_alteracao_pessoa.php?id=1&id_pessoa=<?php echo $id_pessoa; ?>"  class="table-actions link-view" title="Alterar Pessoa"><i class="mdi mdi mdi-content-save-edit"></i></a>

                                                <a href="detalhar_pessoa.php?&id_pessoa=<?php echo $id_pessoa; ?>"  class="table-actions link-view"><i class="mdi mdi mdi-account-search"></i></a>
                                                
                                                </td>
                                            </tr>
                                            <?php
                                        }
                                    }
                                    
                                    if (!$hasResults) {
                                        echo "<tr><td colspan='7' class='text-center'>Sem resultado para a consulta</td></tr>";
                                    }
									?>
								</tbody>
							</table>				
                            </div>
                        </div>
                        <div style="display: flex; justify-content: center;">
                            <?php include('paginacao.php'); ?>
                        </div>
                        <?php } //fechamento do IF que valida se o usuário clicou no botão pesquisar ?>
                    </div>
                </div>      
		
            </div> <!-- end container -->
        </div>
		
        <!-- end wrapper -->

        <!-- ============================================================== -->
        <!-- End Page content -->
        <!-- ============================================================== -->

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

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

        <!-- Vendor js -->
        <script src="../../assets/js/vendor.min.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>
     

    </body>
</html>

