<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
header('Content-Type: text/plain');

require_once 'includes/funcoes.php';

$pdo = conectarBanco();

// Buscar primeira empresa ativa
$stmt = $pdo->query("SELECT id, nome, token, ambiente FROM empresas WHERE ativo = 1 LIMIT 1");
$empresa = $stmt->fetch(PDO::FETCH_ASSOC);

if (!$empresa) {
    die("Nenhuma empresa ativa encontrada no banco");
}

echo "=== TESTE API FOCUS ===\n";
echo "Empresa: " . $empresa['nome'] . "\n";
echo "Ambiente: " . $empresa['ambiente'] . "\n";
echo "Token: " . substr($empresa['token'], 0, 20) . "...\n\n";

// Buscar primeiro emitente
$stmt = $pdo->prepare("
    SELECT e.*, end.codigo_municipio 
    FROM emitentes e 
    LEFT JOIN enderecos end ON e.endereco_id = end.id 
    WHERE e.empresa_id = ? AND e.ativo = 1 
    LIMIT 1
");
$stmt->execute([$empresa['id']]);
$emitente = $stmt->fetch(PDO::FETCH_ASSOC);

if (!$emitente) {
    die("Nenhum emitente encontrado para esta empresa");
}

echo "Emitente: " . $emitente['razao_social'] . "\n";
echo "Código Município: " . $emitente['codigo_municipio'] . "\n\n";

// Testar API
$baseUrl = $empresa['ambiente'] == 'producao' 
    ? 'https://api.focusnfe.com.br/v2' 
    : 'https://homologacao.focusnfe.com.br/v2';

$url = $baseUrl . '/municipios/' . $emitente['codigo_municipio'] . '/itens_lista_servico';

echo "URL: " . $url . "\n\n";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Basic ' . base64_encode($empresa['token'] . ':'),
    'Accept: application/json'
]);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // Apenas para teste

$resposta = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$curlError = curl_error($ch);
curl_close($ch);

echo "HTTP Status: " . $httpCode . "\n";

if ($curlError) {
    echo "Erro CURL: " . $curlError . "\n";
}

echo "\n=== RESPOSTA ===\n";
echo $resposta . "\n";

if ($httpCode == 200) {
    $dados = json_decode($resposta, true);
    if (is_array($dados)) {
        echo "\n✅ Total de serviços encontrados: " . count($dados) . "\n";
        if (count($dados) > 0) {
            echo "\nPrimeiros serviços:\n";
            for ($i = 0; $i < min(5, count($dados)); $i++) {
                echo "- " . $dados[$i]['codigo'] . ": " . substr($dados[$i]['descricao'], 0, 80) . "...\n";
            }
        }
    }
}