<?php
header('Content-Type: text/html; charset=utf-8');
echo "<h2>🔍 Verificar Serviço GPS Android</h2>";

// 1. Verificar se há dados GPS recentes
echo "<h3>1. Verificar dados GPS recentes</h3>";

try {
    require_once 'config/database.php';
    $pdo = Database::getConnection();
    
    // Verificar pontos das últimas 24 horas
    $stmt = $pdo->query("SELECT COUNT(*) as total FROM rastreamento_tempo_real WHERE timestamp >= DATE_SUB(NOW(), INTERVAL 24 HOUR)");
    $result = $stmt->fetch();
    echo "📊 Pontos GPS nas últimas 24h: " . $result['total'] . "<br>";
    
    // Verificar pontos da viagem 1
    $stmt = $pdo->prepare("SELECT COUNT(*) as total FROM rastreamento_tempo_real WHERE viagem_id = ?");
    $stmt->execute([1]);
    $result = $stmt->fetch();
    echo "📊 Pontos da viagem 1: " . $result['total'] . "<br>";
    
    if ($result['total'] > 0) {
        // Mostrar último ponto
        $stmt = $pdo->prepare("SELECT * FROM rastreamento_tempo_real WHERE viagem_id = ? ORDER BY timestamp DESC LIMIT 1");
        $stmt->execute([1]);
        $ultimoPonto = $stmt->fetch();
        
        echo "<div style='background: #e8f5e8; padding: 10px; border-radius: 5px; margin: 10px 0;'>";
        echo "<h4>✅ Último ponto GPS da viagem 1:</h4>";
        echo "<p><strong>Timestamp:</strong> {$ultimoPonto['timestamp']}</p>";
        echo "<p><strong>Latitude:</strong> {$ultimoPonto['latitude']}</p>";
        echo "<p><strong>Longitude:</strong> {$ultimoPonto['longitude']}</p>";
        echo "<p><strong>Velocidade:</strong> {$ultimoPonto['velocidade']} km/h</p>";
        echo "</div>";
    } else {
        echo "<div style='background: #ffebee; padding: 10px; border-radius: 5px; margin: 10px 0;'>";
        echo "<h4>❌ Nenhum ponto GPS encontrado para viagem 1</h4>";
        echo "<p>Isso indica que o serviço GPS não está enviando dados.</p>";
        echo "</div>";
    }
    
} catch (Exception $e) {
    echo "❌ Erro ao verificar dados: " . $e->getMessage() . "<br>";
}

// 2. Verificar se a API está funcionando
echo "<h3>2. Testar API de GPS</h3>";

if (isset($_POST['testar_gps'])) {
    echo "<h4>🧪 Testando envio de GPS...</h4>";
    
    // Simular dados do Android
    $dadosTeste = [
        'acao' => 'atualizar-posicao',
        'viagem_id' => 1,
        'latitude' => -23.5505,
        'longitude' => -46.6333,
        'velocidade' => 25.5,
        'precisao' => 5.2,
        'altitude' => 760,
        'provider' => 'gps',
        'timestamp' => time() * 1000
    ];
    
    $jsonData = json_encode($dadosTeste);
    
    // Fazer requisição para a API
    $url = 'https://sistemas.pinheiroempresas.com.br/controlefrotaV1.1/backend-php/api-simples-v2.php';
    
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData);
    curl_setopt($ch, CURLOPT_HTTPHEADER, [
        'Content-Type: application/json',
        'Content-Length: ' . strlen($jsonData)
    ]);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    
    $response = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    $error = curl_error($ch);
    curl_close($ch);
    
    echo "<div style='background: #f8f9fa; padding: 15px; border: 1px solid #ddd; border-radius: 5px;'>";
    echo "<h5>📤 Dados enviados:</h5>";
    echo "<pre>" . htmlspecialchars($jsonData) . "</pre>";
    echo "<h5>📥 Resposta da API:</h5>";
    echo "<p><strong>HTTP Code:</strong> $httpCode</p>";
    echo "<p><strong>Resposta:</strong></p>";
    echo "<pre>" . htmlspecialchars($response) . "</pre>";
    
    if ($error) {
        echo "<p style='color: red;'><strong>Erro cURL:</strong> $error</p>";
    }
    
    if ($httpCode == 200) {
        echo "<p style='color: green;'>✅ API respondeu com sucesso!</p>";
    } else {
        echo "<p style='color: red;'>❌ API retornou erro HTTP: $httpCode</p>";
    }
    echo "</div>";
}

// Formulário para testar
echo "<form method='post' style='background: #e8f5e8; padding: 15px; border: 1px solid #ddd; border-radius: 5px;'>";
echo "<h4>🔧 Teste Manual:</h4>";
echo "<p>Clique no botão abaixo para simular envio de GPS do Android:</p>";
echo "<button type='submit' name='testar_gps' style='background: #007bff; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer;'>🧪 Testar GPS</button>";
echo "</form>";

// 3. Checklist de verificação
echo "<h3>3. Checklist de Verificação</h3>";
echo "<div style='background: #fff3e0; padding: 15px; border: 1px solid #ddd; border-radius: 5px;'>";
echo "<h4>📋 Verifique no Android:</h4>";
echo "<ul>";
echo "<li>✅ <strong>Notificação GPS:</strong> Você vê '📍 Rastreamento GPS' durante a viagem?</li>";
echo "<li>✅ <strong>Permissões:</strong> O app tem permissão de localização?</li>";
echo "<li>✅ <strong>GPS ativo:</strong> O GPS do celular está ligado?</li>";
echo "<li>✅ <strong>Internet:</strong> O celular tem conexão com internet?</li>";
echo "<li>✅ <strong>Bateria:</strong> O modo de economia de bateria está desligado?</li>";
echo "</ul>";
echo "</div>";

// 4. Logs de debug
echo "<h3>4. Logs de Debug</h3>";
echo "<div style='background: #f8f9fa; padding: 15px; border: 1px solid #ddd; border-radius: 5px;'>";
echo "<h4>📝 Para verificar no Android:</h4>";
echo "<p>1. Abra o <strong>Android Studio</strong> ou <strong>Logcat</strong></p>";
echo "<p>2. Filtre por: <code>LocationForegroundService</code></p>";
echo "<p>3. Procure por estas mensagens:</p>";
echo "<ul>";
echo "<li><code>🚀 LocationForegroundService iniciado</code></li>";
echo "<li><code>📍 Ponto GPS coletado</code></li>";
echo "<li><code>🌐 Enviando localização para o servidor</code></li>";
echo "<li><code>✅ Ponto enviado com sucesso</code></li>";
echo "</ul>";
echo "<p>4. Se não aparecer, o serviço não está rodando!</p>";
echo "</div>";

echo "<h3>✅ Diagnóstico Concluído!</h3>";
echo "<p><strong>Próximos passos:</strong></p>";
echo "<ul>";
echo "<li>Se não há notificação GPS, o serviço não está sendo iniciado</li>";
echo "<li>Se há notificação mas não há dados, há problema no envio</li>";
echo "<li>Se a API não responde, há problema no servidor</li>";
echo "<li>Verifique os logs do Android para mais detalhes</li>";
echo "</ul>";
?>
