UPDATE:
- Mejorados los graficos en la parte de reportes. - Agregados 3 nuevos charts para mayor utilidad de la pagina.
This commit is contained in:
@@ -48,6 +48,34 @@ class ReportController extends Controller
|
||||
$monthlyOutcomeData[] = $out;
|
||||
}
|
||||
|
||||
// 4. Top 5 Productos más vendidos
|
||||
$topProducts = \App\Models\SaleDetail::with('product')
|
||||
->select('product_id', DB::raw('SUM(quantity) as total_qty'))
|
||||
->groupBy('product_id')
|
||||
->orderByDesc('total_qty')
|
||||
->take(5)
|
||||
->get();
|
||||
|
||||
// 5. Top 5 Repuestos más usados/vendidos
|
||||
$topSpares = \App\Models\SaleDetail::with('product')
|
||||
->whereHas('product', function ($query) {
|
||||
$query->where('type', 'spare');
|
||||
})
|
||||
->select('product_id', DB::raw('SUM(quantity) as total_qty'))
|
||||
->groupBy('product_id')
|
||||
->orderByDesc('total_qty')
|
||||
->take(5)
|
||||
->get();
|
||||
|
||||
// 6. Mejores Clientes (Top Spenders)
|
||||
$topClients = Sale::with('client')
|
||||
->whereNotNull('client_id')
|
||||
->select('client_id', DB::raw('SUM(total) as total_spent'))
|
||||
->groupBy('client_id')
|
||||
->orderByDesc('total_spent')
|
||||
->take(5)
|
||||
->get();
|
||||
|
||||
return view('reports.index', compact(
|
||||
'totalIncome',
|
||||
'totalOutcome',
|
||||
@@ -55,7 +83,10 @@ class ReportController extends Controller
|
||||
'expensesByCategory',
|
||||
'months',
|
||||
'monthlyIncomeData',
|
||||
'monthlyOutcomeData'
|
||||
'monthlyOutcomeData',
|
||||
'topProducts',
|
||||
'topSpares',
|
||||
'topClients'
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user