$_GET['search_codice'], 'descrizione' => $_GET['search_descrizione'], 'categoria' => $_GET['search_categoria'], 'subcategoria' => $_GET['search_subcategoria'], 'tipo' => $_GET['search_tipo'], ]; foreach ($search as $name => $value) { if ($value == 'undefined') { $search[$name] = null; } } $search['tipo'] = $search['tipo'] ?: 'solo prodotti attivi'; // Filtri effettivi $where = [ 'servizio = 0', ]; if ($search['tipo'] == 'solo prodotti attivi') { $where[] = 'attivo = 1'; } elseif ($search['tipo'] == 'solo prodotti non attivi') { $where[] = 'attivo = 0'; } if (!empty($search['codice'])) { $where[] = "(REPLACE(codice, '.', '') LIKE ".prepare('%'.$search['codice'].'%').' OR codice LIKE '.prepare('%'.$search['codice'].'%').')'; } if (!empty($search['descrizione'])) { $where[] .= "REPLACE(descrizione, '.', '') LIKE ".prepare('%'.$search['descrizione'].'%'); } if (!empty($search['categoria'])) { $where[] = 'id_categoria IN (SELECT id FROM mg_categorie WHERE descrizione LIKE '.prepare('%'.$search['categoria'].'%').')'; } if (!empty($search['subcategoria'])) { $where[] = 'id_sottocategoria IN (SELECT id FROM mg_categorie WHERE descrizione LIKE '.prepare('%'.$search['subcategoria'].'%').')'; } $period_end = $_SESSION['period_end']; $query = 'SELECT *, (SELECT SUM(qta) FROM mg_movimenti WHERE mg_movimenti.idarticolo=mg_articoli.id AND (mg_movimenti.idintervento IS NULL) AND data <= '.prepare($period_end).') AS qta FROM mg_articoli WHERE 1=1 ORDER BY codice ASC'; $query = str_replace('1=1', '1=1'.(!empty($where) ? ' AND '.implode(' AND ', $where) : ''), $query); $rs = $dbo->fetchArray($query); echo '
'.tr('Codice', [], ['upper' => true]).' | '.tr('Descrizione', [], ['upper' => true]).' | '.tr('Prezzo di vendita', [], ['upper' => true]).' | '.tr('Q.tà', [], ['upper' => true]).' | '.tr('Prezzo di acquisto', [], ['upper' => true]).' | '.tr('Valore totale', [], ['upper' => true]).' |
---|---|---|---|---|---|
'.$r['codice'].' | '.$r['descrizione'].' | '.moneyFormat($r['prezzo_vendita']).' | '.Translator::numberToLocale($r['qta']).' '.$r['um'].' | '.moneyFormat($r['prezzo_acquisto']).' | '.moneyFormat($valore_magazzino).' |
'.tr('Totale', [], ['upper' => true]).': | '.Translator::numberToLocale($totale_qta).' | '.moneyFormat($totale_acquisto).' |