This commit is contained in:
paoloar77
2025-03-21 11:03:52 +01:00
parent 37180b87c2
commit 90953f314b
5 changed files with 50 additions and 43 deletions

BIN
.DS_Store vendored

Binary file not shown.

2
.env
View File

@@ -87,4 +87,4 @@ WOOCOMMERCE_WP_HEADER_TOTAL=x-wp-total
WOOCOMMERCE_WP_HEADER_TOTAL_PAGES=x-wp-totalpages WOOCOMMERCE_WP_HEADER_TOTAL_PAGES=x-wp-totalpages
WOOCOMMERCE_TIMEOUT=0 WOOCOMMERCE_TIMEOUT=0
API_KEY_MSSQL="m68yADSr123MIVIDA@154$DSAGVOK" API_KEY_MSSQL="m68yADSr123MIVIDA@154$DSAGVOK"

7
.gitignore vendored
View File

@@ -11,3 +11,10 @@ Homestead.yaml
npm-debug.log npm-debug.log
yarn-error.log yarn-error.log
*.zip *.zip
tests/.DS_Store
resources/.DS_Store
storage/.DS_Store
database/.DS_Store
app/.DS_Store
.DS_Store
.DS_Store

View File

@@ -166,7 +166,7 @@ class ArticleController extends Controller
ini_set("memory_limit", "512M"); ini_set("memory_limit", "512M");
$articoli = Article::where('IdArticolo', $idArticolo) $articoli = Article::where('IdArticolo', $idArticolo)
->get(); // Usa ->get(); // Usa
if ($articoli->isEmpty()) { if ($articoli->isEmpty()) {
return ['error' => 'Nessun articolo']; return ['error' => 'Nessun articolo'];
@@ -201,30 +201,30 @@ class ArticleController extends Controller
$join->on('T_WEB_Articoli.IdArticolo', '=', 'o.CodArticoloGM'); $join->on('T_WEB_Articoli.IdArticolo', '=', 'o.CodArticoloGM');
}) })
->leftJoin(DB::raw('(SELECT CodArticoloGM, SUM(Qta) as venduti3mesi, RANK() OVER (ORDER BY SUM(Qta) DESC) as rank3M ->leftJoin(DB::raw('(SELECT CodArticoloGM, SUM(Qta) as venduti3mesi, RANK() OVER (ORDER BY SUM(Qta) DESC) as rank3M
FROM T_WEB_Ordini FROM T_WEB_Ordini
WHERE DataOra >= DATEADD(MONTH, -3, GETDATE()) WHERE DataOra >= DATEADD(MONTH, -3, GETDATE())
GROUP BY CodArticoloGM) p'), function ($join) { GROUP BY CodArticoloGM) p'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 'p.CodArticoloGM'); $join->on('T_WEB_Articoli.IdArticolo', '=', 'p.CodArticoloGM');
}) })
->leftJoin(DB::raw('(SELECT CodArticoloGM, SUM(Qta) as venduti6mesi, RANK() OVER (ORDER BY SUM(Qta) DESC) as rank6M ->leftJoin(DB::raw('(SELECT CodArticoloGM, SUM(Qta) as venduti6mesi, RANK() OVER (ORDER BY SUM(Qta) DESC) as rank6M
FROM T_WEB_Ordini FROM T_WEB_Ordini
WHERE DataOra >= DATEADD(MONTH, -6, GETDATE()) WHERE DataOra >= DATEADD(MONTH, -6, GETDATE())
GROUP BY CodArticoloGM) q'), function ($join) { GROUP BY CodArticoloGM) q'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 'q.CodArticoloGM'); $join->on('T_WEB_Articoli.IdArticolo', '=', 'q.CodArticoloGM');
}) })
->leftJoin(DB::raw('(SELECT CodArticoloGM, SUM(Qta) as venduti1anno, RANK() OVER (ORDER BY SUM(Qta) DESC) as rank1Y ->leftJoin(DB::raw('(SELECT CodArticoloGM, SUM(Qta) as venduti1anno, RANK() OVER (ORDER BY SUM(Qta) DESC) as rank1Y
FROM T_WEB_Ordini FROM T_WEB_Ordini
WHERE DataOra >= DATEADD(MONTH, -12, GETDATE()) WHERE DataOra >= DATEADD(MONTH, -12, GETDATE())
GROUP BY CodArticoloGM) r'), function ($join) { GROUP BY CodArticoloGM) r'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 'r.CodArticoloGM'); $join->on('T_WEB_Articoli.IdArticolo', '=', 'r.CodArticoloGM');
}) })
->leftJoin(DB::raw('(SELECT CodArticoloGM, MAX(DataOra) as ultimoOrdine ->leftJoin(DB::raw('(SELECT CodArticoloGM, MAX(DataOra) as ultimoOrdine
FROM T_WEB_Ordini FROM T_WEB_Ordini
GROUP BY CodArticoloGM) s'), function ($join) { GROUP BY CodArticoloGM) s'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 's.CodArticoloGM'); $join->on('T_WEB_Articoli.IdArticolo', '=', 's.CodArticoloGM');
}) })
->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as fat3mesi, RANK() OVER (ORDER BY SUM(TRY_CAST(Qta AS INT)) DESC) as fatrank3M ->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as fat3mesi, RANK() OVER (ORDER BY SUM(TRY_CAST(Qta AS INT)) DESC) as fatrank3M
FROM T_WEB_ArticoliFatturati FROM T_WEB_ArticoliFatturati
WHERE DataOra >= DATEADD(MONTH, -3, GETDATE()) AND ISNUMERIC(Qta) = 1 WHERE DataOra >= DATEADD(MONTH, -3, GETDATE()) AND ISNUMERIC(Qta) = 1
GROUP BY CodArticolo) t'), function ($join) { GROUP BY CodArticolo) t'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 't.CodArticolo'); $join->on('T_WEB_Articoli.IdArticolo', '=', 't.CodArticolo');
@@ -232,7 +232,7 @@ class ArticleController extends Controller
->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as totFat FROM T_WEB_ArticoliFatturati WHERE ISNUMERIC(Qta) = 1 GROUP BY CodArticolo) u'), function ($join) { ->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as totFat FROM T_WEB_ArticoliFatturati WHERE ISNUMERIC(Qta) = 1 GROUP BY CodArticolo) u'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 'u.CodArticolo'); $join->on('T_WEB_Articoli.IdArticolo', '=', 'u.CodArticolo');
}) })
->leftJoin(DB::raw('( /*->leftJoin(DB::raw('(
SELECT v.IdCollana, v.Descrizione as DescrizioneCollana SELECT v.IdCollana, v.Descrizione as DescrizioneCollana
FROM T_WEB_Collane v FROM T_WEB_Collane v
INNER JOIN ( INNER JOIN (
@@ -243,11 +243,11 @@ class ArticleController extends Controller
) y'), function ($join) { ) y'), function ($join) {
$join->on('T_WEB_Articoli.IdCollana', '=', 'y.IdCollana'); $join->on('T_WEB_Articoli.IdCollana', '=', 'y.IdCollana');
}) })
->leftJoin(DB::raw('(SELECT g2.IdArgomento, g2.Descrizione as DescrArgomento FROM T_WEB_Argomenti g2 ->leftJoin(DB::raw('(SELECT g2.IdArgomento, g2.Descrizione as DescrArgomento FROM T_WEB_Argomenti g2
JOIN (SELECT IdArgomento, MAX(DataOra) as data12 from T_WEB_Argomenti GROUP BY IdArgomento) h2 JOIN (SELECT IdArgomento, MAX(DataOra) as data12 from T_WEB_Argomenti GROUP BY IdArgomento) h2
ON g2.IdArgomento = h.IdArgomento AND g2.DataOra = h.data12 ) i2'), function ($join) { ON g2.IdArgomento = h.IdArgomento AND g2.DataOra = h.data12 ) i2'), function ($join) {
$join->on('T_WEB_Articoli.ListaArgomenti', '=', 'i2.IdArgomento'); $join->on('T_WEB_Articoli.ListaArgomenti', '=', 'i2.IdArgomento');
}) })*/
->select( ->select(
'T_WEB_Articoli.*', 'T_WEB_Articoli.*',
@@ -295,67 +295,67 @@ class ArticleController extends Controller
$join->on('T_WEB_Articoli.IdArticolo', '=', 'b.IdArticolo') $join->on('T_WEB_Articoli.IdArticolo', '=', 'b.IdArticolo')
->on('T_WEB_Articoli.DataOra', '=', 'b.data'); ->on('T_WEB_Articoli.DataOra', '=', 'b.data');
}) })
->leftJoin(DB::raw('(SELECT e.IdStatoProdotto, e.Descrizione as DescrizioneStatoProdotto FROM T_WEB_StatiProdotto e ->leftJoin(DB::raw('(SELECT e.IdStatoProdotto, e.Descrizione as DescrizioneStatoProdotto FROM T_WEB_StatiProdotto e
JOIN (SELECT IdStatoProdotto, MAX(DataOra) as data1 JOIN (SELECT IdStatoProdotto, MAX(DataOra) as data1
FROM T_WEB_StatiProdotto GROUP BY IdStatoProdotto) c FROM T_WEB_StatiProdotto GROUP BY IdStatoProdotto) c
ON e.IdStatoProdotto = c.IdStatoProdotto AND e.DataOra = c.data1) f'), function ($join) { ON e.IdStatoProdotto = c.IdStatoProdotto AND e.DataOra = c.data1) f'), function ($join) {
$join->on('T_WEB_Articoli.IdStatoProdotto', '=', 'f.IdStatoProdotto'); $join->on('T_WEB_Articoli.IdStatoProdotto', '=', 'f.IdStatoProdotto');
}) })
->leftJoin(DB::raw('(SELECT g.IdTipologia, g.Descrizione as DescrizioneTipologia FROM T_WEB_Tipologie g ->leftJoin(DB::raw('(SELECT g.IdTipologia, g.Descrizione as DescrizioneTipologia FROM T_WEB_Tipologie g
JOIN (SELECT IdTipologia, MAX(DataOra) as data1 JOIN (SELECT IdTipologia, MAX(DataOra) as data1
FROM T_WEB_Tipologie GROUP BY IdTipologia) h FROM T_WEB_Tipologie GROUP BY IdTipologia) h
ON g.IdTipologia = h.IdTipologia AND g.DataOra = h.data1) i'), function ($join) { ON g.IdTipologia = h.IdTipologia AND g.DataOra = h.data1) i'), function ($join) {
$join->on('T_WEB_Articoli.IdTipologia', '=', 'i.IdTipologia'); $join->on('T_WEB_Articoli.IdTipologia', '=', 'i.IdTipologia');
}) })
->leftJoin(DB::raw('(SELECT l.IdTipoFormato, l.Descrizione as DescrizioneFormato FROM T_WEB_TipiFormato l ->leftJoin(DB::raw('(SELECT l.IdTipoFormato, l.Descrizione as DescrizioneFormato FROM T_WEB_TipiFormato l
JOIN (SELECT IdTipoFormato, MAX(DataOra) as data1 JOIN (SELECT IdTipoFormato, MAX(DataOra) as data1
FROM T_WEB_TipiFormato GROUP BY IdTipoFormato) m FROM T_WEB_TipiFormato GROUP BY IdTipoFormato) m
ON l.IdTipoFormato = m.IdTipoFormato AND l.DataOra = m.data1) n'), function ($join) { ON l.IdTipoFormato = m.IdTipoFormato AND l.DataOra = m.data1) n'), function ($join) {
$join->on('T_WEB_Articoli.IdTipoFormato', '=', 'n.IdTipoFormato'); $join->on('T_WEB_Articoli.IdTipoFormato', '=', 'n.IdTipoFormato');
}) })
->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) AS totFat FROM T_WEB_ArticoliFatturati ->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) AS totFat FROM T_WEB_ArticoliFatturati
WHERE ISNUMERIC(Qta) = 1 GROUP BY CodArticolo) o'), function ($join) { WHERE ISNUMERIC(Qta) = 1 GROUP BY CodArticolo) o'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 'o.CodArticolo'); $join->on('T_WEB_Articoli.IdArticolo', '=', 'o.CodArticolo');
}) })
->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as venduti3mesi, ->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as venduti3mesi,
RANK() OVER (ORDER BY SUM(TRY_CAST(Qta AS INT)) DESC) as rank3M RANK() OVER (ORDER BY SUM(TRY_CAST(Qta AS INT)) DESC) as rank3M
FROM T_WEB_ArticoliFatturati FROM T_WEB_ArticoliFatturati
WHERE DataOra >= DATEADD(MONTH, -3, GETDATE()) AND ISNUMERIC(Qta) = 1 WHERE DataOra >= DATEADD(MONTH, -3, GETDATE()) AND ISNUMERIC(Qta) = 1
GROUP BY CodArticolo) p'), function ($join) { GROUP BY CodArticolo) p'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 'p.CodArticolo'); $join->on('T_WEB_Articoli.IdArticolo', '=', 'p.CodArticolo');
}) })
->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as venduti6mesi, ->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as venduti6mesi,
RANK() OVER (ORDER BY SUM(TRY_CAST(Qta AS INT)) DESC) as rank6M RANK() OVER (ORDER BY SUM(TRY_CAST(Qta AS INT)) DESC) as rank6M
FROM T_WEB_ArticoliFatturati FROM T_WEB_ArticoliFatturati
WHERE DataOra >= DATEADD(MONTH, -6, GETDATE()) AND ISNUMERIC(Qta) = 1 WHERE DataOra >= DATEADD(MONTH, -6, GETDATE()) AND ISNUMERIC(Qta) = 1
GROUP BY CodArticolo) q'), function ($join) { GROUP BY CodArticolo) q'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 'q.CodArticolo'); $join->on('T_WEB_Articoli.IdArticolo', '=', 'q.CodArticolo');
}) })
->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as venduti1anno, ->leftJoin(DB::raw('(SELECT CodArticolo, SUM(TRY_CAST(Qta AS INT)) as venduti1anno,
RANK() OVER (ORDER BY SUM(TRY_CAST(Qta AS INT)) DESC) as rank1Y RANK() OVER (ORDER BY SUM(TRY_CAST(Qta AS INT)) DESC) as rank1Y
FROM T_WEB_ArticoliFatturati FROM T_WEB_ArticoliFatturati
WHERE DataOra >= DATEADD(MONTH, -12, GETDATE()) AND ISNUMERIC(Qta) = 1 WHERE DataOra >= DATEADD(MONTH, -12, GETDATE()) AND ISNUMERIC(Qta) = 1
GROUP BY CodArticolo) r'), function ($join) { GROUP BY CodArticolo) r'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 'r.CodArticolo'); $join->on('T_WEB_Articoli.IdArticolo', '=', 'r.CodArticolo');
}) })
->leftJoin(DB::raw('(SELECT CodArticolo, MAX(DataOra) as ultimoOrdine ->leftJoin(DB::raw('(SELECT CodArticolo, MAX(DataOra) as ultimoOrdine
FROM T_WEB_ArticoliFatturati FROM T_WEB_ArticoliFatturati
WHERE ISNUMERIC(Qta) = 1 WHERE ISNUMERIC(Qta) = 1
GROUP BY CodArticolo) s'), function ($join) { GROUP BY CodArticolo) s'), function ($join) {
$join->on('T_WEB_Articoli.IdArticolo', '=', 's.CodArticolo'); $join->on('T_WEB_Articoli.IdArticolo', '=', 's.CodArticolo');
}) })
->leftJoin(DB::raw('(SELECT v.IdCollana, v.Descrizione as DescrizioneCollana ->leftJoin(DB::raw('(SELECT v.IdCollana, v.Descrizione as DescrizioneCollana
FROM T_WEB_Collane v FROM T_WEB_Collane v
INNER JOIN (SELECT IdCollana, MAX(ID) as MaxID INNER JOIN (SELECT IdCollana, MAX(ID) as MaxID
FROM T_WEB_Collane GROUP BY IdCollana) x FROM T_WEB_Collane GROUP BY IdCollana) x
ON v.IdCollana = x.IdCollana AND v.ID = x.MaxID) y'), function ($join) { ON v.IdCollana = x.IdCollana AND v.ID = x.MaxID) y'), function ($join) {
$join->on('T_WEB_Articoli.IdCollana', '=', 'y.IdCollana'); $join->on('T_WEB_Articoli.IdCollana', '=', 'y.IdCollana');
}) })
->leftJoin(DB::raw('(SELECT g2.IdArgomento, g2.Descrizione as DescrArgomento ->leftJoin(DB::raw('(SELECT g2.IdArgomento, g2.Descrizione as DescrArgomento
FROM T_WEB_Argomenti g2 FROM T_WEB_Argomenti g2
JOIN (SELECT IdArgomento, MAX(DataOra) as data12 JOIN (SELECT IdArgomento, MAX(DataOra) as data12
FROM T_WEB_Argomenti FROM T_WEB_Argomenti
GROUP BY IdArgomento) h GROUP BY IdArgomento) h
ON g2.IdArgomento = h.IdArgomento AND g2.DataOra = h.data12) i2'), function ($join) { ON g2.IdArgomento = h.IdArgomento AND g2.DataOra = h.data12) i2'), function ($join) {
$join->on('T_WEB_Articoli.ListaArgomenti', '=', 'i2.IdArgomento'); $join->on('T_WEB_Articoli.ListaArgomenti', '=', 'i2.IdArgomento');
}) })
@@ -380,7 +380,7 @@ class ArticleController extends Controller
//->orderBy('rank1Y', 'asc') //->orderBy('rank1Y', 'asc')
->orderBy('totFat', 'desc') ->orderBy('totFat', 'desc')
->get(); ->get();
if ($articoliVenduti->isEmpty()) { if ($articoliVenduti->isEmpty()) {
return response()->json(['message' => 'Nessun articolo fatturato trovato.'], 404); return response()->json(['message' => 'Nessun articolo fatturato trovato.'], 404);
} }
@@ -677,7 +677,7 @@ class ArticleController extends Controller
return $output; return $output;
} }
public function showTableByName($tableName, $numrec) public function showTableByName($tableName, $numrec)
{ {
@@ -691,4 +691,4 @@ class ArticleController extends Controller
'tableContent' => $tableContent 'tableContent' => $tableContent
]); ]);
} }
} }

View File

@@ -64,13 +64,13 @@ return [
'url' => env('AWS_URL'), 'url' => env('AWS_URL'),
'endpoint' => env('AWS_ENDPOINT'), 'endpoint' => env('AWS_ENDPOINT'),
], ],
'ftp' => [ 'ftp' => [
'driver' => 'ftp', 'driver' => 'ftp',
'host' => 'ftp.pecos.it', 'host' => 'ftp.pecos.it',
'username' => '15710515@aruba.it', 'username' => '15710515@aruba.it',
'password' => 'Km:cOuy#F8', 'password' => 'Km:cOuy#F8',
// Optional FTP Settings... // Optional FTP Settings...
// 'port' => 21, // 'port' => 21,
'root' => '/www.pecos.it/.backup', 'root' => '/www.pecos.it/.backup',