Fix minori gestione iva

This commit is contained in:
Luca 2018-11-14 00:39:51 +01:00
parent 4c6db9c2dc
commit fee02fa8ff
3 changed files with 54 additions and 22 deletions

View File

@ -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',
]));
}

View File

@ -7,23 +7,33 @@ include_once __DIR__.'/../../core.php';
<input type="hidden" name="backto" value="record-edit">
<div class="row">
<div class="col-md-12">
<div class="col-md-8">
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1 ]}
</div>
<div class="col-md-4">
{[ "type": "text", "label": "<?php echo tr('Codice'); ?>", "name": "codice", "class":"alphanumeric-mask", "maxlength": 10 ]}
</div>
</div>
<div class="row">
<div class="col-md-4">
<div class="col-md-6">
{[ "type": "checkbox", "label": "<?php echo tr('Esente'); ?>", "name": "esente", "id": "esente-add", "value": "$esente$" ]}
</div>
<div class="col-md-4">
<div class="col-md-6">
{[ "type": "number", "label": "<?php echo tr('Percentuale'); ?>", "name": "percentuale", "id": "percentuale-add", "icon-after": "<i class=\"fa fa-percent\"></i>" ]}
</div>
<div class="col-md-4">
</div>
<div class="row">
<div class="col-md-6">
{[ "type": "number", "label": "<?php echo tr('Indetraibile'); ?>", "name": "indetraibile", "icon-after": "<i class=\"fa fa-percent\"></i>" ]}
</div>
<div class="col-md-6">
{[ "type": "select", "label": "<?php echo tr('Codice Natura (Fatturazione Elettronica)'); ?>", "name": "codice_natura_fe", "values": "query=SELECT codice as id, CONCAT(codice, ' - ', descrizione) AS descrizione FROM fe_natura" ]}
</div>
</div>
<!-- PULSANTI -->
@ -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();
}
});
});

View File

@ -2,6 +2,13 @@
include_once __DIR__.'/../../core.php';
if (!$record['default']) {
$attr = '';
} else {
$attr = 'readonly';
echo '<div class="alert alert-warning">'.tr('Alcune impostazioni non possono essere modificate.').'</div>';
}
$esigibilita = [
[
'id' => 'I',
@ -36,29 +43,29 @@ $esigibilita = [
<div class="row">
<div class="col-md-4">
{[ "type": "checkbox", "label": "<?php echo tr('Esente'); ?>", "name": "esente", "id": "esente-edit", "value": "$esente$"]}
{[ "type": "checkbox", "label": "<?php echo tr('Esente'); ?>", "name": "esente", "id": "esente-edit", "value": "$esente$", "extra": "<?php echo $attr; ?>"]}
</div>
<div class="col-md-4">
{[ "type": "number", "label": "<?php echo tr('Percentuale'); ?>", "name": "percentuale", "id": "percentuale-edit", "value": "$percentuale$", "icon-after": "<i class=\"fa fa-percent\"></i>", "disabled": <?php echo intval($record['esente']); ?> ]}
{[ "type": "number", "label": "<?php echo tr('Percentuale'); ?>", "name": "percentuale", "id": "percentuale-edit", "value": "$percentuale$", "icon-after": "<i class=\"fa fa-percent\"></i>", "disabled": <?php echo intval($record['esente']); ?>, "extra": "<?php echo $attr; ?>" ]}
</div>
<div class="col-md-4">
{[ "type": "number", "label": "<?php echo tr('Indetraibile'); ?>", "name": "indetraibile", "value": "$indetraibile$", "icon-after": "<i class=\"fa fa-percent\"></i>" ]}
{[ "type": "number", "label": "<?php echo tr('Indetraibile'); ?>", "name": "indetraibile", "value": "$indetraibile$", "icon-after": "<i class=\"fa fa-percent\"></i>", "extra": "<?php echo $attr; ?>" ]}
</div>
</div>
<div class="row">
<div class="col-md-4">
{[ "type": "text", "label": "<?php echo tr('Codice'); ?>", "name": "codice", "value": "$codice$" ]}
{[ "type": "text", "label": "<?php echo tr('Codice'); ?>", "name": "codice", "value": "$codice$", "class":"alphanumeric-mask", "maxlength": 10, "extra": "<?php echo $attr; ?>" ]}
</div>
<div class="col-md-4">
{[ "type": "select", "label": "<?php echo tr('Codice Natura (Fatturazione Elettronica)'); ?>", "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": "<?php echo tr('Codice Natura (Fatturazione Elettronica)'); ?>", "name": "codice_natura_fe", "value": "$codice_natura_fe$", "required": <?php echo intval($record['esente']); ?>, "values": "query=SELECT codice as id, CONCAT(codice, ' - ', descrizione) AS descrizione FROM fe_natura", "extra": "<?php echo $attr; ?>" ]}
</div>
<div class="col-md-4">
{[ "type": "select", "label": "<?php echo tr('Esigibilità (Fatturazione Elettronica)'); ?>", "name": "esigibilita", "value": "$esigibilita$", "values": <?php echo json_encode($esigibilita); ?>, "required": 1 ]}
{[ "type": "select", "label": "<?php echo tr('Esigibilità (Fatturazione Elettronica)'); ?>", "name": "esigibilita", "value": "$esigibilita$", "values": <?php echo json_encode($esigibilita); ?>, "required": 1, "extra": "<?php echo $attr; ?>" ]}
</div>
</div>
@ -72,9 +79,16 @@ $esigibilita = [
</form>
<a class="btn btn-danger ask" data-backto="record-list">
<i class="fa fa-trash"></i> <?php echo tr('Elimina'); ?>
</a>
<?php
// Record eliminabile solo se permesso
if (!$record['default']) {
?>
<a class="btn btn-danger ask" data-backto="record-list">
<i class="fa fa-trash"></i> <?php echo tr('Elimina'); ?>
</a>
<?php
}
?>
<script>
$(document).ready(function(){
@ -83,8 +97,11 @@ $(document).ready(function(){
if (checkbox.val() == 1) {
$("#percentuale-edit").prop("disabled", true);
$("#codice_natura_fe").prop("required", true);
} else {
$("#percentuale-edit").prop("disabled", false);
$("#codice_natura_fe").prop("required", false);
$("#codice_natura_fe").val("").change();
}
});
});