Aggiunti controlli su eliminazione record

This commit is contained in:
MatteoPistorello 2022-06-06 17:46:35 +02:00
parent b8a7640ef0
commit 4f632cc15f
4 changed files with 80 additions and 11 deletions

View File

@ -132,7 +132,12 @@ switch (post('op')) {
case 'stampa-etichette':
$_SESSION['superselect']['id_articolo_barcode'] = $id_records;
$id_print = Prints::getPrints()['Barcode'];
if (post('tipologia') == 'singola') {
$id_print = Prints::getPrints()['Barcode'];
} else {
$id_print = Prints::getPrints()['Barcode bulk'];
}
redirect(base_path().'/pdfgen.php?id_print='.$id_print.'&id_record='.Articolo::where('codice', '!=', '')->first()->id);
exit();
@ -444,7 +449,8 @@ $operations['stampa-etichette'] = [
'text' => '<span><i class="fa fa-barcode"></i> '.tr('Stampa etichette').'</span>',
'data' => [
'title' => tr('Stampare le etichette?'),
'msg' => tr('Per ciascun articolo selezionato, se presente il barcode, verrà stampata un\'etichetta'),
'msg' => tr('Per ciascun articolo selezionato, se presente il barcode, verrà stampata un\'etichetta').'<br><br>
{[ "type": "select", "label": "'.tr('Tipologia stampa').'", "name": "tipologia", "required": 1, "values": "list=\"singola\":\"Singola\",\"a4\":\"Formato A4\"", "value": "singola" ]}<br>',
'button' => tr('Procedi'),
'class' => 'btn btn-lg btn-warning',
'blank' => true,

View File

@ -39,11 +39,26 @@ switch (post('op')) {
// Rimuovo impianto e scollego tutti i suoi componenti
case 'delete-bulk':
$n_impianti = 0;
foreach ($id_records as $id) {
$dbo->query('DELETE FROM my_impianti WHERE id='.prepare($id));
$elementi = $dbo->fetchArray('SELECT `idimpianto` FROM `my_impianti_interventi` WHERE `my_impianti_interventi`.`idimpianto` = '.prepare($id).'
UNION
SELECT `idimpianto` FROM `my_impianti_contratti` WHERE `my_impianti_contratti`.`idimpianto` = '.prepare($id));
if (empty($elementi)) {
$dbo->query('DELETE FROM my_impianti WHERE id='.prepare($id));
$n_impianti++;
}
}
flash()->info(tr('Impianti e relativi componenti eliminati!'));
if ($n_impianti == sizeof($id_records)) {
flash()->info(tr('Impianti e relativi componenti eliminati!'));
} else {
flash()->warning(tr('_NUM_ impianti non eliminati perchè collegati ad interventi o a contratti!', [
'_NUM_' => sizeof($id_records) - $n_impianti,
]));
}
break;
}

View File

@ -133,10 +133,56 @@ if (!empty($record['immagine'])) {
{( "name": "filelist_and_upload", "id_module": "$id_module$", "id_record": "$id_record$" )}
<a class="btn btn-danger ask" data-backto="record-list">
<i class="fa fa-trash"></i> <?php echo tr('Elimina'); ?>
</a>
<?php
$elementi = $dbo->fetchArray('SELECT `in_interventi`.`id`, `codice` AS numero, `data_richiesta` AS data, "Intervento" AS tipo_documento FROM `in_interventi` INNER JOIN `my_impianti_interventi` ON `in_interventi`.`id`=`my_impianti_interventi`.`idintervento` WHERE `my_impianti_interventi`.`idimpianto` = '.prepare($id_record).'
UNION
SELECT `co_contratti`.`id`, `numero` AS numero, `data_bozza` AS data, "Contratto" AS tipo_documento FROM `co_contratti` INNER JOIN `my_impianti_contratti` ON `co_contratti`.`id`=`my_impianti_contratti`.`idcontratto` WHERE `my_impianti_contratti`.`idimpianto` = '.prepare($id_record));
$class = '';
if (!empty($elementi)) {
echo '
<div class="box box-warning collapsable collapsed-box">
<div class="box-header with-border">
<h3 class="box-title"><i class="fa fa-warning"></i> '.tr('Documenti collegati: _NUM_', [
'_NUM_' => count($elementi),
]).'</h3>
<div class="box-tools pull-right">
<button type="button" class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-plus"></i></button>
</div>
</div>
<div class="box-body">
<ul>';
foreach ($elementi as $elemento) {
$descrizione = tr('_DOC_ num. _NUM_ del _DATE_', [
'_DOC_' => $elemento['tipo_documento'],
'_NUM_' => $elemento['numero'],
'_DATE_' => Translator::dateToLocale($elemento['data']),
]);
if ($elemento['tipo_documento'] == 'Intervento') {
$modulo = 'Interventi';
} else {
$modulo = 'Contratti';
}
$id = $elemento['id'];
echo '
<li>'.Modules::link($modulo, $id, $descrizione).'</li>';
}
$class = "disabled";
echo '
</ul>
</div>
</div>';
}
echo '
<a class="btn btn-danger ask '.$class.'" data-backto="record-list">
<i class="fa fa-trash"></i> '.tr('Elimina').'
</a>';
?>
<script type="text/javascript">
$(document).ready(function() {

View File

@ -137,6 +137,7 @@ SELECT `co_preventivi`.`idtipointervento`, id, numero, data_bozza AS data, "Prev
UNION
SELECT `co_promemoria`.`idtipointervento`, idcontratto AS id, numero, data_richiesta AS data, "Promemoria contratto" AS tipo_documento FROM `co_promemoria` LEFT JOIN co_contratti ON co_promemoria.idcontratto=co_contratti.id WHERE `co_promemoria`.`idtipointervento` = '.prepare($id_record).'
ORDER BY `idtipointervento`');
$class = '';
if (!empty($elementi)) {
echo '
@ -179,14 +180,15 @@ if (!empty($elementi)) {
echo '
<li>'.Modules::link($modulo, $id, $descrizione).'</li>';
}
$class = "disabled";
echo '
</ul>
</div>
</div>';
} else {
echo '
<a class="btn btn-danger ask" data-backto="record-list">
}
echo '
<a class="btn btn-danger ask '.$class.'" data-backto="record-list">
<i class="fa fa-trash"></i> '.tr('Elimina').'
</a>';
}