<?php
// Verificar logs da API de checklist

echo "<h1>🔍 Verificação de Logs da API</h1>";

echo "<h2>📊 Status atual do problema</h2>";
echo "<div style='background: #ffebee; padding: 15px; border-radius: 5px; margin: 10px 0;'>";
echo "<p><strong>❌ PROBLEMA:</strong> Checklist salvo com viagem_id=10, deveria ser viagem_id=97</p>";
echo "<p><strong>✅ CONSULTA SQL:</strong> Funciona (encontra viagem ID=97)</p>";
echo "<p><strong>❓ INVESTIGAÇÃO:</strong> Por que $viagemId não está sendo usado?</p>";
echo "</div>";

// Verificar logs recentes do PHP
echo "<h2>📋 Logs de erro recentes:</h2>";
$logFiles = [
    '/var/log/php_errors.log',
    '/var/log/apache2/error.log',
    '/var/log/nginx/error.log',
    ini_get('log_errors') ? ini_get('error_log') : false
];

foreach ($logFiles as $logFile) {
    if ($logFile && file_exists($logFile)) {
        echo "<h3>📄 $logFile</h3>";
        $lastLines = `tail -20 $logFile | grep -i checklist`;
        if ($lastLines) {
            echo "<pre style='background: #f5f5f5; padding: 10px; overflow: auto;'>$lastLines</pre>";
        } else {
            echo "<p>Nenhum log relacionado a checklist encontrado.</p>";
        }
    }
}

// Testar a API diretamente
echo "<h2>🧪 Teste direto da API</h2>";

try {
    $pdo = new PDO('mysql:host=localhost;dbname=pinheir3_controle_frotasV1.1', 'pinheir3_admin', '080880Gelboy');
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    // Simular os dados que o app enviou
    $dadosSimulacao = [
        'viagemId' => 10,
        'veiculoId' => 6,
        'tipoVeiculo' => 'CARRO',
        'dataHora' => '2025-07-04 13:17:00',
        'itens' => [],
        'observacoesGerais' => 'teste simulação'
    ];
    
    echo "<h3>📤 Dados que seriam enviados:</h3>";
    echo "<pre style='background: #e3f2fd; padding: 10px;'>";
    echo "viagemId: {$dadosSimulacao['viagemId']}\n";
    echo "veiculoId: {$dadosSimulacao['veiculoId']}\n";
    echo "dataHora: {$dadosSimulacao['dataHora']}\n";
    echo "</pre>";
    
    // Executar a lógica de busca da viagem
    $viagemIdLocal = intval($dadosSimulacao['viagemId']);
    $veiculoId = intval($dadosSimulacao['veiculoId']);
    
    echo "<h3>🔍 Executando lógica de busca:</h3>";
    
    // Critério 1: mesmo veículo, hoje
    $sqlViagem1 = "SELECT id, data_inicio FROM viagens 
                   WHERE veiculo_id = ? 
                   AND DATE(data_inicio) = CURDATE() 
                   ORDER BY data_inicio DESC 
                   LIMIT 1";
    
    $stmt = $pdo->prepare($sqlViagem1);
    $stmt->execute([$veiculoId]);
    $viagemReal = $stmt->fetch(PDO::FETCH_ASSOC);
    
    if ($viagemReal) {
        echo "<p style='color: green;'>✅ <strong>Critério 1 funcionou!</strong></p>";
        echo "<p>Viagem encontrada: ID={$viagemReal['id']}, data_inicio={$viagemReal['data_inicio']}</p>";
        
        $viagemId = $viagemReal['id'];
        echo "<p style='background: #c8e6c9; padding: 10px;'>";
        echo "<strong>🎯 CONVERSÃO:</strong><br>";
        echo "App enviou: $viagemIdLocal<br>";
        echo "API deveria usar: $viagemId";
        echo "</p>";
        
        if ($viagemId != $viagemIdLocal) {
            echo "<p style='color: green; font-weight: bold;'>✅ A LÓGICA ESTÁ CORRETA! viagemId=$viagemId ≠ $viagemIdLocal</p>";
            echo "<p style='color: red; font-weight: bold;'>❌ Mas o checklist foi salvo com viagem_id=$viagemIdLocal</p>";
            echo "<p style='color: orange; font-weight: bold;'>🔍 CONCLUSÃO: A API não está usando a variável $viagemId!</p>";
        }
        
    } else {
        echo "<p style='color: red;'>❌ Critério 1 falhou</p>";
    }
    
} catch (Exception $e) {
    echo "<p style='color: red;'>Erro: " . $e->getMessage() . "</p>";
}

echo "<hr>";
echo "<p><small>Debug executado em: " . date('Y-m-d H:i:s') . "</small></p>";
?> 
