diff --git a/app/CustomFuncPao.php b/app/CustomFuncPao.php
index 9c97e0d2..49b41ce3 100644
--- a/app/CustomFuncPao.php
+++ b/app/CustomFuncPao.php
@@ -224,59 +224,63 @@ function loadArticleByIdArticle($id, $checkprevendita = false)
function libriInPrevendita()
{
- $articles = 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')
- ->on('T_WEB_Articoli.DataOra', '=', 'b.data');
- })
-
- ->leftJoin(DB::raw('(SELECT e.IdStatoProdotto, e.Descrizione as DescrizioneStatoProdotto FROM T_WEB_StatiProdotto e JOIN (SELECT IdStatoProdotto, MAX(DataOra) as data1 from T_WEB_StatiProdotto GROUP BY IdStatoProdotto) c ON e.IdStatoProdotto = c.IdStatoProdotto AND e.DataOra = c.data1 ) f'), function ($join) {
- $join->on('T_WEB_Articoli.IdStatoProdotto', '=', 'f.IdStatoProdotto');
- })
- ->leftJoin(DB::raw('(SELECT g.IdTipologia, g.Descrizione as DescrizioneTipologia FROM T_WEB_Tipologie g JOIN (SELECT IdTipologia, MAX(DataOra) as data1 from T_WEB_Tipologie GROUP BY IdTipologia) h ON g.IdTipologia = h.IdTipologia AND g.DataOra = h.data1 ) i'), function ($join) {
- $join->on('T_WEB_Articoli.IdTipologia', '=', 'i.IdTipologia');
- })
- ->leftJoin(DB::raw('(SELECT l.IdTipoFormato, l.Descrizione as DescrizioneFormato FROM T_WEB_TipiFormato l JOIN (SELECT IdTipoFormato, MAX(DataOra) as data1 from T_WEB_TipiFormato GROUP BY IdTipoFormato) m ON l.IdTipoFormato = m.IdTipoFormato AND l.DataOra = m.data1 ) n'), function ($join) {
- $join->on('T_WEB_Articoli.IdTipoFormato', '=', 'n.IdTipoFormato');
- })
- ->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) {
- $join->on('T_WEB_Articoli.IdArticolo', '=', 'q.Codice');
+ try {
+ $articles = 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')
+ ->on('T_WEB_Articoli.DataOra', '=', 'b.data');
})
- ->where('DescrizioneStatoProdotto', 'In prevendita')
- ->where(DB::raw('CONVERT(INT, QtaDisponibile)'), '<', 0)
- ->where('DescrizioneFormato', 'brossura')
- ->where('DescrizioneTipologia', 'Libri')
- ->orderBy('DataPubblicazione', 'desc')
+ ->leftJoin(DB::raw('(SELECT e.IdStatoProdotto, e.Descrizione as DescrizioneStatoProdotto FROM T_WEB_StatiProdotto e JOIN (SELECT IdStatoProdotto, MAX(DataOra) as data1 from T_WEB_StatiProdotto GROUP BY IdStatoProdotto) c ON e.IdStatoProdotto = c.IdStatoProdotto AND e.DataOra = c.data1 ) f'), function ($join) {
+ $join->on('T_WEB_Articoli.IdStatoProdotto', '=', 'f.IdStatoProdotto');
+ })
+ ->leftJoin(DB::raw('(SELECT g.IdTipologia, g.Descrizione as DescrizioneTipologia FROM T_WEB_Tipologie g JOIN (SELECT IdTipologia, MAX(DataOra) as data1 from T_WEB_Tipologie GROUP BY IdTipologia) h ON g.IdTipologia = h.IdTipologia AND g.DataOra = h.data1 ) i'), function ($join) {
+ $join->on('T_WEB_Articoli.IdTipologia', '=', 'i.IdTipologia');
+ })
+ ->leftJoin(DB::raw('(SELECT l.IdTipoFormato, l.Descrizione as DescrizioneFormato FROM T_WEB_TipiFormato l JOIN (SELECT IdTipoFormato, MAX(DataOra) as data1 from T_WEB_TipiFormato GROUP BY IdTipoFormato) m ON l.IdTipoFormato = m.IdTipoFormato AND l.DataOra = m.data1 ) n'), function ($join) {
+ $join->on('T_WEB_Articoli.IdTipoFormato', '=', 'n.IdTipoFormato');
+ })
+ ->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) {
+ $join->on('T_WEB_Articoli.IdArticolo', '=', 'q.Codice');
+ })
- ->get();
- $sep = ' | ';
+ ->where('DescrizioneStatoProdotto', 'In prevendita')
+ ->where(DB::raw('CONVERT(INT, QtaDisponibile)'), '<', 0)
+ ->where('DescrizioneFormato', 'brossura')
+ ->where('DescrizioneTipologia', 'Libri')
+ ->orderBy('DataPubblicazione', 'desc')
+ ->limit(5)
+ ->get();
+ $sep = ' | ';
- $ind = 1;
- foreach ($articles as $article) {
- // $titolo = rtrim(str_ireplace('USATO', '', $article->Titolo));
+ $ind = 1;
+ foreach ($articles as $article) {
+ // $titolo = rtrim(str_ireplace('USATO', '', $article->Titolo));
- $mydatestr = $article->DataPubblicazione;
+ $mydatestr = $article->DataPubblicazione;
- $sku = $article->IdArticolo;
+ $sku = $article->IdArticolo;
- // echo '[' . $ind . ']' . $sep . $mydatestr . $sep . $article->IdArticolo . $sep . $article->Titolo . $sep . $article->DescrizioneStatoProdotto . $sep . $article->DescrizioneFormato . ' [Quantita = ' . $article->QtaDisponibile . ']';
- echo '[' . $ind . ']' . $sep . $article->IdArticolo . $sep . $article->Titolo . $sep . ' Data Pubbl.:' . date('d-m-Y', strtotime($article->DataPubblicazione)) . $sep . $article->DescrizioneStatoProdotto . '(' . $article->DescrizioneFormato . ') [Quantita = ' . $article->QtaDisponibile . ']';
- $prodotto = Product::where('sku', $sku)->first();
- if ($prodotto) {
+ // echo '[' . $ind . ']' . $sep . $mydatestr . $sep . $article->IdArticolo . $sep . $article->Titolo . $sep . $article->DescrizioneStatoProdotto . $sep . $article->DescrizioneFormato . ' [Quantita = ' . $article->QtaDisponibile . ']';
+ echo '[' . $ind . ']' . $sep . '' . $article->IdArticolo . '' . $sep . $article->Titolo . $sep . ' Data Pubblicazione:' . date('d-m-Y', strtotime($article->DataPubblicazione)) . $sep . $article->DescrizioneStatoProdotto . ' (' . $article->DescrizioneFormato . ') [Quantita = ' . $article->QtaDisponibile . ']';
+ $prodotto = Product::where('sku', $sku)->first();
+ if ($prodotto) {
- if (isset($prodotto['_wpro_variable_is_preorder'])) {
- echo '
PREORDINE: ' . $prodotto['_wpro_variable_is_preorder'] . '';
+ if (isset($prodotto['_wpro_variable_is_preorder'])) {
+ echo '
PREORDINE: ' . $prodotto['_wpro_variable_is_preorder'] . '';
+ }
+ if (isset($prodotto['_wpro_label_variable'])) {
+ echo 'Etichetta: ' . $prodotto['_wpro_label_variable'];
+ }
+ if (isset($prodotto['_wpro_date_variable'])) {
+ echo 'Data Preordine: ' . $prodotto['_wpro_date_variable'];
+ }
+ echo '
';
}
- if (isset($prodotto['_wpro_label_variable'])) {
- echo 'Etichetta: ' . $prodotto['_wpro_label_variable'];
- }
- if (isset($prodotto['_wpro_date_variable'])) {
- echo 'Data Preordine: ' . $prodotto['_wpro_date_variable'];
- }
- echo '
';
+
+ $ind++;
}
-
- $ind++;
+ } catch (Exception $e) {
+ echo $e->getMessage();
}
return true;