<?php
header('Content-Type: application/json; charset=utf-8');
header('Access-Control-Allow-Origin: *');

// Configurações do banco de dados
$configs = [
    ['host' => 'localhost', 'user' => 'pinheir3', 'password' => '080880Gelboy', 'database' => 'pinheir3_controle_frotasV1.1'],
    ['host' => 'localhost', 'user' => 'root', 'password' => '080880Gelboy', 'database' => 'pinheir3_controle_frotasV1.1'],
    ['host' => 'localhost', 'user' => 'pinheir3', 'password' => '', 'database' => 'pinheir3_controle_frotasV1.1'],
    ['host' => 'localhost', 'user' => 'root', 'password' => '', 'database' => 'controle_frotas']
];

$pdo = null;
$configUsada = null;

// Tentar conectar
foreach ($configs as $config) {
    try {
        $pdo = new PDO(
            "mysql:host={$config['host']};dbname={$config['database']};charset=utf8mb4",
            $config['user'],
            $config['password'],
            [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]
        );
        $configUsada = $config;
        break;
    } catch (PDOException $e) {
        continue;
    }
}

if (!$pdo) {
    echo json_encode(['erro' => 'Não foi possível conectar com o banco']);
    exit;
}

try {
    // 1. Estrutura da tabela viagens
    $stmt = $pdo->query("DESCRIBE viagens");
    $estrutura = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    // 2. Últimas 5 viagens
    $stmt = $pdo->query("
        SELECT 
            id, 
            cliente, 
            motivo, 
            tecnico_id, 
            veiculo_id, 
            data_inicio, 
            data_fim,
            latitude_inicial, 
            longitude_inicial, 
            latitude_final, 
            longitude_final,
            km_inicial,
            km_final,
            trajeto
        FROM viagens 
        ORDER BY data_inicio DESC 
        LIMIT 5
    ");
    $ultimasViagens = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    // 3. Viagens ativas (sem data_fim)
    $stmt = $pdo->query("
        SELECT 
            id, 
            cliente, 
            motivo, 
            tecnico_id, 
            veiculo_id, 
            data_inicio, 
            latitude_inicial, 
            longitude_inicial,
            km_inicial,
            trajeto,
            TIMESTAMPDIFF(MINUTE, data_inicio, NOW()) as duracao_minutos
        FROM viagens 
        WHERE data_fim IS NULL
        ORDER BY data_inicio DESC
    ");
    $viagensAtivas = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    // 4. Verificar tabelas relacionadas
    $stmt = $pdo->query("SHOW TABLES");
    $tabelas = $stmt->fetchAll(PDO::FETCH_COLUMN);
    
    echo json_encode([
        'sucesso' => true,
        'conexao' => $configUsada,
        'estrutura_viagens' => $estrutura,
        'ultimas_viagens' => $ultimasViagens,
        'viagens_ativas' => $viagensAtivas,
        'total_viagens_ativas' => count($viagensAtivas),
        'tabelas_existentes' => $tabelas,
        'timestamp' => date('Y-m-d H:i:s')
    ], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
    
} catch (Exception $e) {
    echo json_encode([
        'erro' => true,
        'mensagem' => $e->getMessage(),
        'linha' => $e->getLine()
    ]);
}
?> 
