diff --git a/lib/common.php b/lib/common.php index c399a9988..9f0e7209c 100755 --- a/lib/common.php +++ b/lib/common.php @@ -138,7 +138,7 @@ function discountInfo(Accounting $riga, $mostra_maggiorazione = true) return null; } - $text = ($riga->prezzo_unitario > 0 && $riga->sconto_unitario > 0) || ($riga->prezzo_unitario < 0 && $riga->sconto_unitario < 0) ? tr('sconto _TOT_ _TYPE_') : tr('maggiorazione _TOT__TYPE_'); + $text = ($riga->prezzo_unitario >= 0 && $riga->sconto_unitario > 0) || ($riga->prezzo_unitario < 0 && $riga->sconto_unitario < 0) ? tr('sconto _TOT_ _TYPE_') : tr('maggiorazione _TOT__TYPE_'); $totale = !empty($riga->sconto_percentuale) ? $riga->sconto_percentuale : $riga->sconto_unitario_corrente; return replace($text, [ diff --git a/modules/fatture/row-list.php b/modules/fatture/row-list.php index 558898f9f..ab6eaadea 100755 --- a/modules/fatture/row-list.php +++ b/modules/fatture/row-list.php @@ -268,7 +268,7 @@ echo ' // Individuazione dei totali $imponibile = $fattura->imponibile; -$sconto = $fattura->sconto; +$sconto = -$fattura->sconto; $totale_imponibile = $fattura->totale_imponibile; $iva = $fattura->iva; $totale = $fattura->totale; diff --git a/plugins/importFE/src/FatturaOrdinaria.php b/plugins/importFE/src/FatturaOrdinaria.php index 3f6eb3594..d8fcf32f9 100755 --- a/plugins/importFE/src/FatturaOrdinaria.php +++ b/plugins/importFE/src/FatturaOrdinaria.php @@ -331,9 +331,14 @@ class FatturaOrdinaria extends FatturaElettronica $fattura->refresh(); // Arrotondamenti differenti nella fattura XML + $totale_righe = 0; $dati_riepilogo = $this->getBody()['DatiBeniServizi']['DatiRiepilogo']; if (!empty($dati_riepilogo['ImponibileImporto'])) { $totale_righe = $dati_riepilogo['ImponibileImporto']; + } elseif (is_array($dati_riepilogo)) { + foreach ($dati_riepilogo as $dato) { + $totale_righe += $dato['ImponibileImporto']; + } } else { $totali_righe = array_column($righe, 'PrezzoTotale'); $totale_righe = sum($totali_righe, null, 2);