<?php

// Configuração básica
header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST, OPTIONS');
header('Access-Control-Allow-Headers: Content-Type, Authorization');

if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
    http_response_code(200);
    exit;
}

// Função para conectar ao banco
function getConnection() {
    $host = 'localhost';
    $dbname = 'pinheiro3_controle_frotas';
    $username = 'pinheiro3_controle_frotas';
    $password = 'Pinheiro@2024';
    
    try {
        $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        return $pdo;
    } catch (PDOException $e) {
        throw new Exception("Erro de conexão: " . $e->getMessage());
    }
}

try {
    $pdo = getConnection();
    
    // Verificar todas as solicitações
    $sql = "SELECT 
                s.*,
                u.nome as tecnico_nome,
                v.modelo as veiculo_modelo,
                v.placa as veiculo_placa,
                g.nome as gestor_nome
            FROM solicitacoes_viagem s
            LEFT JOIN usuarios u ON s.tecnico_id = u.id
            LEFT JOIN veiculos v ON s.veiculo_id = v.id
            LEFT JOIN usuarios g ON s.gestor_id = g.id
            ORDER BY s.data_criacao DESC";
    
    $solicitacoes = $pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC);
    
    // Verificar gestores disponíveis
    $sqlGestores = "SELECT id, nome, usuario, cargo FROM usuarios WHERE cargo IN ('gestor', 'supervisor', 'admin') AND status = 'ativo'";
    $gestores = $pdo->query($sqlGestores)->fetchAll(PDO::FETCH_ASSOC);
    
    echo json_encode([
        'success' => true,
        'data' => [
            'solicitacoes' => $solicitacoes,
            'gestores' => $gestores,
            'total_solicitacoes' => count($solicitacoes),
            'total_gestores' => count($gestores)
        ]
    ], JSON_UNESCAPED_UNICODE);
    
} catch (Exception $e) {
    http_response_code(500);
    echo json_encode([
        'success' => false,
        'error' => 'Erro ao verificar solicitações: ' . $e->getMessage()
    ], JSON_UNESCAPED_UNICODE);
} 
