<?php
include "conexao.php";
$response = [];

function ArrumaTelefone($telefone)
{
    $array_tel1 = ['(', ')', ' ', '-'];
    $array_tel2 = ['', '', '', ''];
    return str_replace($array_tel1, $array_tel2, $telefone);
}

 
function TirarAcentos($string) {
        return preg_replace(
            array(
                "/(á|à|ã|â|ä)/", "/(Á|À|Ã|Â|Ä)/",
                "/(é|è|ê|ë)/", "/(É|È|Ê|Ë)/",
                "/(í|ì|î|ï)/", "/(Í|Ì|Î|Ï)/",
                "/(ó|ò|õ|ô|ö)/", "/(Ó|Ò|Õ|Ô|Ö)/",
                "/(ú|ù|û|ü)/", "/(Ú|Ù|Û|Ü)/",
                "/(ñ)/", "/(Ñ)/"
            ),
            explode(" ", "a A e E i I o O u U n N"),
            $string
        );
    }

function TrataNome($nome) {
        $array_nome = explode(" ", $nome);
        return $array_nome[0];
}

function BuscaDados($QtdDias)
{
    include "conexao.php";
    $Hoje = date('Y-m-d');
    $DiasAntes = date('d-m-Y', strtotime($Hoje . "$QtdDias days"));

    $BuscaAntes = "SELECT nome_cli,lote, quadra, celular, idparcelas, valor_parcelas, idcliente, data_vencimento_parcela, descricao_empreendimento, numero_sequencia, idcontacorrente, empreendimento.suporte_habilita_whatsapp, empreendimento.session_id, empreendimento.status_connection 
        FROM parcelas
        INNER JOIN venda ON parcelas.venda_idvenda = venda.idvenda
        INNER JOIN cliente ON parcelas.cliente_id_novo = cliente.idcliente 
        INNER JOIN telefone_cli ON telefone_cli.id_cliente = cliente.idcliente
        INNER JOIN produto ON venda.produto_idproduto = produto.idproduto 
        INNER JOIN lote ON venda.lote_idlote = lote.idlote 
        INNER JOIN empreendimento ON produto.empreendimento_idempreendimento = empreendimento.idempreendimento 
        INNER JOIN empreendimento_cadastro ON empreendimento.empreendimento_cadastro_id = empreendimento_cadastro.idempreendimento_cadastro 
        INNER JOIN empreendimento_centrocusto ON empreendimento_cadastro.idempreendimento_cadastro = empreendimento_centrocusto.empreendimento_id
        INNER JOIN contacorrente ON empreendimento_centrocusto.contacorrente_id = contacorrente.idcontacorrente
        WHERE data_vencimento_parcela = '$DiasAntes' 
        AND fluxo = 0 
        AND tipo_venda = 2 
        AND situacao = 'Em Aberto'
        AND bloqueiosms = 0
        AND remessa = 1
        GROUP BY idparcelas";
        
        // echo $BuscaAntes;
        

    $Dados = [];
    $ExecutaQuery = mysqli_query($db, $BuscaAntes);
    while ($row = mysqli_fetch_assoc($ExecutaQuery)) {
        $Dados[] = $row;
    }
    
    // print_r($Dados);
    // die();

    return $Dados;
}

function enviaFilaParaAPI($dados)
{
    
    echo json_encode($dados);
    
$url = 'https://boletos.ibsystem.com.br/envio_filaWa.php';

$ch = curl_init($url);

$options = [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
    CURLOPT_POSTFIELDS => json_encode($dados),
];

curl_setopt_array($ch, $options);

$resposta = curl_exec($ch);

$erro = curl_error($ch);
curl_close($ch);

return $erro ? ['erro' => $erro] : json_decode($resposta, true);
}

date_default_timezone_set('America/Sao_Paulo');
$host = $_SERVER['HTTP_HOST'];

$cont = 0;
$QueryDias = mysqli_query($db, "SELECT * FROM suporte_sms");
$dados = [];
while ($DadosDias = mysqli_fetch_assoc($QueryDias)) {
    $QtdDias = $DadosDias["dias"];

    $dadosParcelas = BuscaDados($QtdDias);
    
    // print_r($dadosParcelas);

 

    foreach ($dadosParcelas as $key) {
        $idparcelas = $key["idparcelas"];
        $idcontacorrente = $key["idcontacorrente"];
        $nome_cli = $key["nome_cli"];
        $descricao_empreendimento = $key["descricao_empreendimento"];
        $quadra = $key["quadra"];
        $lote = $key["lote"];
        $valor_parcelas = 'R$' . number_format($key['valor_parcelas'], 2, '.', ',');
        $data_vencimento_parcela = $key["data_vencimento_parcela"];
        $long_link = 'https://'.$host . '/parcela_email.php?antecipar[]=' . $idparcelas . '&contacorrente_id=' . $idcontacorrente;
        $Mensagem = "Olá " . TrataNome(TirarAcentos($nome_cli)) . " este é um lembrete da sua parcela do(a) $descricao_empreendimento Quadra: $quadra Lote: $lote, no valor de " . $valor_parcelas . " com vencimento em " . $data_vencimento_parcela . ". Segue o link do boleto: " ;
        
        
        $celular = ArrumaTelefone($key["celular"]);
        $tamanho_tel = strlen($celular);
        
        if ($tamanho_tel == 11) {
            $dados[] = [
                'id_parcela'       => $key["idparcelas"],
                'dias_envio'       => "$QtdDias",
                'celular'          => $celular,
                'data_vencimento'  => $key["data_vencimento_parcela"],
                'nome_cliente'     => $key["nome_cli"],
                'link_sistema'     => "https://$host",
                'sessao_id'        => $key["session_id"],
                'idcontacorrente'  => $key["idcontacorrente"],
                'mensagem'         => "$Mensagem"
            ];
        }
    }

    // Envia o lote de parcelas encontradas para o endpoint
    if (!empty($dados)) {
        $respostaAPI = enviaFilaParaAPI($dados);
        $response["dias_{$cont}"] = $respostaAPI;
    }
    
    $cont++;
}

// Resposta final da execução
header('Content-Type: application/json');
echo json_encode($response);
?>
