Aggiunta possibilità di aggiungere ddt anche per fatture di acquisto

Fix temporaneo per campo "Calcola ritenuta d'acconto su" non gestito correttamente per fornitori.
This commit is contained in:
Luca 2018-07-26 10:35:48 +02:00
parent e06e74c60b
commit e0ec46dda9
5 changed files with 21 additions and 12 deletions

View File

@ -15,6 +15,7 @@ if ($module['name'] == 'Fatture di acquisto' || $module['name'] == 'Fatture di v
// Percentuale rivalsa INPS e Percentuale ritenuta d'acconto
if ($options['action'] == 'edit') {
if ($options['dir'] == 'uscita') {
//Luca S. questi campi non dovrebbero essere impostati a 1 di default, ma solo se il fornitore ha effettivamente rivalsa inps o ritenuta
$show_idrivalsainps = 1;
$show_idritenutaacconto = 1;
$show_calcolo_ritenutaacconto = 1;
@ -44,9 +45,11 @@ if ($module['name'] == 'Fatture di acquisto' || $module['name'] == 'Fatture di v
$show_idrivalsainps = 1;
$show_idritenutaacconto = 1;
$show_calcolo_ritenutaacconto = 1;
//Luca S. questi campi non dovrebbero essere definiti all'interno della scheda fornitore?
$idrivalsainps = '';
$idritenutaacconto = '';
//questo campo non andrebbe letto da impostazioni
$calcolo_ritenutaacconto = get_var("Metodologia calcolo ritenuta d'acconto predefinito");
} elseif ($options['dir'] == 'entrata' && $options['op'] == 'addriga' && (get_var('Percentuale rivalsa INPS') != '' || get_var("Percentuale ritenuta d'acconto") != '')) {
if (get_var('Percentuale rivalsa INPS') != '') {
@ -117,7 +120,7 @@ if ($module['name'] == 'Fatture di acquisto' || $module['name'] == 'Fatture di v
if ($show_calcolo_ritenutaacconto == 1) {
echo '
<div class="col-md-4">
{[ "type": "select", "label": "'.tr("Calcola ritenuta d'acconto su").'", "name": "calcolo_ritenutaacconto", "value": "'.$calcolo_ritenutaacconto.'", "values": "list=\"Imponibile\":\"Imponibile\", \"Imponibile + rivalsa inps\":\"Imponibile + rivalsa inps\"", "required": "1" ]}
{[ "type": "select", "label": "'.tr("Calcola ritenuta d'acconto su").'", "name": "calcolo_ritenutaacconto", "value": "'.((empty($calcolo_ritenutaacconto))? 'Imponibile' : $calcolo_ritenutaacconto).'", "values": "list=\"Imponibile\":\"Imponibile\", \"Imponibile + rivalsa inps\":\"Imponibile + rivalsa inps\"", "required": "1" ]}
</div>';
}

View File

@ -6,8 +6,10 @@ $module = Modules::get($id_module);
if ($module['name'] == 'Fatture di vendita') {
$dir = 'entrata';
$module_origin = 'Ddt di vendita';
} else {
$dir = 'uscita';
$module_origin = 'Ddt di acquisto';
}
$record = $dbo->fetchArray('SELECT * FROM co_documenti WHERE id='.prepare($id_record));
@ -15,7 +17,7 @@ $numero = ($record[0]['numero_esterno'] != '') ? $record[0]['numero_esterno'] :
$idconto = $record[0]['idconto'];
$idanagrafica = $record[0]['idanagrafica'];
// Preventivo
// Ddt
echo '
<div class="row">
<div class="col-md-6">
@ -37,6 +39,6 @@ echo '
$('#id_ddt').change( function(){
$('#righeddt').html('<i>Caricamento in corso...</i>');
$('#righeddt').load(globals.rootdir + '/modules/fatture/crea_documento.php?id_module=' + <?php echo Modules::get('Ddt di vendita')['id']; ?> + '&id_record=' + $(this).find('option:selected').val() + '&documento=fattura&op=add_ddt&iddocumento=' + globals.id_record);
$('#righeddt').load(globals.rootdir + '/modules/fatture/crea_documento.php?id_module=' + <?php echo Modules::get($module_origin)['id']; ?> + '&id_record=' + $(this).find('option:selected').val() + '&documento=fattura&op=add_ddt&iddocumento=' + globals.id_record);
});
</script>

View File

@ -17,7 +17,7 @@ $numero = ($record[0]['numero_esterno'] != '') ? $record[0]['numero_esterno'] :
$idconto = $record[0]['idconto'];
$idanagrafica = $record[0]['idanagrafica'];
// Preventivo
// Ordine
echo '
<div class="row">
<div class="col-md-6">

View File

@ -299,14 +299,17 @@ if ($records[0]['stato'] != 'Pagato' && $records[0]['stato'] != 'Emessa') {
<i class="fa fa-plus"></i> Contratto
</a>';
// Lettura ddt
$ddt_query = 'SELECT COUNT(*) AS tot FROM dt_ddt WHERE idanagrafica='.prepare($records[0]['idanagrafica']).' AND idstatoddt IN (SELECT id FROM dt_statiddt WHERE descrizione IN(\'Bozza\', \'Evaso\', \'Parzialmente evaso\', \'Parzialmente fatturato\')) AND idtipoddt IN (SELECT id FROM dt_tipiddt WHERE dir='.prepare($dir).') AND dt_ddt.id IN (SELECT idddt FROM dt_righe_ddt WHERE dt_righe_ddt.idddt = dt_ddt.id AND (qta - qta_evasa) > 0)';
$ddt = $dbo->fetchArray($ddt_query)[0]['tot'];
echo '
<a class="btn btn-sm btn-primary'.(!empty($ddt) ? '' : ' disabled').'" data-href="'.$rootdir.'/modules/fatture/add_ddt.php?id_module='.$id_module.'&id_record='.$id_record.'" data-toggle="tooltip" data-title="Aggiungi ddt" data-target="#bs-popup">
<i class="fa fa-plus"></i> Ddt
</a>';
}
// Lettura ddt
$ddt_query = 'SELECT COUNT(*) AS tot FROM dt_ddt WHERE idanagrafica='.prepare($records[0]['idanagrafica']).' AND idstatoddt IN (SELECT id FROM dt_statiddt WHERE descrizione IN(\'Bozza\', \'Evaso\', \'Parzialmente evaso\', \'Parzialmente fatturato\')) AND idtipoddt IN (SELECT id FROM dt_tipiddt WHERE dir='.prepare($dir).') AND dt_ddt.id IN (SELECT idddt FROM dt_righe_ddt WHERE dt_righe_ddt.idddt = dt_ddt.id AND (qta - qta_evasa) > 0)';
$ddt = $dbo->fetchArray($ddt_query)[0]['tot'];
echo '
<a class="btn btn-sm btn-primary'.(!empty($ddt) ? '' : ' disabled').'" data-href="'.$rootdir.'/modules/fatture/add_ddt.php?id_module='.$id_module.'&id_record='.$id_record.'" data-toggle="tooltip" data-title="Aggiungi ddt" data-target="#bs-popup">
<i class="fa fa-plus"></i> Ddt
</a>';
// Lettura ordini
$ordini_query = 'SELECT COUNT(*) AS tot FROM or_ordini WHERE idanagrafica='.prepare($records[0]['idanagrafica']).' AND idstatoordine IN (SELECT id FROM or_statiordine WHERE descrizione IN(\'Bozza\', \'Evaso\', \'Parzialmente evaso\', \'Parzialmente fatturato\')) AND idtipoordine=(SELECT id FROM or_tipiordine WHERE dir='.prepare($dir).') AND or_ordini.id IN (SELECT idordine FROM or_righe_ordini WHERE or_righe_ordini.idordine = or_ordini.id AND (qta - qta_evasa) > 0)';

View File

@ -23,5 +23,6 @@ return '
<p>'.(!empty($f_capsoc) ? tr('Cap.Soc.').': '.$f_capsoc : '').'</p>
<p>'.(!empty($f_telefono) ? tr('Tel').': '.$f_telefono : '').'</p>
<p>'.(!empty($f_email) ? tr('Email').': '.$f_email : '').'</p>
<p>'.(!empty($f_sitoweb) ? tr('Web').': '.$f_sitoweb : '').'</p>
</div>
</div>';