@extends('layouts.app') @section('title', 'Hub de Integrações') @section('topbar_title', '⚡ Hub de Integrações & APIs') @section('styles') @endsection @section('content') {{-- Flash Messages --}} @if (session('success'))
✅
{{ session('success') }}
@endif @if (session('error') || $errors->any())
⚠️
@if (session('error'))
{{ session('error') }}
@endif @foreach ($errors->all() as $error)
{{ $error }}
@endforeach
@endif {{-- Metric Cards --}}
Viagens Urbanas (Uber)
{{ number_format($totalTrips, 0, ',', '.') }} R$ {{ number_format($totalSpent, 2, ',', '.') }}
Base de transporte para o Superset
Viagens & Despesas (Onfly)
{{ number_format($totalOnflyExpenses, 0, ',', '.') }} R$ {{ number_format($totalOnflySpent, 2, ',', '.') }}
Aéreo, hotéis e reembolsos
Total Acumulado de Despesas
R$ {{ number_format($totalSpent + $totalOnflySpent, 2, ',', '.') }}
Transporte + Aéreo + Hotéis + Diárias
Conectores Ativos
Uber: {{ ($uberSetting && $uberSetting->is_active) ? 'Ativo' : 'Inativo' }}
Onfly: {{ ($onflySetting && $onflySetting->is_active) ? 'Ativo' : ($totalOnflyExpenses > 0 ? 'Relatórios OK' : 'Não Configurado') }}
Sincronização integrada ao Superset
{{-- Integration Cards Grid --}}
{{-- CARD UBER --}}
UB
Uber for Business
Viagens Corporativas & Recibos
@if ($uberSetting && $uberSetting->is_active) ● Ativo @else ● Inativo @endif

Integração direta via OAuth 2.0 (Client Credentials - Receipts API). As viagens corporativas são sincronizadas diariamente e alimentam o banco de dados consumido pelo Apache Superset.

{{-- Status Visual do Token OAuth --}} @if ($uberSetting?->getCredential('token_expires_at')) @php $expiresAt = \Carbon\Carbon::parse($uberSetting->getCredential('token_expires_at')); $isValid = $expiresAt->isFuture(); $currentEnv = $uberSetting->getCredential('environment', 'production'); $envName = ($currentEnv === 'sandbox') ? 'Sandbox (Testes)' : 'Produção'; @endphp
{{ $isValid ? '🔒' : '⚠️' }}
{{ $isValid ? 'Token Ativo e Autenticado' : 'Token Expirado' }}
{{ $isValid ? 'Válido até ' . $expiresAt->format('d/m/Y H:i') : 'Expirou em ' . $expiresAt->format('d/m/Y H:i') }} — Ambiente: {{ $envName }}
@endif
@csrf {{-- Seletor de Ambiente --}}
Configure de acordo com o tipo da sua aplicação no Uber Developer Dashboard.
{{-- Seletores rápidos (Chips selecionáveis) --}} @php $savedScope = (string) old('scope', $uberSetting?->getCredential('scope', 'business.receipts')); $selectedScopes = preg_split('/\s+/', trim($savedScope)); @endphp
{{-- Campo de texto livre e editável --}} Marque as caixas acima para selecionar ou edite/digite diretamente os escopos desejados (separados por espaço).
Enviado no header x-uber-organizationuuid caso seja requerido pela sua conta corporativa.
{{-- Botão de Testar Conexão --}}
@csrf
{{-- Botão de Sincronizar Manualmente --}}
@csrf
{{-- CARD ONFLY (VIAGENS, AÉREO, HOTÉIS & DESPESAS) --}}
FLY
Onfly Viagens & Despesas
Passagens Aéreas, Hotéis & Reembolsos
@if ($onflySetting && $onflySetting->is_active) ● Ativo @elseif ($totalOnflyExpenses > 0) ● {{ $totalOnflyExpenses }} Despesas @else ● Disponível @endif

Conexão direta com a plataforma Onfly. Permite automatizar o fluxo de despesas corporativas, passagens aéreas, reservas de hotéis e prestação de contas no Apache Superset.

{{-- SEÇÃO DE IMPORTAÇÃO DE RELATÓRIO CSV ONFLY --}}
📑 Importar Relatório Onfly (CSV) Rápido & Direto

Exporte a planilha de despesas ou viagens no painel da Onfly (CSV) e envie abaixo para consolidação automática e idempotente.

@csrf
{{-- FORMULÁRIO DE CONFIGURAÇÃO DA API ONFLY --}}
@csrf
Obtenha a chave de integração no menu de Configurações / Integrações da sua conta Onfly.
{{-- Botão de Testar Conexão Onfly --}}
@csrf
{{-- Botão de Sincronizar Manualmente Onfly --}}
@csrf
{{-- CARD 99 EMPRESAS (EXPANSÃO) --}}
99
99 Empresas
Gestão de Frotas & Corridas
Em Breve

Conector preparado para expansão multi-provedores no Hub. Permitirá consolidar despesas de transporte urbano de todos os aplicativos em um único data mart.

Status: Módulo estruturado no catálogo de integrações.
{{-- CARD GUPY (EXPANSÃO) --}}
GP
Gupy Admissão / ATS
Gestão de Colaboradores & RH
Em Breve

Sincronização automática de dados cadastrais de colaboradores para enriquecer os centros de custo e rateio das corridas no Superset.

Status: Módulo estruturado no catálogo de integrações.
{{-- Preview Tables for Superset --}}
Estes dados alimentam diretamente os painéis de auditoria e despesas corporativas no Apache Superset.
● Destino Superset Online
{{-- TABELA UBER --}}
@if ($recentTrips->isNotEmpty())
@foreach ($recentTrips as $trip) @endforeach
Trip ID Colaborador E-mail Embarque (Data/Hora) Origem Destino Valor (R$) Status
{{ Str::limit($trip->trip_id, 14) }} {{ $trip->employee_name ?? '—' }} {{ $trip->employee_email ?? '—' }} {{ $trip->pickup_time ? $trip->pickup_time->format('d/m/Y H:i') : '—' }} {{ Str::limit($trip->pickup_address, 30) ?? '—' }} {{ Str::limit($trip->dropoff_address, 30) ?? '—' }} R$ {{ number_format((float) $trip->total_amount, 2, ',', '.') }} {{ ucfirst($trip->status ?? 'Concluída') }}
@else
🚗
Nenhuma viagem da Uber sincronizada ainda.
Configure as credenciais acima e clique em "Sincronizar Agora" ou aguarde a execução agendada das 03:00.
@endif
{{-- TABELA ONFLY --}}
@endsection @section('scripts') @endsection