Skip to content

Commit 439332f

Browse files
committed
fix: associazione sottocategoria a impianto
1 parent 6d69f9f commit 439332f

2 files changed

Lines changed: 38 additions & 32 deletions

File tree

modules/categorie/edit.php

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@
8080
<tr>
8181
<th width="25%" class="text-left"><?php echo tr('Nome'); ?></th>
8282
<th width="15%" class="text-center"><?php echo tr('Colore'); ?></th>
83-
<th width="10%" class="text-center"><?php echo tr('Articolo'); ?></th>
84-
<th width="10%" class="text-center"><?php echo tr('Impianto'); ?></th>
83+
<th width="10%" class="text-center"><?php echo tr('Articoli'); ?></th>
84+
<th width="10%" class="text-center"><?php echo tr('Impianti'); ?></th>
8585
<th class="text-left"><?php echo tr('Nota'); ?></th>
8686
<th width="10%" class="text-center"><?php echo tr('Azioni'); ?></th>
8787
</tr>
@@ -110,7 +110,7 @@
110110
$articoli = $dbo->fetchArray('SELECT `mg_articoli`.`id`, `mg_articoli`.`codice`, `mg_articoli`.`barcode`, `sottocategorie_lang`.`title` AS sottocategoria FROM `mg_articoli` LEFT JOIN `zz_categorie` AS `sottocategorie` ON `mg_articoli`.`id_sottocategoria` = `sottocategorie`.`id` LEFT JOIN `zz_categorie_lang` AS `sottocategorie_lang` ON (`sottocategorie`.`id` = `sottocategorie_lang`.`id_record` AND `sottocategorie_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE (`id_categoria`='.prepare($id_record).' OR `id_sottocategoria`='.prepare($id_record).' OR `id_sottocategoria` IN (SELECT `id` FROM `zz_categorie` WHERE `parent`='.prepare($id_record).')) AND `deleted_at` IS NULL');
111111

112112
// Impianti collegati alla categoria
113-
$impianti = $dbo->fetchArray('SELECT `my_impianti`.`id`, `my_impianti`.`matricola`, `my_impianti`.`nome` FROM `my_impianti` WHERE (`id_categoria`='.prepare($id_record).' OR `id_sottocategoria`='.prepare($id_record).' OR `id_sottocategoria` IN (SELECT `id` FROM `zz_categorie` WHERE `parent`='.prepare($id_record).'))');
113+
$impianti = $dbo->fetchArray('SELECT `my_impianti`.`id`, `my_impianti`.`matricola`, `my_impianti`.`nome`, `sottocategorie_lang`.`title` AS sottocategoria FROM `my_impianti` LEFT JOIN `zz_categorie` AS `sottocategorie` ON `my_impianti`.`id_sottocategoria` = `sottocategorie`.`id` LEFT JOIN `zz_categorie_lang` AS `sottocategorie_lang` ON (`sottocategorie`.`id` = `sottocategorie_lang`.`id_record` AND `sottocategorie_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') WHERE (`id_categoria`='.prepare($id_record).' OR `id_sottocategoria`='.prepare($id_record).' OR `id_sottocategoria` IN (SELECT `id` FROM `zz_categorie` WHERE `parent`='.prepare($id_record).'))');
114114

115115
// Visualizzazione degli articoli collegati
116116
if (!empty($articoli)) {
@@ -178,6 +178,12 @@
178178
$descrizione = tr('Impianto _MATRICOLA_', [
179179
'_MATRICOLA_' => !empty($elemento['matricola']) ? $elemento['matricola'].' - '.$elemento['nome'] : $elemento['nome'],
180180
]);
181+
182+
// Aggiunge la sottocategoria se presente
183+
if (!empty($elemento['sottocategoria'])) {
184+
$descrizione .= ' <small class="text-primary">('.$elemento['sottocategoria'].')</small>';
185+
}
186+
181187
$modulo = 'Impianti';
182188
$id = $elemento['id'];
183189

modules/categorie/row-list.php

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -25,35 +25,35 @@
2525

2626
foreach ($subcategorie as $sub) {
2727
$n_articoli = Articolo::where('id_sottocategoria', '=', $sub['id'])->count();
28+
$n_impianti = database()->table('my_impianti')->where('id_sottocategoria', '=', $sub['id'])->count();
2829

2930
echo '
30-
<tr>
31-
<td class="align-middle">
32-
<strong>'.$sub->getTranslation('title').'</strong>
33-
'.($n_articoli > 0 ? '<span class="badge badge-info ml-2" title="'.tr('Articoli collegati').'">'.$n_articoli.'</span>' : '<span class="badge badge-secondary ml-2" title="'.tr('Nessun articolo collegato').'">0</span>').'
34-
</td>
35-
<td class="text-center align-middle">
36-
<span class="badge" style="background-color: '.$sub->colore.'; width: 20px; height: 20px; display: inline-block; vertical-align: middle;"></span>
37-
<span class="text-muted">'.$sub->colore.'</span>
38-
</td>
39-
<td class="text-center align-middle">
40-
'.($sub->is_articolo ? '<span class="badge badge-success"><i class="fa fa-check"></i></span>' : '<span class="badge badge-secondary"><i class="fa fa-times"></i></span>').'
41-
</td>
42-
<td class="text-center align-middle">
43-
'.($sub->is_impianto ? '<span class="badge badge-primary"><i class="fa fa-check"></i></span>' : '<span class="badge badge-secondary"><i class="fa fa-times"></i></span>').'
44-
</td>
45-
<td class="align-middle">
46-
<small>'.nl2br(htmlentities(substr((string) $sub->getTranslation('note'), 0, 100))).(strlen((string) $sub->getTranslation('note')) > 100 ? '...' : '').'</small>
47-
</td>
48-
<td class="text-center align-middle">
49-
<div class="btn-group">
50-
<button type="button" class="btn btn-warning btn-sm" title="'.tr('Modifica').'" onclick="launch_modal(\''.tr('Modifica sottocategoria').'\', \''.base_path_osm().'/add.php?id_module='.$id_module.'&id_record='.$sub->id.'&id_original='.$id_record.'\');">
51-
<i class="fa fa-edit"></i>
52-
</button>
53-
<button type="button" class="btn btn-sm btn-danger ask '.(($n_articoli > 0) ? 'disabled tip' : '').'" data-backto="record-edit" data-id="'.$sub['id'].'" title="'.(($n_articoli > 0) ? 'Sottocategoria collegata a '.$n_articoli.' articoli' : tr('Elimina')).'">
54-
<i class="fa fa-trash"></i>
55-
</button>
56-
</div>
57-
</td>
58-
</tr>';
31+
<tr>
32+
<td class="align-middle">
33+
<strong>' . $sub->getTranslation('title') . '</strong>
34+
</td>
35+
<td class="text-center align-middle">
36+
<span class="badge" style="background-color: ' . $sub->colore . '; width: 20px; height: 20px; display: inline-block; vertical-align: middle;"></span>
37+
<span class="text-muted">' . $sub->colore . '</span>
38+
</td>
39+
<td class="text-center align-middle">
40+
' . ($n_articoli > 0 ? '<span class="badge badge-info">' . $n_articoli . '</span>' : '<span class="badge badge-secondary">0</span>') . '
41+
</td>
42+
<td class="text-center align-middle">
43+
' . ($n_impianti > 0 ? '<span class="badge badge-primary">' . $n_impianti . '</span>' : '<span class="badge badge-secondary">0</span>') . '
44+
</td>
45+
<td class="align-middle">
46+
<small>' . nl2br(htmlentities(substr((string) $sub->getTranslation('note'), 0, 100))) . (strlen((string) $sub->getTranslation('note')) > 100 ? '...' : '') . '</small>
47+
</td>
48+
<td class="text-center align-middle">
49+
<div class="btn-group">
50+
<button type="button" class="btn btn-warning btn-sm" title="' . tr('Modifica') . '" onclick="launch_modal(\'' . tr('Modifica sottocategoria') . '\', \'' . base_path() . '/add.php?id_module=' . $id_module . '&id_record=' . $sub->id . '&id_original=' . $id_record . '\');">
51+
<i class="fa fa-edit"></i>
52+
</button>
53+
<button type="button" class="btn btn-sm btn-danger ask ' . (($n_articoli > 0 || $n_impianti > 0) ? 'disabled tip' : '') . '" data-backto="record-edit" data-id="' . $sub['id'] . '" title="' . (($n_articoli > 0 || $n_impianti > 0) ? 'Sottocategoria collegata a ' . $n_articoli . ' articoli e ' . $n_impianti . ' impianti' : tr('Elimina')) . '">
54+
<i class="fa fa-trash"></i>
55+
</button>
56+
</div>
57+
</td>
58+
</tr>';
5959
}

0 commit comments

Comments
 (0)