@extends('layouts.admin') @section('title', trans_key('admin.dashboardPage.title')) @section('header', trans_key('admin.dashboardPage.title')) @php $currencySymbol = App\Models\AppSetting::getValue('currency_symbol', html_entity_decode('₹', ENT_QUOTES, 'UTF-8')); $currencyDecimals = App\Models\AppSetting::currencyDecimals(); $avgOrderValue = $totalOrders > 0 ? $totalRevenue / max($deliveredOrdersCount, 1) : 0; $activityOrders = $recentOrders->take(4); $platformHealth = $successRate >= 80 ? trans_key('admin.dashboardPage.operational') : trans_key('admin.dashboardPage.watch'); @endphp @section('styles') @endsection @section('content')
{{ trans_key('admin.dashboardPage.platformOverview') }}

{{ trans_key('admin.dashboardPage.welcomeBack', ['name' => auth()->user()->name]) }}

{{ trans_key('admin.dashboardPage.intro') }}

{{ trans_key('admin.dashboardPage.todayRevenue', ['amount' => $currencySymbol . number_format($todayRevenue, $currencyDecimals)]) }}
{{ trans_key('admin.dashboardPage.totalRevenue') }}
{{ $currencySymbol }}{{ number_format($totalRevenue, $currencyDecimals) }}
{{ trans_key('admin.dashboardPage.avgOrder', ['amount' => $currencySymbol . number_format($avgOrderValue, $currencyDecimals)]) }}
{{ trans_key('admin.dashboardPage.liveCount', ['count' => number_format($activeOrdersCount)]) }}
{{ trans_key('admin.dashboardPage.totalOrders') }}
{{ number_format($totalOrders) }}
{{ trans_key('admin.dashboardPage.ordersToday', ['count' => number_format($todayOrders)]) }}
{{ trans_key('admin.dashboardPage.customerBase') }}
{{ trans_key('admin.dashboardPage.totalCustomers') }}
{{ number_format($totalUsers) }}
{{ trans_key('admin.dashboardPage.registeredCustomerAccounts') }}
{{ trans_key('admin.dashboardPage.driversCount', ['count' => number_format($totalDrivers)]) }}
{{ trans_key('admin.dashboardPage.activeStores') }}
{{ number_format($activeRestaurants) }}
{{ trans_key('admin.dashboardPage.ofStores', ['count' => number_format($totalRestaurants)]) }}
{{ $platformHealth }}
{{ trans_key('admin.dashboardPage.successRate') }}
{{ number_format($successRate, 1) }}%
{{ trans_key('admin.dashboardPage.cancellationRate', ['rate' => number_format($cancellationRate, 1)]) }}

{{ trans_key('admin.dashboardPage.liveServiceOrders') }}

{{ trans_key('admin.dashboardPage.serviceOrdersSubtitle') }}
@foreach($serviceLiveStats as $serviceType => $stats)
{{ $stats['label'] }}
{{ trans_key('admin.dashboardPage.liveCount', ['count' => number_format($stats['live'])]) }}
{{ trans_key('admin.dashboardPage.pickup') }}: {{ number_format($stats['pickup']) }}
{{ trans_key('admin.dashboardPage.onTheWay') }}: {{ number_format($stats['on_the_way']) }}
{{ trans_key('admin.dashboardPage.delivered') }}: {{ number_format($stats['delivered']) }}
@endforeach

{{ trans_key('admin.dashboardPage.revenueOverview') }}

{{ trans_key('admin.dashboardPage.revenueSubtitle') }}
{{ trans_key('admin.dashboardPage.totalRevenue') }}
{{ $currencySymbol }}{{ number_format($totalRevenue, $currencyDecimals) }}
{{ trans_key('admin.dashboardPage.orderValue') }}
{{ $currencySymbol }}{{ number_format($avgOrderValue, $currencyDecimals) }}
{{ trans_key('admin.dashboardPage.delivered') }}
{{ number_format($deliveredOrdersCount) }}
{{ trans_key('admin.dashboardPage.liveOrders') }}
{{ number_format($activeOrdersCount) }}

{{ trans_key('admin.dashboardPage.topStores') }}

{{ trans_key('admin.dashboardPage.viewAll') }}
@forelse($topRestaurants as $index => $restaurant)
{{ $index + 1 }}
{{ $restaurant->name }}
{{ trans_key('admin.dashboardPage.ordersCount', ['count' => number_format($restaurant->orders_count)]) }}
{{ $currencySymbol }}{{ number_format($restaurant->revenue ?? 0, $currencyDecimals) }}
{{ trans_key('admin.dashboardPage.healthy') }}
@empty
{{ trans_key('admin.dashboardPage.noStorePerformance') }}
@endforelse

{{ trans_key('admin.dashboardPage.activityFeed') }}

{{ trans_key('admin.dashboardPage.live') }}
@forelse($activityOrders as $order)
{{ trans_key('admin.dashboardPage.orderStatusLine', ['order' => $order->order_number ?? $order->id, 'status' => str_replace('_', ' ', $order->status)]) }}
{{ $order->restaurant->name ?? trans_key('admin.dashboardPage.storeFallback') }} - {{ $order->created_at->diffForHumans() }}
@empty
{{ trans_key('admin.dashboardPage.noRecentActivity') }}
@endforelse

{{ trans_key('admin.dashboardPage.topDrivers') }}

{{ trans_key('admin.dashboardPage.viewAll') }}
@forelse($topDrivers as $index => $driver)
{{ $index + 1 }}
@if(!empty($driver->profile_photo_url)) {{ trans_key('admin.dashboardPage.driverProfileAlt', ['name' => $driver->name]) }} @else {{ strtoupper(substr($driver->name, 0, 1)) }} @endif
{{ $driver->name }}
{{ trans_key('admin.dashboardPage.deliveriesCount', ['count' => number_format($driver->delivered_orders_count)]) }}
{{ number_format($driver->driver_rating_average ?? 0, 1) }}
@empty
{{ trans_key('admin.dashboardPage.noDriverPerformance') }}
@endforelse
@endsection