@extends('layouts.app')
@section('title', __('dashboard.stats_product_sales_title'))
@section('page_heading', __('dashboard.stats_product_sales_title'))
@section('content')
@php
$formattedStart = $startDate->format('Y-m-d');
$formattedEnd = $endDate->format('Y-m-d');
$sorted = collect($productSales)->sortByDesc('price')->values();
$totalRevenue = $sorted->sum('price');
$totalQty = $sorted->sum('quantity');
$uniqueProducts = $sorted->count();
$avgPrice = $totalQty > 0 ? $totalRevenue / $totalQty : 0;
$top5 = $sorted->take(5);
@endphp
@include('dashboard.statistics.partials.nav')
@include('dashboard.statistics.partials.filter', [
'filterAction' => route('dashboard.statistics.product_sales'),
'range' => $range,
'formattedStart' => $formattedStart,
'formattedEnd' => $formattedEnd,
'exportRoute' => route('dashboard.statistics.product_sales.export', ['start_date'=>$formattedStart,'end_date'=>$formattedEnd,'range'=>$range,'category_id'=>$selectedCategoryId]),
'exportXlsRoute' => route('dashboard.statistics.product_sales.export', ['start_date'=>$formattedStart,'end_date'=>$formattedEnd,'range'=>$range,'format'=>'xls','category_id'=>$selectedCategoryId]),
'extraFields' => new \Illuminate\Support\HtmlString('
'),
])
{{-- KPIs --}}
@foreach([
['fa-solid fa-coins', '#eff6ff','#2563eb', number_format($totalRevenue,2), 'إجمالي الإيراد (ج.م)', $formattedStart.' — '.$formattedEnd],
['fa-solid fa-boxes-stacked','#f0fdf4','#16a34a', number_format($totalQty), 'إجمالي الكميات', 'وحدة مباعة'],
['fa-solid fa-tag', '#faf5ff','#7c3aed', number_format($uniqueProducts), 'منتجات مختلفة', 'ضمن الفترة المحددة'],
['fa-solid fa-calculator', '#fffbeb','#d97706', number_format($avgPrice,2), 'متوسط سعر الوحدة', 'إيراد ÷ كمية'],
] as [$ic,$bg,$cl,$val,$lbl,$meta])
{{ $val }}
{{ $lbl }}
{{ $meta }}
@endforeach
@if($sorted->isEmpty())
@include('layouts.partials.index-empty-state',['icon'=>'fa-solid fa-boxes-stacked','title'=>'لا توجد مبيعات منتجات في هذه الفترة','message'=>''])
@else
{{-- Top 5 chart + breakdown --}}
{{-- Chart --}}
{{-- Top 5 list --}}
@foreach($top5 as $i => $p)
@php $pct = $totalRevenue > 0 ? ($p['price'] / $totalRevenue * 100) : 0; @endphp
{{ $i+1 }}
{{ $p['name'] }}
{{ number_format($p['price'],2) }}
@endforeach
{{-- Full table --}}
تفاصيل مبيعات المنتجات
{{ $uniqueProducts }} منتج
{{ $formattedStart }} — {{ $formattedEnd }}
@foreach(['#','المنتج','التصنيف','الكمية المباعة','الإيراد (ج.م)','% من الإجمالي'] as $h)
| {{ $h }} |
@endforeach
@foreach($sorted as $i => $p)
@php $pct = $totalRevenue > 0 ? ($p['price'] / $totalRevenue * 100) : 0; @endphp
| {{ $i+1 }} |
{{ $p['name'] }}
@if($p['sku']){{ $p['sku'] }} @endif
|
{{ $p['category'] }}
|
{{ number_format($p['quantity']) }} |
{{ number_format($p['price'],2) }} |
{{ number_format($pct,1) }}%
|
@endforeach
| الإجمالي |
{{ number_format($totalQty) }} |
{{ number_format($totalRevenue,2) }} |
100% |
@endif
@endsection
@section('scripts')
@if($top5->isNotEmpty())
@endif
@endsection