aa
This commit is contained in:
@@ -14,8 +14,7 @@ class ArticleController extends Controller
|
|||||||
private function queryArticlesSales()
|
private function queryArticlesSales()
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$chunks = [];
|
$articoliVenduti = Article::join(DB::raw('(SELECT IdArticolo, MAX(DataOra) AS data FROM T_WEB_Articoli GROUP BY IdArticolo) b'), function ($join) {
|
||||||
Article::join(DB::raw('(SELECT IdArticolo, MAX(DataOra) AS data FROM T_WEB_Articoli GROUP BY IdArticolo) b'), function ($join) {
|
|
||||||
$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');
|
||||||
})
|
})
|
||||||
@@ -31,27 +30,15 @@ class ArticleController extends Controller
|
|||||||
->leftJoin(DB::raw('(SELECT CodArticoloGM, SUM(Qta) as totaleVenduti FROM T_WEB_Ordini GROUP BY CodArticoloGM) o'), function ($join) {
|
->leftJoin(DB::raw('(SELECT CodArticoloGM, SUM(Qta) as totaleVenduti FROM T_WEB_Ordini GROUP BY CodArticoloGM) o'), function ($join) {
|
||||||
$join->on('T_WEB_Articoli.IdArticolo', '=', 'o.CodArticoloGM');
|
$join->on('T_WEB_Articoli.IdArticolo', '=', 'o.CodArticoloGM');
|
||||||
})
|
})
|
||||||
->leftJoin(DB::raw('(SELECT o.Codice, o.QtaDisponibile FROM T_WEB_Disponibile o JOIN (SELECT Codice, MAX(DataOra) as data1 from T_WEB_Disponibile GROUP BY Codice) p ON o.Codice = p.Codice AND o.DataOra = p.data1 ) q'), function ($join) {
|
->select('T_WEB_Articoli.*',
|
||||||
$join->on('T_WEB_Articoli.IdArticolo', '=', 'q.Codice');
|
'f.DescrizioneStatoProdotto',
|
||||||
})
|
'i.DescrizioneTipologia',
|
||||||
->select(
|
'n.DescrizioneFormato',
|
||||||
'T_WEB_Articoli.*',
|
DB::raw('COALESCE(o.totaleVenduti, 0) as totaleVenduti'))
|
||||||
'f.DescrizioneStatoProdotto',
|
->where('DescrizioneStatoProdotto','In commercio')
|
||||||
'i.DescrizioneTipologia',
|
->where('DescrizioneTipologia','Libri')
|
||||||
'n.DescrizioneFormato',
|
|
||||||
'q.QtaDisponibile',
|
|
||||||
DB::raw('COALESCE(o.totaleVenduti, 0) as totaleVenduti')
|
|
||||||
)
|
|
||||||
->where('DescrizioneStatoProdotto', 'In commercio')
|
|
||||||
->where('DescrizioneTipologia', 'Libri')
|
|
||||||
->where(DB::raw('CONVERT(INT, q.QtaDisponibile)'), '<>', 0)
|
|
||||||
->orderBy('totaleVenduti', 'desc')
|
->orderBy('totaleVenduti', 'desc')
|
||||||
->chunk(1000, function ($records) use (&$chunks) {
|
->get();
|
||||||
$chunks[] = $records;
|
|
||||||
});
|
|
||||||
|
|
||||||
$articoliVenduti = collect($chunks)->flatten(1);
|
|
||||||
|
|
||||||
|
|
||||||
if ($articoliVenduti->isEmpty()) {
|
if ($articoliVenduti->isEmpty()) {
|
||||||
return response()->json(['message' => 'Nessun articolo trovato.'], 404);
|
return response()->json(['message' => 'Nessun articolo trovato.'], 404);
|
||||||
|
|||||||
Reference in New Issue
Block a user