<?php
require_once '../config/bootstrap.php';

echo "🔍 VERIFICANDO TABELA SOLICITAÇÕES_VIAGEM\n";
echo "==========================================\n\n";

try {
    // Verificar se a tabela existe
    $sql_check = "SHOW TABLES LIKE 'solicitacoes_viagem'";
    $stmt_check = $pdo->prepare($sql_check);
    $stmt_check->execute();
    $table_exists = $stmt_check->fetch();
    
    if (!$table_exists) {
        echo "❌ Tabela 'solicitacoes_viagem' não existe!\n\n";
        echo "💡 Criando tabela...\n";
        
        $sql_create = "
        CREATE TABLE solicitacoes_viagem (
            id INT AUTO_INCREMENT PRIMARY KEY,
            tecnico_id VARCHAR(50) NOT NULL,
            veiculo_id INT NOT NULL,
            cliente VARCHAR(255) NOT NULL,
            motivo TEXT NOT NULL,
            km_inicial INT NOT NULL,
            latitude_inicial DECIMAL(10,8) NULL,
            longitude_inicial DECIMAL(11,8) NULL,
            endereco_inicial TEXT NULL,
            cliente_id INT NULL,
            gestor_id INT DEFAULT 2,
            observacoes TEXT NULL,
            prioridade ENUM('baixa', 'normal', 'alta', 'urgente') DEFAULT 'normal',
            status ENUM('pendente', 'aprovada', 'negada', 'cancelada') DEFAULT 'pendente',
            data_solicitacao TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
            data_aprovacao TIMESTAMP NULL,
            aprovado_por VARCHAR(100) NULL,
            justificativa_negacao TEXT NULL,
            
            INDEX idx_status (status),
            INDEX idx_gestor (gestor_id),
            INDEX idx_tecnico (tecnico_id),
            INDEX idx_data (data_solicitacao)
        )";
        
        $stmt_create = $pdo->prepare($sql_create);
        $stmt_create->execute();
        echo "✅ Tabela criada com sucesso!\n\n";
    } else {
        echo "✅ Tabela 'solicitacoes_viagem' existe!\n\n";
    }
    
    // Verificar estrutura da tabela
    $sql_structure = "DESCRIBE solicitacoes_viagem";
    $stmt_structure = $pdo->prepare($sql_structure);
    $stmt_structure->execute();
    $columns = $stmt_structure->fetchAll(PDO::FETCH_ASSOC);
    
    echo "📋 ESTRUTURA DA TABELA:\n";
    foreach ($columns as $column) {
        $required = $column['Null'] == 'NO' ? 'NOT NULL' : 'NULL';
        echo "   - {$column['Field']}: {$column['Type']} ($required)\n";
    }
    
    // Verificar se tem dados
    $sql_count = "SELECT COUNT(*) as total FROM solicitacoes_viagem";
    $stmt_count = $pdo->prepare($sql_count);
    $stmt_count->execute();
    $count = $stmt_count->fetch(PDO::FETCH_ASSOC);
    
    echo "\n📊 DADOS NA TABELA:\n";
    echo "   Total de solicitações: {$count['total']}\n";
    
    if ($count['total'] > 0) {
        $sql_recent = "SELECT id, cliente, motivo, status, data_solicitacao FROM solicitacoes_viagem ORDER BY data_solicitacao DESC LIMIT 5";
        $stmt_recent = $pdo->prepare($sql_recent);
        $stmt_recent->execute();
        $recent = $stmt_recent->fetchAll(PDO::FETCH_ASSOC);
        
        echo "\n📝 ÚLTIMAS SOLICITAÇÕES:\n";
        foreach ($recent as $solicitacao) {
            $data = date('d/m/Y H:i', strtotime($solicitacao['data_solicitacao']));
            $status_icon = $solicitacao['status'] == 'pendente' ? '⏳' : ($solicitacao['status'] == 'aprovada' ? '✅' : '❌');
            echo "   {$status_icon} ID {$solicitacao['id']}: {$solicitacao['cliente']} - {$solicitacao['motivo']} ($data)\n";
        }
    }
    
    echo "\n✅ Verificação concluída!\n";
    echo "   Agora você pode testar as solicitações.\n\n";
    
} catch (Exception $e) {
    echo "❌ Erro: " . $e->getMessage() . "\n";
}
?> 
