Skip to content

Commit f2d9e6e

Browse files
committed
feat: Gestione barcode multipli degli articoli nei selettori
1 parent d665617 commit f2d9e6e

2 files changed

Lines changed: 7 additions & 5 deletions

File tree

modules/articoli/ajax/search.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
$fields = [
3030
'idarticolo' => '`mg_articoli`.`id`',
3131
'codice' => '`mg_articoli`.`codice`',
32-
'barcode' => '`mg_articoli`.`barcode`',
32+
'barcode' => '`barcode`.`lista`',
3333
'descrizione' => '`mg_articoli_lang`.`title`',
3434
'categoria' => '(SELECT `title` FROM `zz_categorie` LEFT JOIN `zz_categorie_lang` ON (`zz_categorie`.`id` = `zz_categorie_lang`.`id_record` AND `zz_categorie_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `zz_categorie`.`id` = `mg_articoli`.`id_categoria`)',
3535
'subcategoria' => '(SELECT `title` FROM `zz_categorie` LEFT JOIN `zz_categorie_lang` ON (`zz_categorie`.`id` = `zz_categorie_lang`.`id_record` AND `zz_categorie_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE `zz_categorie`.`id` = `mg_articoli`.`id_sottocategoria`)',

modules/articoli/ajax/select.php

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
$query = "SELECT
4343
DISTINCT `mg_articoli`.`id`,
4444
IF(`categoria_lang`.`title` IS NOT NULL, CONCAT(`categoria_lang`.`title`, IF(`sottocategoria_lang`.`title` IS NOT NULL, CONCAT(' (', `sottocategoria_lang`.`title`, ')'), '-')), '<i>".tr('Nessuna categoria')."</i>') AS optgroup,
45-
`mg_articoli`.`barcode`,
45+
`mg_articoli_barcode`.`barcode` AS barcode,
4646
`mg_articoli`.".($prezzi_ivati ? '`prezzo_vendita_ivato`' : '`prezzo_vendita`').' AS prezzo_vendita,
4747
`mg_articoli`.`prezzo_vendita_ivato` AS prezzo_vendita_ivato,
4848
`mg_articoli`.'.($prezzi_ivati ? '`minimo_vendita_ivato`' : '`minimo_vendita`').' AS minimo_vendita,';
@@ -114,7 +114,8 @@
114114
LEFT JOIN `co_iva` AS iva_articolo ON `iva_articolo`.`id` = `mg_articoli`.`idiva_vendita`
115115
LEFT JOIN `co_iva_lang` AS iva_articolo_lang on (`iva_articolo`.`id` = `iva_articolo_lang`.`id_record` AND `iva_articolo_lang`.`id_lang` = ".prepare(Models\Locale::getDefault()->id).")
116116
LEFT JOIN `co_iva` AS `iva_predefinita` ON `iva_predefinita`.`id` = '.$iva_predefinita.'
117-
LEFT JOIN `co_iva_lang` AS iva_predefinita_lang on (`iva_predefinita`.`id` = `iva_predefinita_lang`.`id_record` AND `iva_predefinita_lang`.`id_lang` = ".prepare(Models\Locale::getDefault()->id).')';
117+
LEFT JOIN `co_iva_lang` AS iva_predefinita_lang on (`iva_predefinita`.`id` = `iva_predefinita_lang`.`id_record` AND `iva_predefinita_lang`.`id_lang` = ".prepare(Models\Locale::getDefault()->id).')
118+
LEFT JOIN mg_articoli_barcode ON mg_articoli_barcode.idarticolo = mg_articoli.id';
118119

119120
if ($usare_iva_anagrafica) {
120121
$query .= '
@@ -179,8 +180,8 @@
179180
if (!empty($search)) {
180181
$search_fields[] = '`mg_articoli_lang`.`title` LIKE '.prepare('%'.$search.'%');
181182
$search_fields[] = '`mg_articoli`.`codice` LIKE '.prepare('%'.$search.'%');
182-
$search_fields[] = '`mg_articoli`.`barcode` LIKE '.prepare('%'.$search.'%');
183183
$search_fields[] = '`categoria_lang`.`title` LIKE '.prepare('%'.$search.'%');
184+
$search_fields[] = '`mg_articoli_barcode`.`barcode` LIKE '.prepare('%'.$search.'%');
184185
$search_fields[] = '`sottocategoria_lang`.`title` LIKE '.prepare('%'.$search.'%');
185186

186187
if ($usare_dettaglio_fornitore) {
@@ -292,14 +293,15 @@
292293
`mg_fornitore_articolo`.`id` AS id_dettaglio_fornitore
293294
FROM `mg_articoli`
294295
LEFT JOIN `mg_fornitore_articolo` ON `mg_fornitore_articolo`.`id_articolo` = `mg_articoli`.`id` AND `mg_fornitore_articolo`.`deleted_at` IS NULL AND `mg_fornitore_articolo`.`id_fornitore` = '.prepare($id_anagrafica).'
296+
LEFT JOIN `mg_articoli_barcode` ON `mg_articoli`.`id` = `mg_articoli_barcode`.`idarticolo`
295297
|where|';
296298

297299
$where[] = '`mg_articoli`.`attivo` = 1';
298300
$where[] = '`mg_articoli`.`deleted_at` IS NULL';
299301

300302
if (!empty($search)) {
301303
$search_fields[] = '`mg_articoli`.`codice` LIKE '.prepare('%'.$search.'%');
302-
$search_fields[] = '`mg_articoli`.`barcode` LIKE '.prepare('%'.$search.'%');
304+
$search_fields[] = '`mg_articoli_barcode`.`barcode` LIKE '.prepare('%'.$search.'%');
303305
}
304306

305307
break;

0 commit comments

Comments
 (0)