@extends('backend.mobile_recharge.layout') @section('title', __('Mobile Recharge')) @section('sub_title', __('Mobile Recharge Management')) @section('sub_subtitle', __('Manage mobile top-up providers and recharge history.')) @section('sub_content') @php $registeredProviders = $registeredProviders ?? collect(); $activeProviderCode = (string) $selectedProviderCode; $activeProvider = null; if ($activeProviderCode !== '') { $selectedProvider = $registeredProviders->firstWhere('code', $activeProviderCode); $activeProvider = $selectedProvider && $selectedProvider->status ? $selectedProvider : null; } $activeProvider ??= $registeredProviders->first(fn ($provider) => $provider->status && $provider->is_default); $activeProvider ??= $registeredProviders->first(fn ($provider) => $provider->status); $totalProviders = $registeredProviders->count(); $tab = $activeTab ?? null; $providersTabActive = $tab === 'providers'; $dashboardTabActive = ! $providersTabActive; @endphp
@lang('Dashboard') @lang('Providers') @if($totalProviders > 0) {{ $totalProviders }} @endif
@if($dashboardTabActive)
@lang('Requests')
{{ number_format((int) $metrics['total']) }}
@lang('Completed')
{{ number_format((int) $metrics['completed']) }}
@lang('Processing')
{{ number_format((int) $metrics['processing']) }}
@lang('Failed')
{{ number_format((int) $metrics['failed']) }}
@lang('Volume')
{{ siteCurrency('symbol') }}{{ number_format((float) $metrics['volume'],siteDecimalPlaces()) }}
@lang('History')

@lang('Recharge History')

{{ trans_choice('{1} :count request|[2,*] :count requests', $recharges->total(), ['count' => number_format($recharges->total())]) }}
@forelse($recharges as $recharge) @empty @endforelse
@lang('ID') @lang('Customer') @lang('Phone') @lang('Debit') @lang('Provider') @lang('Status') @lang('Action')
#{{ $recharge->id }}
{{ $recharge->created_at?->format('d M Y, H:i') }}
@if($recharge->user)
{{ $recharge->user->name }}
@else @lang('Deleted user') @endif
{{ $recharge->phone_number }}
{{ $recharge->operator ?: __('Any operator') }}
{{ number_format((float) $recharge->total_amount,siteDecimalPlaces()) }} {{ $recharge->currency }}
{{ __('Fee :fee', ['fee' => number_format((float) $recharge->fee,siteDecimalPlaces())]) }}
{{ ucfirst($recharge->provider) }} {{ $recharge->status->label() }} @lang('View')
@if($recharges->hasPages()) @endif
@endif @if($providersTabActive)

@lang('Recharge Providers')

@lang('Manage delivery providers, charges, and routing.')

@can('mobile-recharge-manage') @endcan
@if($registeredProviders->isEmpty()) @else
@foreach($registeredProviders as $provider) @php $logo = $provider->logo ?: 'general/static/plugins/mobile-recharge.svg'; $hasPlugin = $provider->plugin !== null; $driverLabel = $driverLabels[$provider->driver] ?? ucfirst($provider->driver); $isActiveProvider = $activeProvider?->id === $provider->id; $chargeLabel = (float) $provider->fee_percent > 0 ? number_format((float) $provider->fee_percent, 2).'%' : siteCurrency('symbol').number_format((float) $provider->fee_fixed,siteDecimalPlaces()); @endphp
@if($isActiveProvider)
@lang('Default')
@endif

{{ $provider->name }}

@lang('Driver')
{{ $driverLabel }}
@lang('Charge')
{{ $chargeLabel }}
@lang('Amount Range')
{{ number_format((float) $provider->min_amount,siteDecimalPlaces()) }} - {{ $provider->max_amount !== null ? number_format((float) $provider->max_amount,siteDecimalPlaces()) : __('No cap') }}
@if(! $hasPlugin)
@lang('Plugin is missing. Re-run the seeder or recreate this provider.')
@endif
@can('mobile-recharge-manage') @if($provider->plugin) @endif @else @lang('View') @endcan
@endforeach
@endif
@endif
@include('backend.mobile_recharge.providers._manage_modal') @include('backend.settings.plugin.partials._manage') @endsection @push('scripts') @include('backend.settings.plugin.partials._scripts') @endpush