<?php
/**
 * Script para verificar e corrigir dados das solicitações
 */

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

echo "<h1>🔍 Verificar Dados das Solicitações</h1>";

try {
    // Conectar ao banco
    $host = 'localhost';
    $dbname = 'pinheir3_controle_frotasV1.1';
    $username = 'pinheir3_admin';
    $password = '080880Gelboy';
    
    $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8mb4", $username, $password);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    echo "<p>✅ Conectado ao banco de dados</p>";
    
    // 1. Verificar solicitações de viagem
    echo "<h2>📋 Solicitações de Viagem:</h2>";
    $sqlViagens = "SELECT * FROM solicitacoes_viagem WHERE status = 'pendente'";
    $stmtViagens = $pdo->query($sqlViagens);
    $viagens = $stmtViagens->fetchAll(PDO::FETCH_ASSOC);
    
    if (count($viagens) > 0) {
        echo "<table border='1' style='border-collapse: collapse; width: 100%;'>";
        echo "<tr><th>ID</th><th>Cliente</th><th>Motivo</th><th>Status</th><th>Gestor ID</th></tr>";
        foreach ($viagens as $viagem) {
            echo "<tr>";
            echo "<td>{$viagem['id']}</td>";
            echo "<td>{$viagem['cliente']}</td>";
            echo "<td>{$viagem['motivo']}</td>";
            echo "<td>{$viagem['status']}</td>";
            echo "<td>{$viagem['gestor_id']}</td>";
            echo "</tr>";
        }
        echo "</table>";
    } else {
        echo "<p>❌ Nenhuma solicitação de viagem pendente encontrada</p>";
    }
    
    // 2. Verificar solicitações de rota
    echo "<h2>🗺️ Solicitações de Rota:</h2>";
    $sqlRotas = "SELECT * FROM solicitacoes_rotas WHERE status = 'pendente'";
    $stmtRotas = $pdo->query($sqlRotas);
    $rotas = $stmtRotas->fetchAll(PDO::FETCH_ASSOC);
    
    if (count($rotas) > 0) {
        echo "<table border='1' style='border-collapse: collapse; width: 100%;'>";
        echo "<tr><th>ID</th><th>Título</th><th>Descrição</th><th>Status</th><th>Gestor ID</th></tr>";
        foreach ($rotas as $rota) {
            echo "<tr>";
            echo "<td>{$rota['id']}</td>";
            echo "<td>{$rota['titulo']}</td>";
            echo "<td>{$rota['descricao']}</td>";
            echo "<td>{$rota['status']}</td>";
            echo "<td>{$rota['gestor_id']}</td>";
            echo "</tr>";
        }
        echo "</table>";
        
        // Verificar clientes das rotas
        foreach ($rotas as $rota) {
            echo "<h3>👥 Clientes da Rota {$rota['id']} ({$rota['titulo']}):</h3>";
            $sqlClientes = "SELECT * FROM rota_clientes WHERE solicitacao_rota_id = ?";
            $stmtClientes = $pdo->prepare($sqlClientes);
            $stmtClientes->execute([$rota['id']]);
            $clientes = $stmtClientes->fetchAll(PDO::FETCH_ASSOC);
            
            if (count($clientes) > 0) {
                echo "<table border='1' style='border-collapse: collapse; width: 100%;'>";
                echo "<tr><th>ID</th><th>Nome</th><th>Endereço</th><th>Telefone</th><th>Ordem</th></tr>";
                foreach ($clientes as $cliente) {
                    echo "<tr>";
                    echo "<td>{$cliente['id']}</td>";
                    echo "<td>{$cliente['nome_cliente']}</td>";
                    echo "<td>{$cliente['endereco']}</td>";
                    echo "<td>{$cliente['telefone']}</td>";
                    echo "<td>{$cliente['ordem_sequencia']}</td>";
                    echo "</tr>";
                }
                echo "</table>";
            } else {
                echo "<p>❌ Nenhum cliente encontrado para esta rota</p>";
            }
        }
    } else {
        echo "<p>❌ Nenhuma solicitação de rota pendente encontrada</p>";
    }
    
    // 3. Inserir dados de teste se não houver dados
    if (count($viagens) == 0 && count($rotas) == 0) {
        echo "<h2>🔧 Inserindo Dados de Teste:</h2>";
        
        // Inserir uma solicitação de viagem de teste
        $sqlInsertViagem = "INSERT INTO solicitacoes_viagem (
            tecnico_id, veiculo_id, cliente, motivo, status, prioridade, gestor_id, km_inicial, 
            endereco_inicial, observacoes, created_at
        ) VALUES (4, 6, 'Cliente Teste', 'Manutenção preventiva', 'pendente', 'normal', 1, 0, 
                 'Rua das Flores, 123 - Centro', 'Visita técnica para manutenção', NOW())";
        
        $pdo->exec($sqlInsertViagem);
        echo "<p>✅ Solicitação de viagem de teste inserida</p>";
        
        // Inserir uma solicitação de rota de teste
        $sqlInsertRota = "INSERT INTO solicitacoes_rotas (
            motorista_id, veiculo_id, titulo, descricao, data_prevista, hora_inicio_prevista, 
            prioridade, status, gestor_id, created_at
        ) VALUES (4, 6, 'Rota Norte - Manutenções', 'Atendimento de manutenções na região norte', 
                 CURDATE() + INTERVAL 1 DAY, '08:00:00', 'normal', 'pendente', 1, NOW())";
        
        $pdo->exec($sqlInsertRota);
        $rotaId = $pdo->lastInsertId();
        echo "<p>✅ Solicitação de rota de teste inserida (ID: $rotaId)</p>";
        
        // Inserir clientes da rota
        $sqlInsertCliente = "INSERT INTO rota_clientes (
            solicitacao_rota_id, nome_cliente, endereco, telefone, motivo_atendimento, 
            ordem_sequencia, tempo_estimado, created_at
        ) VALUES (?, ?, ?, ?, ?, ?, ?, NOW())";
        
        $stmtInsertCliente = $pdo->prepare($sqlInsertCliente);
        
        $clientes = [
            ['Empresa ABC Ltda', 'Rua das Flores, 123 - Centro', '(11) 99999-1111', 'Manutenção preventiva em ar condicionado', 1, 90],
            ['Loja XYZ', 'Av. Principal, 456 - Bairro Norte', '(11) 99999-2222', 'Reparo em sistema elétrico', 2, 120],
            ['Indústria DEF', 'Rua Industrial, 789 - Distrito Industrial', '(11) 99999-3333', 'Manutenção em equipamentos', 3, 180]
        ];
        
        foreach ($clientes as $cliente) {
            $stmtInsertCliente->execute([$rotaId, $cliente[0], $cliente[1], $cliente[2], $cliente[3], $cliente[4], $cliente[5]]);
        }
        
        echo "<p>✅ 3 clientes inseridos na rota de teste</p>";
        echo "<p>🔄 <a href='javascript:location.reload()'>Clique aqui para recarregar e ver os dados</a></p>";
    }
    
} catch (Exception $e) {
    echo "<p>❌ Erro: " . $e->getMessage() . "</p>";
}
?>
