1
0
mirror of https://github.com/devcode-it/openstamanager.git synced 2025-03-30 19:10:14 +02:00

Aggiunta percentuale_imponibile su cui applicare il calcolo della ritenuta

This commit is contained in:
Luca 2019-02-01 18:46:49 +01:00
parent 500bd7cade
commit 84f69bba6b
5 changed files with 40 additions and 15 deletions

View File

@ -6,11 +6,12 @@ switch (filter('op')) {
case 'update':
$descrizione = filter('descrizione');
$percentuale = filter('percentuale');
$indetraibile = filter('indetraibile');
$percentuale_imponibile = filter('percentuale_imponibile');
if (isset($descrizione) && isset($percentuale) && isset($indetraibile)) {
if (isset($descrizione) && isset($percentuale) && isset($percentuale_imponibile)) {
if ($dbo->fetchNum('SELECT * FROM `co_ritenutaacconto` WHERE `descrizione`='.prepare($descrizione).' AND `id`!='.prepare($id_record)) == 0) {
$dbo->query('UPDATE `co_ritenutaacconto` SET `descrizione`='.prepare($descrizione).', `percentuale`='.prepare($percentuale).', `indetraibile`='.prepare($indetraibile).' WHERE `id`='.prepare($id_record));
$dbo->query('UPDATE `co_ritenutaacconto` SET `descrizione`='.prepare($descrizione).', `percentuale`='.prepare($percentuale).', `percentuale_imponibile`='.prepare($percentuale_imponibile).' WHERE `id`='.prepare($id_record));
flash()->info(tr('Salvataggio completato!'));
} else {
flash()->error(tr("E' già presente una tipologia di _TYPE_ con la stessa descrizione!", [
@ -26,11 +27,11 @@ switch (filter('op')) {
case 'add':
$descrizione = filter('descrizione');
$percentuale = filter('percentuale');
$indetraibile = filter('indetraibile');
$percentuale_imponibile = filter('percentuale_imponibile');
if (isset($descrizione) && isset($percentuale) && isset($indetraibile)) {
if (isset($descrizione) && isset($percentuale) && isset($percentuale_imponibile)) {
if ($dbo->fetchNum('SELECT * FROM `co_ritenutaacconto` WHERE `descrizione`='.prepare($descrizione)) == 0) {
$dbo->query('INSERT INTO `co_ritenutaacconto` (`descrizione`, `percentuale`, `indetraibile`) VALUES ('.prepare($descrizione).', '.prepare($percentuale).', '.prepare($indetraibile).')');
$dbo->query('INSERT INTO `co_ritenutaacconto` (`descrizione`, `percentuale`, `percentuale_imponibile`) VALUES ('.prepare($descrizione).', '.prepare($percentuale).', '.prepare($percentuale_imponibile).')');
$id_record = $dbo->lastInsertedID();
flash()->info(tr('Aggiunta nuova tipologia di _TYPE_', [

View File

@ -2,7 +2,17 @@
include_once __DIR__.'/../../core.php';
?><form action="" method="post" id="edit-form">
// Presenza di documenti associati
if ($record['doc_associati'] > 0) {
echo '
<div class="alert alert-warning">'.tr('Non puoi eliminare questa ritenuta.').' '.tr('Ci sono _NUM_ documenti associati.', [
'_NUM_' => $record['doc_associati'],
]).'</div>';
}
?>
<form action="" method="post" id="edit-form">
<input type="hidden" name="backto" value="record-edit">
<input type="hidden" name="op" value="update">
@ -25,7 +35,7 @@ include_once __DIR__.'/../../core.php';
</div>
<div class="col-md-6">
{[ "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('Percentuale imponibile'); ?>", "name": "percentuale_imponibile", "value": "$percentuale_imponibile$", "help": "<?php echo tr('Percentuale imponibile sui cui applicare il calcolo della ritenuta'); ?>", "icon-after": "<i class=\"fa fa-percent\"></i>" ]}
</div>
</div>
</div>
@ -33,6 +43,12 @@ include_once __DIR__.'/../../core.php';
</form>
<?php
// Presenza di documenti associati
if ($record['doc_associati'] == 0) {
echo '
<a class="btn btn-danger ask" data-backto="record-list">
<i class="fa fa-trash"></i> <?php echo tr('Elimina'); ?>
</a>
<i class="fa fa-trash"></i> '.tr('Elimina').'
</a>';
}

View File

@ -3,5 +3,5 @@
include_once __DIR__.'/../../core.php';
if (isset($id_record)) {
$record = $dbo->fetchOne('SELECT * FROM `co_ritenutaacconto` WHERE id='.prepare($id_record));
$record = $dbo->fetchOne('SELECT *, (SELECT COUNT(idritenutaacconto) FROM co_documenti WHERE co_documenti.idritenutaacconto = '.prepare($id_record).') AS doc_associati FROM `co_ritenutaacconto` WHERE id='.prepare($id_record));
}

View File

@ -386,7 +386,7 @@ class FatturaElettronica
$result = [
'IdTrasmittente' => [
'IdPaese' => $anagrafica->nazione->iso2,
'IdCodice' => (!empty($anagrafica['codice_fiscale'])) ? $anagrafica['codice_fiscale'] : $anagrafica['piva'],
'IdCodice' => (!empty($anagrafica['codice_fiscale'])) ? $anagrafica['codice_fiscale'] : str_replace($anagrafica->nazione->iso2, '', $anagrafica['piva']),
]
];
@ -425,11 +425,12 @@ class FatturaElettronica
// Partita IVA (obbligatoria se presente)
if (!empty($anagrafica['piva'])) {
if (!empty($anagrafica->nazione->iso2)) {
if (!empty($anagrafica->nazione->iso2)) {
$result['IdFiscaleIVA']['IdPaese'] = $anagrafica->nazione->iso2;
}
$result['IdFiscaleIVA']['IdCodice'] = $anagrafica['piva'];
$result['IdFiscaleIVA']['IdCodice'] = str_replace($anagrafica->nazione->iso2, '', $anagrafica['piva']);
}
// Codice fiscale

View File

@ -80,3 +80,10 @@ UPDATE `zz_views` SET `query` = 'IF((SELECT GROUP_CONCAT(DISTINCT `name` SEPARAT
-- Limitato il controllo numeri fattura duplicati all'anno in corso
UPDATE `zz_views` SET `query` = 'IF((SELECT COUNT(t.numero_esterno) FROM co_documenti AS t WHERE t.numero_esterno = co_documenti.numero_esterno AND t.numero_esterno != '''' AND t.id_segment = co_documenti.id_segment AND idtipodocumento IN (SELECT id FROM co_tipidocumento WHERE dir = ''entrata'') AND t.data >= ''|period_start|'' AND t.data <= ''|period_end|'' AND YEAR(t.data) = YEAR(co_documenti.data) ) > 1, ''red'', '''') ' WHERE `zz_views`.`name` = '_bg_' AND id_module = (SELECT id FROM zz_modules WHERE name = 'Fatture di vendita');
-- Fornitore terzo intermediario abilitato all'invio della fattura elettronica
UPDATE `zz_settings` SET `help` = 'Fornitore, mio intermediario abilitato all\'invio della fattura elettronica (es. Aruba, Teamsystem ecc...)' WHERE `zz_settings`.`nome` = 'Terzo intermediario';
-- Aggiunta percentuale_imponibile su cui applicare il calcolo della ritenuta
ALTER TABLE `co_ritenutaacconto` ADD `percentuale_imponibile` DECIMAL(5,2) NOT NULL AFTER `esente`;