<?php
/**
 * Script para verificar se a viagem ID 79 existe no servidor
 * e diagnosticar problemas de sincronização
 */

require_once 'conexao.php';

echo "=== VERIFICAÇÃO DA VIAGEM ID 79 ===\n";
echo "Data/Hora: " . date('Y-m-d H:i:s') . "\n\n";

try {
    $pdo = conectarBanco();
    
    // 1. Verificar se a viagem existe
    echo "1. VERIFICANDO SE A VIAGEM EXISTE:\n";
    $stmt = $pdo->prepare("SELECT * FROM viagens WHERE id = ?");
    $stmt->execute([79]);
    $viagem = $stmt->fetch(PDO::FETCH_ASSOC);
    
    if ($viagem) {
        echo "✅ Viagem ID 79 ENCONTRADA!\n";
        echo "   - Técnico ID: " . $viagem['tecnico_id'] . "\n";
        echo "   - Veículo ID: " . $viagem['veiculo_id'] . "\n";
        echo "   - Cliente: " . $viagem['cliente'] . "\n";
        echo "   - Data Início: " . $viagem['data_inicio'] . "\n";
        echo "   - Data Fim: " . ($viagem['data_fim'] ?: 'NULL') . "\n";
        echo "   - Sincronizado: " . $viagem['sincronizado'] . "\n";
    } else {
        echo "❌ Viagem ID 79 NÃO ENCONTRADA!\n";
    }
    
    // 2. Verificar viagens do veículo 6 na data 2025-08-25
    echo "\n2. VERIFICANDO VIAGENS DO VEÍCULO 6 EM 2025-08-25:\n";
    $stmt = $pdo->prepare("
        SELECT id, tecnico_id, cliente, data_inicio, data_fim, sincronizado 
        FROM viagens 
        WHERE veiculo_id = 6 
        AND DATE(data_inicio) = '2025-08-25'
        ORDER BY data_inicio DESC
    ");
    $stmt->execute();
    $viagens = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    if ($viagens) {
        echo "✅ Encontradas " . count($viagens) . " viagens:\n";
        foreach ($viagens as $v) {
            echo "   - ID: " . $v['id'] . ", Cliente: " . $v['cliente'] . ", Início: " . $v['data_inicio'] . "\n";
        }
    } else {
        echo "❌ Nenhuma viagem encontrada para o veículo 6 em 2025-08-25\n";
    }
    
    // 3. Verificar todas as viagens do técnico 4
    echo "\n3. VERIFICANDO TODAS AS VIAGENS DO TÉCNICO 4:\n";
    $stmt = $pdo->prepare("
        SELECT id, veiculo_id, cliente, data_inicio, data_fim, sincronizado 
        FROM viagens 
        WHERE tecnico_id = 4
        ORDER BY data_inicio DESC
        LIMIT 10
    ");
    $stmt->execute();
    $viagensTecnico = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    if ($viagensTecnico) {
        echo "✅ Encontradas " . count($viagensTecnico) . " viagens do técnico 4:\n";
        foreach ($viagensTecnico as $v) {
            echo "   - ID: " . $v['id'] . ", Veículo: " . $v['veiculo_id'] . ", Cliente: " . $v['cliente'] . "\n";
        }
    } else {
        echo "❌ Nenhuma viagem encontrada para o técnico 4\n";
    }
    
    // 4. Verificar estrutura da tabela viagens
    echo "\n4. VERIFICANDO ESTRUTURA DA TABELA VIAGENS:\n";
    $stmt = $pdo->query("DESCRIBE viagens");
    $colunas = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    echo "Colunas da tabela viagens:\n";
    foreach ($colunas as $col) {
        echo "   - " . $col['Field'] . " (" . $col['Type'] . ")\n";
    }
    
    // 5. Verificar últimas viagens criadas
    echo "\n5. ÚLTIMAS 5 VIAGENS CRIADAS:\n";
    $stmt = $pdo->query("
        SELECT id, tecnico_id, veiculo_id, cliente, data_inicio, sincronizado 
        FROM viagens 
        ORDER BY id DESC 
        LIMIT 5
    ");
    $ultimas = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    foreach ($ultimas as $v) {
        echo "   - ID: " . $v['id'] . ", Técnico: " . $v['tecnico_id'] . ", Veículo: " . $v['veiculo_id'] . ", Cliente: " . $v['cliente'] . "\n";
    }
    
    // 6. Verificar se há problemas com o campo tecnico_id
    echo "\n6. VERIFICANDO PROBLEMAS COM TECNICO_ID:\n";
    $stmt = $pdo->query("
        SELECT tecnico_id, COUNT(*) as total 
        FROM viagens 
        GROUP BY tecnico_id 
        ORDER BY total DESC 
        LIMIT 5
    ");
    $tecnicos = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    echo "Top 5 técnicos por número de viagens:\n";
    foreach ($tecnicos as $t) {
        echo "   - Técnico: '" . $t['tecnico_id'] . "' (" . $t['total'] . " viagens)\n";
    }
    
} catch (Exception $e) {
    echo "❌ ERRO: " . $e->getMessage() . "\n";
}

echo "\n=== FIM DA VERIFICAÇÃO ===\n";
?>
