diff --git a/modules/iva/actions.php b/modules/iva/actions.php index 0ae1b0adc..95c2d9830 100644 --- a/modules/iva/actions.php +++ b/modules/iva/actions.php @@ -10,7 +10,7 @@ switch (filter('op')) { $esente = post('esente'); $percentuale = empty($esente) ? post('percentuale') : 0; - if ($dbo->fetchNum('SELECT * FROM `co_iva` WHERE (`descrizione` = '.prepare($descrizione).' OR `codice` = '.prepare($codice).') AND `id` != '.prepare($id_record)) == 0) { + if ($dbo->fetchNum('SELECT * FROM `co_iva` WHERE (`descrizione` = '.prepare($descrizione).' AND `codice` = '.prepare($codice).') AND `id` != '.prepare($id_record)) == 0) { $codice_natura = post('codice_natura_fe') ? : null; $esigibilita = post('esigibilita'); @@ -27,12 +27,12 @@ switch (filter('op')) { // Messaggio di avvertenza if ($codice_natura == 'N6' && $esigibilita == 'S') { - flash()->warning(tr('Combinazione di natura IVA N6 ed esigibilità non compatibile!')); + flash()->warning(tr('Combinazione di natura IVA N6 ed esigibilità non compatibile')); } flash()->info(tr('Salvataggio completato!')); } else { - flash()->error(tr("E' già presente una tipologia di _TYPE_ con la stesse caratteristiche!", [ + flash()->error(tr("E' già presente una tipologia di _TYPE_ con lo stesso codice e descrizione", [ '_TYPE_' => 'IVA', ])); } @@ -40,14 +40,16 @@ switch (filter('op')) { case 'add': $descrizione = post('descrizione'); - + $codice = post('codice'); $esente = post('esente'); $percentuale = empty($esente) ? post('percentuale') : 0; - - if ($dbo->fetchNum('SELECT * FROM `co_iva` WHERE `descrizione`='.prepare($descrizione)) == 0) { + $codice_natura = post('codice_natura_fe') ? : null; + if ($dbo->fetchNum('SELECT * FROM `co_iva` WHERE `descrizione` = '.prepare($descrizione).' AND `codice` = '.prepare($codice)) == 0) { $dbo->insert('co_iva', [ 'descrizione' => $descrizione, 'esente' => $esente, + 'codice' => $codice, + 'codice_natura_fe' => $codice_natura, 'percentuale' => $percentuale, 'indetraibile' => post('indetraibile'), ]); @@ -57,7 +59,7 @@ switch (filter('op')) { '_TYPE_' => 'IVA', ])); } else { - flash()->error(tr("E' già presente una tipologia di _TYPE_ con la stessa descrizione!", [ + flash()->error(tr("E' già presente una tipologia di _TYPE_ con lo stesso codice e descrizione", [ '_TYPE_' => 'IVA', ])); } @@ -68,7 +70,7 @@ switch (filter('op')) { if (isset($id_record)) { $dbo->query('UPADTE `co_iva` SET deleted_at = NOW() WHERE `id`='.prepare($id_record)); - flash()->info(tr('Tipologia di _TYPE_ eliminata con successo!', [ + flash()->info(tr('Tipologia di _TYPE_ eliminata con successo', [ '_TYPE_' => 'IVA', ])); } diff --git a/modules/iva/add.php b/modules/iva/add.php index 7aba1419b..4fcfbeae8 100644 --- a/modules/iva/add.php +++ b/modules/iva/add.php @@ -7,23 +7,33 @@ include_once __DIR__.'/../../core.php';
-
+
{[ "type": "text", "label": "", "name": "descrizione", "required": 1 ]}
+ +
+ {[ "type": "text", "label": "", "name": "codice", "class":"alphanumeric-mask", "maxlength": 10 ]} +
-
+
{[ "type": "checkbox", "label": "", "name": "esente", "id": "esente-add", "value": "$esente$" ]}
-
+
{[ "type": "number", "label": "", "name": "percentuale", "id": "percentuale-add", "icon-after": "" ]}
- -
+
+
+
{[ "type": "number", "label": "", "name": "indetraibile", "icon-after": "" ]}
+ +
+ {[ "type": "select", "label": "", "name": "codice_natura_fe", "values": "query=SELECT codice as id, CONCAT(codice, ' - ', descrizione) AS descrizione FROM fe_natura" ]} +
+
@@ -41,8 +51,11 @@ $(document).ready(function(){ if (checkbox.val() == 1) { $("#bs-popup #percentuale-add").prop("disabled", true); + $("#bs-popup #codice_natura_fe").prop("required", true); } else { $("#bs-popup #percentuale-add").prop("disabled", false); + $("#bs-popup #codice_natura_fe").prop("required", false); + $("#bs-popup #codice_natura_fe").val("").change(); } }); }); diff --git a/modules/iva/edit.php b/modules/iva/edit.php index dab116f48..60e9f07ea 100644 --- a/modules/iva/edit.php +++ b/modules/iva/edit.php @@ -2,6 +2,13 @@ include_once __DIR__.'/../../core.php'; +if (!$record['default']) { + $attr = ''; +} else { + $attr = 'readonly'; + echo '
'.tr('Alcune impostazioni non possono essere modificate.').'
'; +} + $esigibilita = [ [ 'id' => 'I', @@ -36,29 +43,29 @@ $esigibilita = [
- {[ "type": "checkbox", "label": "", "name": "esente", "id": "esente-edit", "value": "$esente$"]} + {[ "type": "checkbox", "label": "", "name": "esente", "id": "esente-edit", "value": "$esente$", "extra": ""]}
- {[ "type": "number", "label": "", "name": "percentuale", "id": "percentuale-edit", "value": "$percentuale$", "icon-after": "", "disabled": ]} + {[ "type": "number", "label": "", "name": "percentuale", "id": "percentuale-edit", "value": "$percentuale$", "icon-after": "", "disabled": , "extra": "" ]}
- {[ "type": "number", "label": "", "name": "indetraibile", "value": "$indetraibile$", "icon-after": "" ]} + {[ "type": "number", "label": "", "name": "indetraibile", "value": "$indetraibile$", "icon-after": "", "extra": "" ]}
- {[ "type": "text", "label": "", "name": "codice", "value": "$codice$" ]} + {[ "type": "text", "label": "", "name": "codice", "value": "$codice$", "class":"alphanumeric-mask", "maxlength": 10, "extra": "" ]}
- {[ "type": "select", "label": "", "name": "codice_natura_fe", "value": "$codice_natura_fe$", "values": "query=SELECT codice as id, CONCAT(codice, ' - ', descrizione) AS descrizione FROM fe_natura" ]} + {[ "type": "select", "label": "", "name": "codice_natura_fe", "value": "$codice_natura_fe$", "required": , "values": "query=SELECT codice as id, CONCAT(codice, ' - ', descrizione) AS descrizione FROM fe_natura", "extra": "" ]}
- {[ "type": "select", "label": "", "name": "esigibilita", "value": "$esigibilita$", "values": , "required": 1 ]} + {[ "type": "select", "label": "", "name": "esigibilita", "value": "$esigibilita$", "values": , "required": 1, "extra": "" ]}
@@ -72,9 +79,16 @@ $esigibilita = [ - - - + + + + +