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

echo "<h2>🧪 TESTE: Checklist Automático por Tipo de Veículo</h2>";

try {
    require_once 'config/database.php';
    $pdo = new PDO($dsn, $username, $password, $options);
    
    echo "<div style='background: #e0f7ff; padding: 15px; border-left: 5px solid #17a2b8; margin: 20px 0;'>";
    echo "<h3>🎯 NOVA LÓGICA IMPLEMENTADA:</h3>";
    echo "<p><strong>Antes:</strong> Usuário selecionava manualmente (erro humano)</p>";
    echo "<p><strong>Agora:</strong> App consulta BD automaticamente (100% confiável)</p>";
    echo "</div>";
    
    // Buscar todos os veículos e seus tipos
    $stmt = $pdo->query("SELECT id, modelo, placa, tipo FROM veiculos ORDER BY id");
    $veiculos = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    echo "<h3>📋 SIMULAÇÃO - Como o App irá determinar o checklist:</h3>";
    
    echo "<table border='1' style='border-collapse: collapse; width: 100%; font-family: monospace;'>";
    echo "<tr style='background: #f8f9fa;'>";
    echo "<th>ID</th><th>Veículo</th><th>Tipo no BD</th><th>Checklist que será usado</th><th>Status</th>";
    echo "</tr>";
    
    $corretos = 0;
    $incorretos = 0;
    
    foreach ($veiculos as $veiculo) {
        $tipoOriginal = $veiculo['tipo'];
        
        // Simular lógica do app Android
        $tipoChecklist = match(strtolower($tipoOriginal)) {
            'moto', 'motocicleta' => 'MOTO',
            'carro', 'auto', 'automóvel' => 'CARRO',
            default => 'CARRO'
        };
        
        // Verificar se está correto baseado no modelo
        $modeloLower = strtolower($veiculo['modelo']);
        $tipoEsperado = 'CARRO'; // Default
        
        if (str_contains($modeloLower, 'cg') || 
            str_contains($modeloLower, 'titan') || 
            str_contains($modeloLower, 'cb') ||
            str_contains($modeloLower, 'fan') ||
            str_contains($modeloLower, 'biz')) {
            $tipoEsperado = 'MOTO';
        }
        
        $status = ($tipoChecklist === $tipoEsperado) ? '✅ CORRETO' : '❌ VERIFICAR';
        $cor = ($tipoChecklist === $tipoEsperado) ? 'background: #e0ffe0;' : 'background: #ffe0e0;';
        
        if ($tipoChecklist === $tipoEsperado) {
            $corretos++;
        } else {
            $incorretos++;
        }
        
        echo "<tr style='$cor'>";
        echo "<td>{$veiculo['id']}</td>";
        echo "<td>{$veiculo['modelo']} - {$veiculo['placa']}</td>";
        echo "<td><strong>'{$tipoOriginal}'</strong></td>";
        echo "<td><strong>$tipoChecklist</strong></td>";
        echo "<td>$status</td>";
        echo "</tr>";
    }
    
    echo "</table>";
    
    echo "<h3>📊 RESULTADO DA SIMULAÇÃO:</h3>";
    echo "<div style='background: #f8f9fa; padding: 15px; border: 1px solid #dee2e6; border-radius: 5px;'>";
    echo "<ul>";
    echo "<li><strong>✅ Corretos:</strong> $corretos veículos</li>";
    echo "<li><strong>❌ Precisam correção:</strong> $incorretos veículos</li>";
    echo "<li><strong>📈 Taxa de acerto:</strong> " . round(($corretos / count($veiculos)) * 100, 1) . "%</li>";
    echo "</ul>";
    echo "</div>";
    
    if ($incorretos > 0) {
        echo "<div style='background: #ffe0e0; padding: 15px; border-left: 5px solid #dc3545; margin: 10px 0;'>";
        echo "<h4>⚠️ AÇÃO NECESSÁRIA:</h4>";
        echo "<p>Alguns veículos têm tipos incorretos no banco. Execute a correção automática:</p>";
        echo "<button onclick=\"window.open('corrigir-todos-tipos-veiculos.php', '_blank')\" style='background: #28a745; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer;'>🔧 Corrigir Tipos de Veículos</button>";
        echo "</div>";
    }
    
    echo "<h3>💡 VANTAGENS DA NOVA IMPLEMENTAÇÃO:</h3>";
    echo "<div style='background: #e0ffe0; padding: 15px; border-left: 5px solid #28a745; margin: 10px 0;'>";
    echo "<ol>";
    echo "<li><strong>Elimina erro humano:</strong> Usuário não precisa mais escolher</li>";
    echo "<li><strong>Sempre correto:</strong> Baseado no cadastro oficial do veículo</li>";
    echo "<li><strong>Mais rápido:</strong> Pula uma tela no fluxo</li>";
    echo "<li><strong>Consistente:</strong> Sempre o mesmo resultado para o mesmo veículo</li>";
    echo "<li><strong>Manutenível:</strong> Corrigir no BD corrige automaticamente no app</li>";
    echo "</ol>";
    echo "</div>";
    
    echo "<h3>🔧 IMPLEMENTAÇÃO NO ANDROID:</h3>";
    echo "<div style='background: #fff3cd; padding: 15px; border-left: 5px solid #ffc107; margin: 10px 0;'>";
    echo "<h4>Código implementado em FinalizarViagemScreen.kt:</h4>";
    echo "<pre style='background: #f8f9fa; padding: 10px; border-radius: 5px; overflow-x: auto;'>";
    echo htmlspecialchars('
// Buscar tipo do veículo automaticamente
val veiculo = database.veiculoDao().getById(viagem.veiculoId)
val tipoChecklist = when (veiculo.tipo.lowercase()) {
    "moto", "motocicleta" -> "MOTO"
    "carro", "auto", "automóvel" -> "CARRO"
    else -> "CARRO" // Default
}

// Navegar diretamente para checklist correto
navController.navigate(
    "checklist_veiculo/${viagem.id}/${viagem.veiculoId}/$tipoChecklist"
)
    ');
    echo "</pre>";
    echo "</div>";
    
    echo "<h3>🚀 FLUXO SIMPLIFICADO:</h3>";
    echo "<div style='background: #f8f9fa; padding: 15px; border: 1px solid #ddd; border-radius: 5px;'>";
    echo "<p><strong>Antes (3 passos):</strong></p>";
    echo "<p>Finalizar → 🤔 <em>Seleção Manual</em> → 📋 Checklist</p>";
    echo "<hr>";
    echo "<p><strong>Agora (2 passos):</strong></p>";
    echo "<p>Finalizar → 📋 Checklist <em>(tipo automático)</em></p>";
    echo "</div>";
    
    if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['testar_logica'])) {
        echo "<h3>🧪 TESTE DA LÓGICA PHP:</h3>";
        
        $veiculoTeste = isset($_POST['veiculo_id']) ? intval($_POST['veiculo_id']) : 6;
        
        $stmt = $pdo->prepare("SELECT * FROM veiculos WHERE id = ?");
        $stmt->execute([$veiculoTeste]);
        $veiculo = $stmt->fetch(PDO::FETCH_ASSOC);
        
        if ($veiculo) {
            $tipoOriginal = $veiculo['tipo'];
            $tipoChecklist = match(strtolower($tipoOriginal)) {
                'moto', 'motocicleta' => 'MOTO',
                'carro', 'auto', 'automóvel' => 'CARRO',
                default => 'CARRO'
            };
            
            echo "<div style='background: #e0f7ff; padding: 15px; border-left: 5px solid #17a2b8; margin: 10px 0;'>";
            echo "<h4>📋 Resultado do Teste:</h4>";
            echo "<ul>";
            echo "<li><strong>Veículo:</strong> {$veiculo['modelo']} - {$veiculo['placa']}</li>";
            echo "<li><strong>Tipo no BD:</strong> '{$tipoOriginal}'</li>";
            echo "<li><strong>Checklist selecionado:</strong> <strong>$tipoChecklist</strong></li>";
            echo "<li><strong>Lógica:</strong> strtolower('{$tipoOriginal}') → '$tipoChecklist'</li>";
            echo "</ul>";
            echo "</div>";
        } else {
            echo "<div style='background: #ffe0e0; padding: 15px; border-left: 5px solid #dc3545;'>";
            echo "<h4>❌ Veículo não encontrado!</h4>";
            echo "</div>";
        }
    }
    
    echo "<h3>🔬 TESTAR LÓGICA:</h3>";
    echo "<form method='post' style='background: #f8f9fa; padding: 15px; border: 1px solid #ddd; border-radius: 5px;'>";
    echo "<label>ID do Veículo para teste:</label><br>";
    echo "<select name='veiculo_id' style='padding: 8px; margin: 10px 0;'>";
    foreach ($veiculos as $v) {
        echo "<option value='{$v['id']}'>{$v['id']} - {$v['modelo']} ({$v['tipo']})</option>";
    }
    echo "</select><br>";
    echo "<button type='submit' name='testar_logica' style='background: #007bff; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer;'>🧪 Testar Lógica</button>";
    echo "</form>";
    
} catch (Exception $e) {
    echo "<div style='background: #ffe0e0; padding: 15px; border-left: 5px solid #dc3545;'>";
    echo "<h4>❌ Erro:</h4>";
    echo "<p>{$e->getMessage()}</p>";
    echo "</div>";
}
?> 
