Spostato il controllo per elimnazione dello stato intervento dal campo "default" al campo "can_delete"

This commit is contained in:
Luca 2018-02-16 16:01:54 +01:00
parent 33d023d646
commit a690141e66
3 changed files with 11 additions and 13 deletions

View File

@ -155,7 +155,7 @@ if (empty($records[0]['firma_file'])) {
</div>
<div class="col-md-4">
{[ "type": "select", "label": "<?php echo tr('Stato'); ?>", "name": "idstatointervento", "required": 1, "values": "query=SELECT idstatointervento AS id, descrizione, colore AS _bgcolor_ FROM in_statiintervento", "value": "$idstatointervento$" ]}
{[ "type": "select", "label": "<?php echo tr('Stato'); ?>", "name": "idstatointervento", "required": 1, "values": "query=SELECT idstatointervento AS id, descrizione, colore AS _bgcolor_ FROM in_statiintervento WHERE deleted = 0", "value": "$idstatointervento$" ]}
</div>
<div class="col-md-4">

View File

@ -10,8 +10,8 @@ switch (post('op')) {
$query = 'UPDATE in_statiintervento SET colore='.prepare($colore).' WHERE idstatointervento='.prepare($id_record);
$dbo->query($query);
// Aggiorna descrizione solo se non è uno stato di default
$query = 'UPDATE in_statiintervento SET descrizione='.prepare($descrizione).' WHERE idstatointervento='.prepare($id_record).' AND `default`=0';
// Aggiorna descrizione
$query = 'UPDATE in_statiintervento SET descrizione='.prepare($descrizione).' WHERE idstatointervento='.prepare($id_record);
$dbo->query($query);
$_SESSION['infos'][] = tr('Informazioni salvate correttamente.');
@ -23,27 +23,26 @@ switch (post('op')) {
$descrizione = post('descrizione');
$colore = post('colore');
//controllo idstatointervento che non sia duplicato
if (count($dbo->fetchArray('SELECT idstatointervento FROM in_statiintervento WHERE idstatointervento='.prepare($idstatointervento).''))>0){
$_SESSION['errors'][] = tr('Stato di intervento già esistente.');
}else{
$query = 'INSERT INTO in_statiintervento(idstatointervento, descrizione, colore) VALUES ('.prepare($idstatointervento).', '.prepare($descrizione).', '.prepare($colore).')';
$dbo->query($query);
$id_record = $idstatointervento;
$_SESSION['infos'][] = tr('Nuovo stato di intervento aggiunto.');
}
break;
case 'delete':
$query = 'UPDATE in_statiintervento SET deleted = 1 WHERE idstatointervento='.prepare($id_record).' AND `default`=0';
//scelgo se settare come eliminato o cancellare direttamente la riga se non è stato utilizzato negli interventi
if (count($dbo->fetchArray('SELECT id FROM in_interventi WHERE idstatointervento='.prepare($id_record).''))>0){
$query = 'UPDATE in_statiintervento SET deleted = 1 WHERE idstatointervento='.prepare($id_record).' AND `can_delete`=1';
}else{
$query = 'DELETE FROM in_statiintervento WHERE idstatointervento='.prepare($id_record).' AND `can_delete`=1';
}
$dbo->query($query);

View File

@ -57,7 +57,6 @@ ALTER TABLE `in_statiintervento` ADD `deleted` BOOLEAN NOT NULL DEFAULT FALSE AF
-- Aggiorno query modulo stati intervento
UPDATE `zz_modules` SET `options` = 'SELECT |select| FROM `in_statiintervento` WHERE 1=1 AND deleted = 0 HAVING 2=2' WHERE `zz_modules`.`name` = 'Stati di intervento';
-- Aggiungo il flag can_delete ed elimino il flag `default` in quanto non serve più
ALTER TABLE `in_statiintervento` ADD `can_delete` BOOLEAN NOT NULL DEFAULT TRUE AFTER `default`;
ALTER TABLE `in_statiintervento` DROP `default`;