Fix divisione con php8.0

This commit is contained in:
valentina 2024-08-06 12:26:37 +02:00
parent 6c238052a9
commit 276310b13f
16 changed files with 25 additions and 25 deletions

View File

@ -78,7 +78,7 @@ switch (post('op')) {
$new_prezzo_vendita = $new_prezzo_vendita + ($new_prezzo_vendita * $aliquota_iva / 100);
}
$new_prezzo_vendita = ceil($new_prezzo_vendita / $arrotondamento) * $arrotondamento;
$new_prezzo_vendita = ceil($new_prezzo_vendita / ($arrotondamento?:1)) * $arrotondamento;
}
if (in_array($tipologia, ['ivato', '']) && !$prezzi_ivati) {

View File

@ -149,7 +149,7 @@ foreach ($righe as $riga) {
foreach ($evasione_bar as $table => $color) {
$righe_ev = $dbo->table($table)->where('original_id', $riga->id)->where('original_type', $riga::class)->get();
if ($righe_ev->count() > 0) {
$perc_ev = $righe_ev->sum('qta') * 100 / $riga->qta;
$perc_ev = $righe_ev->sum('qta') * 100 / ($riga->qta?:1);
echo '
<div class="progress-bar progress-bar-'.$color.'" style="width:'.$perc_ev.'%"></div>';
}

View File

@ -170,7 +170,7 @@ foreach ($righe as $riga) {
foreach ($evasione_bar as $table => $color) {
$righe_ev = $dbo->table($table)->where('original_id', $riga->id)->where('original_type', $riga::class)->get();
if ($righe_ev->count() > 0) {
$perc_ev = $righe_ev->sum('qta') * 100 / $riga->qta;
$perc_ev = $righe_ev->sum('qta') * 100 / ($riga->qta?:1);
if ($perc_ev > 0) {
echo '
<div class="progress-bar progress-bar-'.$color.'" style="width:'.$perc_ev.'%"></div>';

View File

@ -56,7 +56,7 @@ if ($intervento->id_contratto) {
$contratto = Contratto::find($intervento->id_contratto);
$ore_erogate = $contratto->interventi->sum('ore_totali');
$ore_previste = $contratto->getRighe()->where('um', 'ore')->sum('qta');
$perc_ore = $ore_previste != 0 ? ($ore_erogate * 100) / $ore_previste : 0;
$perc_ore = $ore_previste != 0 ? ($ore_erogate * 100) / ($ore_previste?:1) : 0;
if ($perc_ore < 75) {
$color = 'success';
} elseif ($perc_ore <= 100) {

View File

@ -403,7 +403,7 @@ class Sessione extends Model
*/
public function getMarginePercentualeAttribute()
{
return (1 - ($this->spesa / $this->totale_imponibile)) * 100;
return (1 - ($this->spesa / ($this->totale_imponibile?:1))) * 100;
}
/**
@ -413,7 +413,7 @@ class Sessione extends Model
*/
public function getRicaricoPercentualeAttribute()
{
return $this->imponibile ? (($this->imponibile / $this->spesa) - 1) * 100 : 0;
return $this->imponibile ? (($this->imponibile / ($this->spesa?:1)) - 1) * 100 : 0;
}
public function getIvaIndetraibileAttribute()

View File

@ -223,7 +223,7 @@ foreach ($righe as $riga) {
foreach ($evasione_bar as $table => $color) {
$righe_ev = $dbo->table($table)->where('original_id', $riga->id)->where('original_type', $riga::class)->get();
if ($righe_ev->count() > 0) {
$perc_ev = $righe_ev->sum('qta') * 100 / $riga->qta;
$perc_ev = $righe_ev->sum('qta') * 100 / ($riga->qta?:1);
if ($perc_ev > 0) {
echo '
<div class="progress-bar progress-bar-'.$color.'" style="width:'.$perc_ev.'%"></div>';

View File

@ -179,7 +179,7 @@ foreach ($righe as $key => $riga) {
foreach ($evasione_bar as $table => $color) {
$righe_ev = $dbo->table($table)->where('original_id', $riga->id)->where('original_type', $riga::class)->get();
if ($righe_ev->count() > 0) {
$perc_ev = $righe_ev->sum('qta') * 100 / $riga->qta;
$perc_ev = $righe_ev->sum('qta') * 100 / ($riga->qta?:1);
if ($perc_ev > 0) {
echo '
<div class="progress-bar progress-bar-'.$color.'" style="width:'.$perc_ev.'%"></div>';

View File

@ -57,9 +57,9 @@ foreach ($impianti_collegati as $impianto) {
}
}
$percentuale_completati = $n_impianti ? round(($impianti_completati * 100) / $n_impianti) : 0;
$percentuale_non_completati = $n_impianti ? round(($impianti_non_completati * 100) / $n_impianti) : 0;
$percentuale_non_previsti = $n_impianti ? round(($impianti_non_previsti * 100) / $n_impianti) : 0;
$percentuale_completati = $n_impianti ? round(($impianti_completati * 100) / ($n_impianti?:1)) : 0;
$percentuale_non_completati = $n_impianti ? round(($impianti_non_completati * 100) / ($n_impianti?:1)) : 0;
$percentuale_non_previsti = $n_impianti ? round(($impianti_non_previsti * 100) / ($n_impianti?:1)) : 0;
echo '
<div class="row">

View File

@ -484,7 +484,7 @@ if (!empty($righe)) {
if ($tipo_sconto == '%') {
$sconto_calcolato = calcola_sconto([
'sconto' => $sconto_riga,
'prezzo' => $sconto_unitario ? $prezzo_unitario - ($tot_sconto_calcolato / $qta) : $prezzo_unitario,
'prezzo' => $sconto_unitario ? $prezzo_unitario - ($tot_sconto_calcolato / ($qta?:1)) : $prezzo_unitario,
'tipo' => 'PRC',
'qta' => $qta,
]);

View File

@ -155,7 +155,7 @@ class FatturaOrdinaria extends FatturaElettronica
$differenza_iva = round((float) $riepilogo['Imposta'] - $totale_imposta[$riepilogo['AliquotaIVA']], 2);
if ($differenza_iva) {
$valore = $differenza_iva * 100 / $riepilogo['AliquotaIVA'];
$valore = $differenza_iva * 100 / ($riepilogo['AliquotaIVA']?:1);
}
if ($valore != 0) {
@ -353,8 +353,8 @@ class FatturaOrdinaria extends FatturaElettronica
// Nel caso il prezzo sia negativo viene gestito attraverso l'inversione della quantità (come per le note di credito)
// TODO: per migliorare la visualizzazione, sarebbe da lasciare negativo il prezzo e invertire gli sconti.
if (!empty($articolo->um) && !empty($articolo->um_secondaria) && !empty((float) $articolo->fattore_um_secondaria) && $riga['UnitaMisura'] == $articolo->um_secondaria) {
$qta = (($riga['Quantita'] ?: 1) / $articolo->fattore_um_secondaria);
$prezzo = $totale_righe_riepilogo > 0 ? $totale_righe_riepilogo / $qta : -($totale_righe_riepilogo / $qta);
$qta = (($riga['Quantita'] ?: 1) / ($articolo->fattore_um_secondaria?:1));
$prezzo = $totale_righe_riepilogo > 0 ? $totale_righe_riepilogo / ($qta?:1) : -($totale_righe_riepilogo / ($qta?:1));
} else {
$qta = ($riga['Quantita'] ?: 1);
$prezzo = $totale_righe_riepilogo > 0 ? $riga['PrezzoUnitario'] : -$riga['PrezzoUnitario'];
@ -399,13 +399,13 @@ class FatturaOrdinaria extends FatturaElettronica
if ($tipo_sconto == 'PRC') {
$sconto_calcolato = calcola_sconto([
'sconto' => $sconto_riga,
'prezzo' => $sconto_unitario ? $obj->prezzo_unitario - ($tot_sconto_calcolato / $obj->qta) : $obj->prezzo_unitario,
'prezzo' => $sconto_unitario ? $obj->prezzo_unitario - ($tot_sconto_calcolato / ($obj->qta?:1)) : $obj->prezzo_unitario,
'tipo' => 'PRC',
'qta' => $obj->qta,
]);
if ($tipo == 'PRC') {
$tot_sconto = $sconto_calcolato * 100 / $obj->imponibile;
$tot_sconto = $sconto_calcolato * 100 / ($obj->imponibile?:1);
} else {
$tot_sconto = $sconto_calcolato;
}
@ -532,7 +532,7 @@ class FatturaOrdinaria extends FatturaElettronica
$nome = ucwords(strtolower($m[2]));
$percentuale = $m[3];
$totale_previsto = round($importo / $percentuale * 100, 2);
$totale_previsto = round($importo / ($percentuale?:1) * 100, 2);
$percentuale_importo = round($totale_previsto / ($totale ?: 1) * 100, 2);
$ritenuta_contributi = $database->fetchOne('SELECT * FROM`co_ritenuta_contributi` WHERE `percentuale` = '.prepare($percentuale).' AND `percentuale_imponibile` = '.prepare($percentuale_importo));
@ -633,7 +633,7 @@ class FatturaOrdinaria extends FatturaElettronica
$totale = sum($totali);
}
$totale_previsto = round($importo * 100 / $percentuale, 2);
$totale_previsto = round($importo * 100 / ($percentuale?:1), 2);
$percentuale_importo = round($totale_previsto / ($totale ?: 1) * 100, 2);
$percentuale_importo = min($percentuale_importo, 100); // Nota: Fix per la percentuale che superava il 100% nel caso di importi con Rivalsa compresa

View File

@ -86,7 +86,7 @@ class FatturaSemplificata extends FatturaElettronica
$prezzo = $importo - $imposta;
$aliquota = !empty($prezzo) ? $imposta / $prezzo * 100 : 0;
$aliquota = !empty($prezzo) ? $imposta / ($prezzo?:1) * 100 : 0;
$result[$index]['AliquotaIVA'] = $aliquota;
}
}

View File

@ -118,7 +118,7 @@ switch ($operazione) {
if ($cadenza_fatturazione == 'Fine') {
$fine = Carbon\Carbon::parse($fine)->endOfMonth()->format('Y-m-d');
}
$prezzo_unitario = setting('Utilizza prezzi di vendita comprensivi di IVA') ? ((($r->subtotale - $r->sconto) + $r->iva) / $r->qta) : (($r->subtotale - $r->sconto) / $r->qta);
$prezzo_unitario = setting('Utilizza prezzi di vendita comprensivi di IVA') ? ((($r->subtotale - $r->sconto) + $r->iva) / ($r->qta?:1)) : (($r->subtotale - $r->sconto) / ($r->qta?:1));
if (!empty($r->idarticolo)) {
$articolo = ArticoloOriginale::find($r->idarticolo);

View File

@ -93,7 +93,7 @@ class Pianificazione extends Document
{
$righe = $this->contratto->getRighe();
$pianificazioni = $this->contratto->pianificazioni;
$numero_righe = $righe->count() / $pianificazioni->count();
$numero_righe = $righe->count() / ($pianificazioni->count()?:1);
$p = $this;
$index = $pianificazioni->search(fn ($item) => $item->id == $p->id);

View File

@ -32,7 +32,7 @@ $prezzo_max = $prezzi['max'];
$prezzo_medio = $prezzi['media'];
$oscillazione = $prezzo_max['prezzo'] - $prezzo_min['prezzo'];
$oscillazione_percentuale = $prezzo_medio ? $oscillazione * 100 / $prezzo_medio : 0;
$oscillazione_percentuale = $prezzo_medio ? $oscillazione * 100 / ($prezzo_medio?:1) : 0;
$data_min = $prezzo_min['data'] ? strtotime((string) $prezzo_min['data']) : '';
$data_max = $prezzo_max['data'] ? strtotime((string) $prezzo_max['data']) : '';

View File

@ -338,7 +338,7 @@ abstract class Accounting extends Component
*/
public function getMarginePercentualeAttribute()
{
return (1 - (($this->spesa + $this->provvigione) / $this->totale_imponibile)) * 100;
return (1 - (($this->spesa + $this->provvigione) / ($this->totale_imponibile?:1))) * 100;
}
/**

View File

@ -221,7 +221,7 @@ abstract class Document extends Model implements ReferenceInterface, DocumentInt
*/
public function getMarginePercentualeAttribute()
{
return ($this->totale_imponibile && $this->spesa) ? (1 - ($this->spesa / $this->totale_imponibile)) * 100 : 100;
return ($this->totale_imponibile && $this->spesa) ? (1 - ($this->spesa / ($this->totale_imponibile?:1))) * 100 : 100;
}
/**