<?php
require_once 'conexao.php';

echo "<h1>🧪 TESTE DA CORREÇÃO - ENDPOINT ADMIN</h1>\n";

try {
    $pdo = conectarBanco();
    
    // 1. Verificar se o admin existe e qual é o ID
    echo "<h2>1. Verificando Admin</h2>\n";
    $sql = "SELECT id, nome, usuario, status FROM motoristas WHERE usuario = 'admin'";
    $stmt = $pdo->query($sql);
    $admin = $stmt->fetch(PDO::FETCH_ASSOC);
    
    if ($admin) {
        echo "<p><strong>✅ Admin encontrado:</strong></p>\n";
        echo "<ul>\n";
        echo "<li><strong>ID:</strong> {$admin['id']}</li>\n";
        echo "<li><strong>Nome:</strong> {$admin['nome']}</li>\n";
        echo "<li><strong>Usuário:</strong> {$admin['usuario']}</li>\n";
        echo "<li><strong>Status:</strong> {$admin['status']}</li>\n";
        echo "</ul>\n";
        
        $adminId = $admin['id'];
        
        // 2. Verificar se existe rota em andamento para este admin
        echo "<h2>2. Verificando Rotas em Andamento para Admin ID = $adminId</h2>\n";
        $sql2 = "SELECT sr.*, m.nome as motorista_nome, v.modelo as veiculo_modelo, v.placa as veiculo_placa
                FROM solicitacoes_rotas sr
                LEFT JOIN motoristas m ON sr.motorista_id = m.id
                LEFT JOIN veiculos v ON sr.veiculo_id = v.id
                WHERE sr.motorista_id = $adminId 
                AND sr.status IN ('em_andamento', 'em_execucao')
                ORDER BY sr.data_inicio_real DESC";
        
        $stmt2 = $pdo->query($sql2);
        $rotas = $stmt2->fetchAll(PDO::FETCH_ASSOC);
        
        if (!empty($rotas)) {
            echo "<p><strong>✅ Rotas encontradas:</strong></p>\n";
            echo "<table border='1'>\n";
            echo "<tr><th>ID</th><th>Título</th><th>Status</th><th>Motorista</th><th>Veículo</th><th>Data Início</th></tr>\n";
            foreach ($rotas as $rota) {
                echo "<tr>";
                echo "<td>{$rota['id']}</td>";
                echo "<td>{$rota['titulo']}</td>";
                echo "<td>{$rota['status']}</td>";
                echo "<td>{$rota['motorista_nome']}</td>";
                echo "<td>{$rota['veiculo_modelo']} - {$rota['veiculo_placa']}</td>";
                echo "<td>{$rota['data_inicio_real']}</td>";
                echo "</tr>\n";
            }
            echo "</table>\n";
        } else {
            echo "<p><strong>❌ Nenhuma rota em andamento encontrada para admin ID = $adminId</strong></p>\n";
        }
        
        // 3. Testar endpoint verificar-rota-em-andamento
        echo "<h2>3. Testando Endpoint verificar-rota-em-andamento (admin)</h2>\n";
        
        $url = "https://sistemas.pinheiroempresas.com.br/controlefrota/backend-php/api-simples-v2.php?acao=verificar-rota-em-andamento&tecnico_id=admin";
        
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
        curl_setopt($ch, CURLOPT_HTTPHEADER, [
            'Content-Type: application/json'
        ]);
        
        $response = curl_exec($ch);
        $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        curl_close($ch);
        
        echo "<p><strong>URL:</strong> $url</p>\n";
        echo "<p><strong>HTTP Code:</strong> $httpCode</p>\n";
        echo "<p><strong>Response:</strong></p>\n";
        echo "<pre>" . htmlspecialchars($response) . "</pre>\n";
        
        // 4. Testar endpoint verificar-viagem-em-andamento
        echo "<h2>4. Testando Endpoint verificar-viagem-em-andamento (admin)</h2>\n";
        
        $url2 = "https://sistemas.pinheiroempresas.com.br/controlefrota/backend-php/api-simples-v2.php?acao=verificar-viagem-em-andamento&tecnico_id=admin";
        
        $ch2 = curl_init();
        curl_setopt($ch2, CURLOPT_URL, $url2);
        curl_setopt($ch2, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch2, CURLOPT_TIMEOUT, 10);
        curl_setopt($ch2, CURLOPT_HTTPHEADER, [
            'Content-Type: application/json'
        ]);
        
        $response2 = curl_exec($ch2);
        $httpCode2 = curl_getinfo($ch2, CURLINFO_HTTP_CODE);
        curl_close($ch2);
        
        echo "<p><strong>URL:</strong> $url2</p>\n";
        echo "<p><strong>HTTP Code:</strong> $httpCode2</p>\n";
        echo "<p><strong>Response:</strong></p>\n";
        echo "<pre>" . htmlspecialchars($response2) . "</pre>\n";
        
        // 5. Verificar se há viagens em andamento para admin
        echo "<h2>5. Verificando Viagens em Andamento para Admin</h2>\n";
        $sql3 = "SELECT v.*, rv.solicitacao_rota_id, sr.titulo as rota_titulo
                 FROM viagens v 
                 INNER JOIN rota_viagens rv ON v.id = rv.viagem_id 
                 INNER JOIN solicitacoes_rotas sr ON rv.solicitacao_rota_id = sr.id 
                 WHERE sr.motorista_id = $adminId AND v.data_fim IS NULL";
        
        $stmt3 = $pdo->query($sql3);
        $viagens = $stmt3->fetchAll(PDO::FETCH_ASSOC);
        
        if (!empty($viagens)) {
            echo "<p><strong>✅ Viagens encontradas:</strong></p>\n";
            echo "<table border='1'>\n";
            echo "<tr><th>ID</th><th>Cliente</th><th>Rota ID</th><th>Rota Título</th><th>Data Início</th></tr>\n";
            foreach ($viagens as $viagem) {
                echo "<tr>";
                echo "<td>{$viagem['id']}</td>";
                echo "<td>{$viagem['cliente']}</td>";
                echo "<td>{$viagem['solicitacao_rota_id']}</td>";
                echo "<td>{$viagem['rota_titulo']}</td>";
                echo "<td>{$viagem['data_inicio']}</td>";
                echo "</tr>\n";
            }
            echo "</table>\n";
        } else {
            echo "<p><strong>❌ Nenhuma viagem em andamento encontrada para admin</strong></p>\n";
        }
        
    } else {
        echo "<p><strong>❌ Admin não encontrado</strong></p>\n";
    }
    
} catch (Exception $e) {
    echo "<p><strong>❌ Erro:</strong> " . $e->getMessage() . "</p>\n";
}
?>
