<?php
header('Content-Type: text/html; charset=utf-8');
require_once 'config/database.php';

echo "<h1>🧪 Teste da API atualizar-posicao CORRIGIDA</h1>";

try {
    $pdo = conectarBanco();
    
    // 1. Verificar pontos antes do teste
    echo "<h2>📊 Pontos antes do teste</h2>";
    $sql = "SELECT COUNT(*) as total FROM rastreamento_tempo_real WHERE viagem_id = 258";
    $stmt = $pdo->query($sql);
    $totalAntes = $stmt->fetch(PDO::FETCH_ASSOC)['total'];
    echo "<p><strong>Total de pontos para viagem 258:</strong> $totalAntes</p>";
    
    // 2. Testar API com dados corretos
    echo "<h2>🔌 Testando API atualizar-posicao</h2>";
    
    $url = 'https://sistemas.pinheiroempresas.com.br/controlefrota/backend-php/api-simples-v2.php';
    $data = [
        'acao' => 'atualizar-posicao',
        'viagem_id' => '258',
        'latitude' => '-10.123456',
        'longitude' => '-48.123456',
        'velocidade' => '25.5',
        'precisao' => '10.0',
        'altitude' => '100.0',
        'battery_level' => '85',
        'timestamp' => date('Y-m-d H:i:s')
    ];
    
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    
    $response = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
    
    echo "<p><strong>HTTP Code:</strong> $httpCode</p>";
    echo "<p><strong>Resposta da API:</strong></p>";
    echo "<pre>" . htmlspecialchars($response) . "</pre>";
    
    // 3. Verificar pontos após o teste
    echo "<h2>✅ Verificar pontos após teste</h2>";
    $sql = "SELECT COUNT(*) as total FROM rastreamento_tempo_real WHERE viagem_id = 258";
    $stmt = $pdo->query($sql);
    $totalDepois = $stmt->fetch(PDO::FETCH_ASSOC)['total'];
    echo "<p><strong>Total de pontos após teste:</strong> $totalDepois</p>";
    
    if ($totalDepois > $totalAntes) {
        echo "<div style='background: #e8f5e8; padding: 15px; border-radius: 5px;'>";
        echo "<h3>✅ API CORRIGIDA FUNCIONANDO!</h3>";
        echo "<p>A API atualizar-posicao está salvando pontos corretamente.</p>";
        echo "<p><strong>Pontos salvos:</strong> " . ($totalDepois - $totalAntes) . "</p>";
        echo "</div>";
        
        // 4. Mostrar o ponto salvo
        echo "<h3>📍 Último ponto salvo:</h3>";
        $sql = "SELECT * FROM rastreamento_tempo_real WHERE viagem_id = 258 ORDER BY id DESC LIMIT 1";
        $stmt = $pdo->query($sql);
        $ponto = $stmt->fetch(PDO::FETCH_ASSOC);
        
        if ($ponto) {
            echo "<table border='1' style='border-collapse: collapse; width: 100%;'>";
            echo "<tr><th>Campo</th><th>Valor</th></tr>";
            foreach ($ponto as $campo => $valor) {
                echo "<tr>";
                echo "<td><strong>$campo</strong></td>";
                echo "<td>" . ($valor ?: 'NULL') . "</td>";
                echo "</tr>";
            }
            echo "</table>";
        }
        
    } else {
        echo "<div style='background: #ffe6e6; padding: 15px; border-radius: 5px;'>";
        echo "<h3>❌ PROBLEMA PERSISTE!</h3>";
        echo "<p>A API ainda não está salvando pontos.</p>";
        echo "<p><strong>Possíveis causas:</strong></p>";
        echo "<ul>";
        echo "<li>Erro na query SQL</li>";
        echo "<li>Problema de permissões no banco</li>";
        echo "<li>Estrutura da tabela incorreta</li>";
        echo "</ul>";
        echo "</div>";
    }
    
    // 5. Verificar estrutura da tabela
    echo "<h2>🔍 Verificar estrutura da tabela rastreamento_tempo_real</h2>";
    $sql = "DESCRIBE rastreamento_tempo_real";
    $stmt = $pdo->query($sql);
    $colunas = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    echo "<table border='1' style='border-collapse: collapse; width: 100%;'>";
    echo "<tr><th>Campo</th><th>Tipo</th><th>Null</th><th>Key</th><th>Default</th></tr>";
    
    foreach ($colunas as $coluna) {
        echo "<tr>";
        echo "<td>{$coluna['Field']}</td>";
        echo "<td>{$coluna['Type']}</td>";
        echo "<td>{$coluna['Null']}</td>";
        echo "<td>{$coluna['Key']}</td>";
        echo "<td>{$coluna['Default']}</td>";
        echo "</tr>";
    }
    echo "</table>";
    
} catch (Exception $e) {
    echo "<p>❌ Erro: " . $e->getMessage() . "</p>";
}
?> 
