diff --git a/app/Http/Controllers/ArticleController.php b/app/Http/Controllers/ArticleController.php index 899be2da..be02280f 100755 --- a/app/Http/Controllers/ArticleController.php +++ b/app/Http/Controllers/ArticleController.php @@ -35,7 +35,12 @@ class ArticleController extends Controller SUM(CASE WHEN T_WEB_Ordini.DataOra >= DATEADD(month, -6, GETDATE()) THEN T_WEB_Ordini.qta ELSE 0 END) as totaleVendutoUltimi6Mesi, SUM(CASE WHEN T_WEB_Ordini.DataOra >= DATEADD(year, -1, GETDATE()) THEN T_WEB_Ordini.qta ELSE 0 END) as totaleVendutoUltimoAnno, SUM(CASE WHEN T_WEB_Ordini.DataOra >= DATEADD(year, -2, GETDATE()) THEN T_WEB_Ordini.qta ELSE 0 END) as totaleVendutoUltimi2Anni, - MAX(T_WEB_Ordini.DataOra) AS ultimoOrdine + MAX(T_WEB_Ordini.DataOra) AS ultimoOrdine, + + -- Calcolo dei ranghi + RANK() OVER (ORDER BY SUM(CASE WHEN T_WEB_Ordini.DataOra >= DATEADD(month, -3, GETDATE()) THEN T_WEB_Ordini.qta ELSE 0 END) DESC) as rank3M, + RANK() OVER (ORDER BY SUM(CASE WHEN T_WEB_Ordini.DataOra >= DATEADD(month, -6, GETDATE()) THEN T_WEB_Ordini.qta ELSE 0 END) DESC) as rank6M, + RANK() OVER (ORDER BY SUM(CASE WHEN T_WEB_Ordini.DataOra >= DATEADD(year, -1, GETDATE()) THEN T_WEB_Ordini.qta ELSE 0 END) DESC) as rank1Y ') ->groupBy('T_WEB_Articoli.idArticolo', 'T_WEB_Articoli.Titolo') ->orderBy('totaleVendutoUltimi2Anni', 'desc') @@ -77,10 +82,10 @@ class ArticleController extends Controller $response->headers->set('Content-Disposition', 'attachment; filename="' . $filename . '"'); - $csvContent = "IdArticolo,Titolo,TotaleVenduto,TotaleVendutoUltimoMese,TotaleVendutoUltimi6Mesi,TotaleVendutoUltimoAnno,totaleVendutoUltimi2Anni,UltimoOrdine\n"; + $csvContent = "IdArticolo,Titolo,rank3M,rank6M,rank1Y,TotaleVenduto,TotaleVendutoUltimoMese,TotaleVendutoUltimi6Mesi,TotaleVendutoUltimoAnno,totaleVendutoUltimi2Anni,UltimoOrdine\n"; foreach ($articoliVenduti as $articoloVenduto) { - $csvContent .= "{$articoloVenduto->idArticolo},{$articoloVenduto->Titolo},{$articoloVenduto->totaleVenduto},{$articoloVenduto->totaleVendutoUltimoMese},{$articoloVenduto->totaleVendutoUltimi6Mesi},{$articoloVenduto->totaleVendutoUltimoAnno},{$articoloVenduto->ultimoOrdine}\n"; + $csvContent .= "{$articoloVenduto->idArticolo},{$articoloVenduto->Titolo},{$articoloVenduto->rank3M},{$articoloVenduto->rank6M},{$articoloVenduto->rank1Y},{$articoloVenduto->totaleVenduto},{$articoloVenduto->totaleVendutoUltimoMese},{$articoloVenduto->totaleVendutoUltimi6Mesi},{$articoloVenduto->totaleVendutoUltimoAnno},{$articoloVenduto->ultimoOrdine}\n"; } $response->setContent($csvContent); @@ -104,6 +109,9 @@ class ArticleController extends Controller 'id' => $articoloVenduto->idArticolo, 'title' => $articoloVenduto->Titolo, 'totaleVenduti' => $articoloVenduto->totaleVenduto, + 'rank3M' => $articoloVenduto->rank3M, + 'rank6M' => $articoloVenduto->rank6M, + 'rank1Y' => $articoloVenduto->rank1Y, 'venditeLastM' => $articoloVenduto->totaleVendutoUltimoMese, 'venditeLast6M' => $articoloVenduto->totaleVendutoUltimi6Mesi, 'venditeLastY' => $articoloVenduto->totaleVendutoUltimoAnno, diff --git a/resources/views/export_articles_sales.blade.php b/resources/views/export_articles_sales.blade.php index 3f793e1a..11561096 100644 --- a/resources/views/export_articles_sales.blade.php +++ b/resources/views/export_articles_sales.blade.php @@ -14,6 +14,9 @@ Id Articolo Titolo + Rank 3 Mesi + Rank 6 Mesi + Rank 1 Anno Data Ultimo Ordine Totale Venduto Ultimo Mese @@ -33,6 +36,9 @@ {{ $articolo->idArticolo }} {{ $articolo->Titolo }} + {{ $articolo->rank3M }} + {{ $articolo->rank6M }} + {{ $articolo->rank1Y }} {{ \Carbon\Carbon::parse($articolo->ultimoOrdine)->format('d/m/Y') }} {{ $articolo->totaleVenduto }} {{ $articolo->totaleVendutoUltimoMese }}