From 573156e098ef92f7bd827485b9d20dd7e740c2c3 Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 28 Mar 2018 00:31:21 +0200 Subject: [PATCH] =?UTF-8?q?Fix=20eliminazione=20unit=C3=A0=20di=20misura?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/misure/actions.php | 25 +++++++++++++++++++------ modules/misure/edit.php | 18 ++++++++++++++++++ 2 files changed, 37 insertions(+), 6 deletions(-) diff --git a/modules/misure/actions.php b/modules/misure/actions.php index 03dca50b1..082468c67 100644 --- a/modules/misure/actions.php +++ b/modules/misure/actions.php @@ -9,14 +9,14 @@ switch (filter('op')) { if (isset($valore)) { if ($dbo->fetchNum('SELECT * FROM `mg_unitamisura` WHERE `valore`='.prepare($valore).' AND `id`!='.prepare($id_record)) == 0) { $dbo->query('UPDATE `mg_unitamisura` SET `valore`='.prepare($valore).' WHERE `id`='.prepare($id_record)); - $_SESSION['infos'][] = tr('Salvataggio completato!'); + $_SESSION['infos'][] = tr('Salvataggio completato.'); } else { - $_SESSION['errors'][] = tr("E' già presente una tipologia di _TYPE_ con lo stesso valore!", [ + $_SESSION['errors'][] = tr("E' già presente una tipologia di _TYPE_ con lo stesso valore.", [ '_TYPE_' => 'unità di misura', ]); } } else { - $_SESSION['errors'][] = tr('Ci sono stati alcuni errori durante il salvataggio!'); + $_SESSION['errors'][] = tr('Ci sono stati alcuni errori durante il salvataggio.'); } break; @@ -38,22 +38,35 @@ switch (filter('op')) { '_TYPE_' => 'unità di misura', ]); } else { - $_SESSION['errors'][] = tr("E' già presente una tipologia di _TYPE_ con lo stesso valore!", [ + $_SESSION['errors'][] = tr("E' già presente una tipologia di _TYPE_ con lo stesso valore.", [ '_TYPE_' => 'unità di misura', ]); } } else { - $_SESSION['errors'][] = tr('Ci sono stati alcuni errori durante il salvataggio!'); + $_SESSION['errors'][] = tr('Ci sono stati alcuni errori durante il salvataggio.'); } break; case 'delete': - if (isset($id_record)) { + + + $righe = $dbo->fetchNum('SELECT id FROM co_righe_documenti WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM dt_righe_ddt WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM or_righe_ordini WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM co_righe2_contratti WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM mg_articoli WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM co_righe_preventivi WHERE um='.prepare($records[0]['valore'])); + + + if (isset($id_record) && empty($righe)) { $dbo->query('DELETE FROM `mg_unitamisura` WHERE `id`='.prepare($id_record)); $_SESSION['infos'][] = tr('Tipologia di _TYPE_ eliminata con successo!', [ '_TYPE_' => 'unità di misura', ]); + }else{ + + $_SESSION['errors'][] = tr('Sono presenti righe collegate a questa unità di misura.'); } break; diff --git a/modules/misure/edit.php b/modules/misure/edit.php index 08b5e409e..411f59564 100644 --- a/modules/misure/edit.php +++ b/modules/misure/edit.php @@ -23,6 +23,24 @@ include_once __DIR__.'/../../core.php'; +fetchNum('SELECT id FROM co_righe_documenti WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM dt_righe_ddt WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM or_righe_ordini WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM co_righe2_contratti WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM mg_articoli WHERE um='.prepare($records[0]['valore']).' + UNION SELECT id FROM co_righe_preventivi WHERE um='.prepare($records[0]['valore'])); + +if (!empty($righe)){ +echo ' +
+ '.tr('Ci sono _NUM_ righe collegate', [ + '_NUM_' => count($righe), + ]).'. +
'; +} +?> +