Aggiornamento elenco righe dei documenti
This commit is contained in:
parent
3b4add5592
commit
ec93a1ab62
|
@ -66,6 +66,16 @@ abstract class Row extends Description
|
|||
return ($this->prezzo_unitario_ivato - $this->sconto_unitario_ivato) * $this->qta;
|
||||
}
|
||||
|
||||
/**
|
||||
* Restituisce l'importo (unitario oppure unitario ivato a seconda dell'impostazione 'Utilizza prezzi di vendita con IVA incorporata') per la riga.
|
||||
*
|
||||
* @return float
|
||||
*/
|
||||
public function getImportoAttribute()
|
||||
{
|
||||
return $this->incorporaIVA() ? $this->totale : $this->totale_imponibile;
|
||||
}
|
||||
|
||||
/**
|
||||
* Restituisce la spesa (costo_unitario * qta) relativa all'elemento.
|
||||
*
|
||||
|
|
|
@ -7,11 +7,10 @@ echo '
|
|||
<thead>
|
||||
<tr>
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th width="120">'.tr('Q.tà').' <i title="'.tr('da evadere').' / '.tr('totale').'" class="tip fa fa-question-circle-o"></i></th>
|
||||
<th width="80">'.tr('U.m.').'</th>
|
||||
<th width="120">'.tr('Costo unitario').'</th>
|
||||
<th width="120">'.tr('Iva').'</th>
|
||||
<th width="120">'.tr('Imponibile').'</th>
|
||||
<th class="text-center tip" width="150" title="'.tr('da evadere').' / '.tr('totale').'">'.tr('Q.tà').' <i class="fa fa-question-circle-o"></i></th>
|
||||
<th class="text-center" width="150">'.tr('Prezzo unitario').'</th>
|
||||
<th class="text-center" width="150">'.tr('Iva unitaria').'</th>
|
||||
<th class="text-center" width="150">'.tr('Importo').'</th>
|
||||
<th width="60"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -28,6 +27,7 @@ foreach ($righe as $riga) {
|
|||
if ($riga->isArticolo()) {
|
||||
$descrizione = Modules::link('Articoli', $riga->idarticolo, $riga->articolo->codice.' - '.$descrizione);
|
||||
}
|
||||
|
||||
echo '
|
||||
<td>
|
||||
'.$descrizione.'
|
||||
|
@ -38,48 +38,48 @@ foreach ($righe as $riga) {
|
|||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>';
|
||||
} else {
|
||||
// Q.tà
|
||||
// Quantità e unità di misura
|
||||
echo '
|
||||
<td class="text-center">
|
||||
'.Translator::numberToLocale($riga->qta_rimanente, 'qta').' / '.Translator::numberToLocale($riga->qta, 'qta').'
|
||||
</td>';
|
||||
<td class="text-center">
|
||||
'.numberFormat($riga->qta_rimanente, 'qta').' / '.numberFormat($riga->qta, 'qta').' '.$r['um'].'
|
||||
</td>';
|
||||
|
||||
// Unità di misura
|
||||
// Prezzi unitari
|
||||
echo '
|
||||
<td class="text-center">
|
||||
'.$riga->um.'
|
||||
</td>';
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->prezzo_unitario_corrente);
|
||||
|
||||
// Costo unitario
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->prezzo_unitario);
|
||||
if ($dir == 'entrata' && $riga->costo_unitario != 0) {
|
||||
echo '
|
||||
<br><small>
|
||||
'.tr('Acquisto').': '.moneyFormat($riga->costo_unitario).'
|
||||
</small>';
|
||||
}
|
||||
|
||||
if (abs($riga->sconto_unitario) > 0) {
|
||||
$text = discountInfo($riga);
|
||||
|
||||
echo '
|
||||
<br><small class="label label-danger">'.$text.'</small>';
|
||||
<br><small class="label label-danger">'.$text.'</small>';
|
||||
}
|
||||
|
||||
echo'
|
||||
</td>';
|
||||
|
||||
// IVA
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->iva).'<br>
|
||||
<small class="help-block">'.$riga->aliquota->descrizione.(($riga->aliquota->esente) ? ' ('.$riga->aliquota->codice_natura_fe.')' : null).'</small>
|
||||
</td>';
|
||||
</td>';
|
||||
|
||||
// Imponibile
|
||||
// Iva
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->totale_imponibile).'
|
||||
</td>';
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->iva_unitaria).'
|
||||
<br><small class="'.(($riga->aliquota->deleted_at) ? 'text-red' : '').' help-block">'.$riga->aliquota->descrizione.(($riga->aliquota->esente) ? ' ('.$riga->aliquota->codice_natura_fe.')' : null).'</small>
|
||||
</td>';
|
||||
|
||||
// Importo
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->importo).'
|
||||
</td>';
|
||||
}
|
||||
|
||||
// Possibilità di rimuovere una riga solo se il preventivo non è stato pagato
|
||||
|
@ -140,7 +140,7 @@ $totale = abs($contratto->totale);
|
|||
// Totale totale imponibile
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
|
@ -153,7 +153,7 @@ echo '
|
|||
if (!empty($sconto)) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b><span class="tip" title="'.tr('Un importo positivo indica uno sconto, mentre uno negativo indica una maggiorazione').'"> <i class="fa fa-question-circle-o"></i> '.tr('Sconto/maggiorazione', [], ['upper' => true]).':</span></b>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
|
@ -165,7 +165,7 @@ if (!empty($sconto)) {
|
|||
// Totale totale imponibile
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
|
@ -178,7 +178,7 @@ if (!empty($sconto)) {
|
|||
// Totale iva
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Iva', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
|
@ -190,7 +190,7 @@ echo '
|
|||
// Totale contratto
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
|
|
|
@ -4,15 +4,16 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
echo '
|
||||
<table class="table table-striped table-hover table-condensed table-bordered">
|
||||
<tr>
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th width="120">'.tr('Q.tà').' <i title="'.tr('da evadere').' / '.tr('totale').'" class="tip fa fa-question-circle-o"></i></th>
|
||||
<th width="80">'.tr('U.m.').'</th>
|
||||
<th width="120">'.tr('Costo unitario').'</th>
|
||||
<th width="120">'.tr('Iva').'</th>
|
||||
<th width="120">'.tr('Imponibile').'</th>
|
||||
<th width="60"></th>
|
||||
</tr>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th class="text-center tip" width="150" title="'.tr('da evadere').' / '.tr('totale').'">'.tr('Q.tà').' <i class="fa fa-question-circle-o"></i></th>
|
||||
<th class="text-center" width="150">'.tr('Prezzo unitario').'</th>
|
||||
<th class="text-center" width="150">'.tr('Iva unitaria').'</th>
|
||||
<th class="text-center" width="150">'.tr('Importo').'</th>
|
||||
<th width="60"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody class="sortable">';
|
||||
|
||||
|
@ -72,65 +73,54 @@ foreach ($righe as $riga) {
|
|||
echo '
|
||||
</td>';
|
||||
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
if ($riga->isDescrizione()) {
|
||||
echo '
|
||||
<span>'.Translator::numberToLocale($r['qta'] - $r['qta_evasa'], 'qta').' / '.Translator::numberToLocale($r['qta'], 'qta').'</span>';
|
||||
}
|
||||
echo '
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>';
|
||||
} else {
|
||||
// Quantità e unità di misura
|
||||
echo '
|
||||
<td class="text-center">
|
||||
'.numberFormat($riga->qta_rimanente, 'qta').' / '.numberFormat($riga->qta, 'qta').' '.$r['um'].'
|
||||
</td>';
|
||||
|
||||
// Unità di misura
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
// Prezzi unitari
|
||||
echo '
|
||||
'.$r['um'];
|
||||
}
|
||||
echo '
|
||||
</td>';
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->prezzo_unitario_corrente);
|
||||
|
||||
// Costo unitario
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo '
|
||||
'.moneyFormat($r['subtotale'] / $r['qta']);
|
||||
if ($dir == 'entrata' && $riga->costo_unitario != 0) {
|
||||
echo '
|
||||
<br><small>
|
||||
'.tr('Acquisto').': '.moneyFormat($riga->costo_unitario).'
|
||||
</small>';
|
||||
}
|
||||
|
||||
if (abs($r['sconto_unitario']) > 0) {
|
||||
$text = $r['sconto_unitario'] > 0 ? tr('sconto _TOT_ _TYPE_') : tr('maggiorazione _TOT_ _TYPE_');
|
||||
if (abs($riga->sconto_unitario) > 0) {
|
||||
$text = discountInfo($riga);
|
||||
|
||||
echo '
|
||||
<br><small class="label label-danger">'.replace($text, [
|
||||
'_TOT_' => Translator::numberToLocale(abs($r['sconto_unitario'])),
|
||||
'_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : currency()),
|
||||
]).'</small>';
|
||||
<br><small class="label label-danger">'.$text.'</small>';
|
||||
}
|
||||
}
|
||||
echo '
|
||||
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Iva
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
// Iva
|
||||
echo '
|
||||
'.moneyFormat($r['iva']).'
|
||||
<br><small class="help-block">'.$r['desc_iva'].'</small>';
|
||||
}
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->iva_unitaria).'
|
||||
<br><small class="'.(($riga->aliquota->deleted_at) ? 'text-red' : '').' help-block">'.$riga->aliquota->descrizione.(($riga->aliquota->esente) ? ' ('.$riga->aliquota->codice_natura_fe.')' : null).'</small>
|
||||
</td>';
|
||||
|
||||
// Imponibile
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
// Importo
|
||||
echo '
|
||||
'.moneyFormat($r['subtotale'] - $r['sconto']);
|
||||
}
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->importo).'
|
||||
</td>';
|
||||
}
|
||||
|
||||
// Possibilità di rimuovere una riga solo se il ddt non è evaso
|
||||
echo '
|
||||
|
@ -187,7 +177,7 @@ $totale = abs($ddt->totale);
|
|||
// IMPONIBILE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
|
||||
|
@ -202,7 +192,7 @@ echo '
|
|||
if (!empty($sconto)) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b><span class="tip" title="'.tr('Un importo positivo indica uno sconto, mentre uno negativo indica una maggiorazione').'"> <i class="fa fa-question-circle-o"></i> '.tr('Sconto/maggiorazione', [], ['upper' => true]).':</span></b>
|
||||
</td>
|
||||
|
||||
|
@ -216,7 +206,7 @@ if (!empty($sconto)) {
|
|||
// TOTALE IMPONIBILE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
|
||||
|
@ -231,7 +221,7 @@ if (!empty($sconto)) {
|
|||
// IVA
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('IVA', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
|
||||
|
@ -245,7 +235,7 @@ echo '
|
|||
// TOTALE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
|
||||
|
|
|
@ -7,11 +7,10 @@ echo '
|
|||
<thead>
|
||||
<tr>
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th width="120">'.tr('Q.tà').'</th>
|
||||
<th width="80">'.tr('U.m.').'</th>
|
||||
<th width="120">'.tr('Prezzo unitario').'</th>
|
||||
<th width="120">'.tr('Iva').'</th>
|
||||
<th width="120">'.tr('Importo').'</th>
|
||||
<th class="text-center" width="150">'.tr('Q.tà').'</th>
|
||||
<th class="text-center" width="150">'.tr('Prezzo unitario').'</th>
|
||||
<th class="text-center" width="150">'.tr('Iva unitaria').'</th>
|
||||
<th class="text-center" width="150">'.tr('Importo').'</th>
|
||||
<th width="60"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -152,36 +151,23 @@ foreach ($righe as $riga) {
|
|||
echo '
|
||||
</td>';
|
||||
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
|
||||
if (!$riga->isDescrizione()) {
|
||||
if ($riga->isDescrizione()) {
|
||||
echo '
|
||||
'.Translator::numberToLocale($r['qta'], 'qta');
|
||||
}
|
||||
|
||||
echo '
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>';
|
||||
} else {
|
||||
// Quantità e unità di misura
|
||||
echo '
|
||||
<td class="text-center">
|
||||
'.numberFormat($riga->qta, 'qta').' '.$r['um'].'
|
||||
</td>';
|
||||
|
||||
// Unità di misura
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
|
||||
if (!$riga->isDescrizione()) {
|
||||
// Prezzi unitari
|
||||
echo '
|
||||
'.$r['um'];
|
||||
}
|
||||
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Prezzi unitari
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
|
||||
if (!$riga->isDescrizione()) {
|
||||
echo '
|
||||
'.moneyFormat($riga->prezzo_unitario);
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->prezzo_unitario_corrente);
|
||||
|
||||
if ($dir == 'entrata' && $riga->costo_unitario != 0) {
|
||||
echo '
|
||||
|
@ -196,34 +182,24 @@ foreach ($righe as $riga) {
|
|||
echo '
|
||||
<br><small class="label label-danger">'.$text.'</small>';
|
||||
}
|
||||
}
|
||||
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Iva
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
|
||||
if (!$riga->isDescrizione()) {
|
||||
echo '
|
||||
'.moneyFormat($r['iva']).'
|
||||
<br><small class="'.(($riga->aliquota->deleted_at) ? 'text-red' : '').' help-block">'.$riga->aliquota->descrizione.(($riga->aliquota->esente) ? ' ('.$riga->aliquota->codice_natura_fe.')' : null).'</small>';
|
||||
}
|
||||
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Importo
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if (!$riga->isDescrizione()) {
|
||||
// Iva
|
||||
echo '
|
||||
'.moneyFormat($r['totale_imponibile']);
|
||||
}
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->iva_unitaria).'
|
||||
<br><small class="'.(($riga->aliquota->deleted_at) ? 'text-red' : '').' help-block">'.$riga->aliquota->descrizione.(($riga->aliquota->esente) ? ' ('.$riga->aliquota->codice_natura_fe.')' : null).'</small>
|
||||
</td>';
|
||||
|
||||
// Importo
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->importo).'
|
||||
</td>';
|
||||
}
|
||||
|
||||
// Possibilità di rimuovere una riga solo se la fattura non è pagata
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
|
@ -289,7 +265,7 @@ $netto_a_pagare = abs($fattura->netto);
|
|||
// IMPONIBILE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -302,7 +278,7 @@ echo '
|
|||
if (!empty($sconto)) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b><span class="tip" title="'.tr('Un importo positivo indica uno sconto, mentre uno negativo indica una maggiorazione').'"><i class="fa fa-question-circle-o"></i> '.tr('Sconto/maggiorazione', [], ['upper' => true]).':</span></b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -314,7 +290,7 @@ if (!empty($sconto)) {
|
|||
// TOTALE IMPONIBILE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -328,7 +304,7 @@ if (!empty($sconto)) {
|
|||
if (!empty($fattura->rivalsa_inps)) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">';
|
||||
<td colspan="4" class="text-right">';
|
||||
|
||||
if ($dir == 'entrata') {
|
||||
echo '
|
||||
|
@ -349,7 +325,7 @@ if (!empty($fattura->rivalsa_inps)) {
|
|||
if (!empty($iva)) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">';
|
||||
<td colspan="4" class="text-right">';
|
||||
|
||||
if ($records[0]['split_payment']) {
|
||||
echo '<b>'.tr('Iva a carico del destinatario', [], ['upper' => true]).':</b>';
|
||||
|
@ -368,7 +344,7 @@ if (!empty($iva)) {
|
|||
// TOTALE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -381,7 +357,7 @@ echo '
|
|||
if (!empty($fattura->ritenuta_acconto)) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr("Ritenuta d'acconto", [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -395,7 +371,7 @@ if (!empty($fattura->ritenuta_acconto)) {
|
|||
if (!empty($fattura->totale_ritenuta_contributi)) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Ritenuta contributi', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -409,7 +385,7 @@ if (!empty($fattura->totale_ritenuta_contributi)) {
|
|||
if ($totale != $netto_a_pagare) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Netto a pagare', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
|
|
@ -7,11 +7,10 @@ echo '
|
|||
<thead>
|
||||
<tr>
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th width="120">'.tr('Q.tà').' <i title="'.tr('da evadere').' / '.tr('totale').'" class="tip fa fa-question-circle-o"></i></th>
|
||||
<th width="80">'.tr('U.m.').'</th>
|
||||
<th width="120">'.tr('Costo unitario').'</th>
|
||||
<th width="120">'.tr('Iva').'</th>
|
||||
<th width="120">'.tr('Imponibile').'</th>
|
||||
<th class="text-center tip" width="150" title="'.tr('da evadere').' / '.tr('totale').'">'.tr('Q.tà').' <i class="fa fa-question-circle-o"></i></th>
|
||||
<th class="text-center" width="150">'.tr('Prezzo unitario').'</th>
|
||||
<th class="text-center" width="150">'.tr('Iva unitaria').'</th>
|
||||
<th class="text-center" width="150">'.tr('Importo').'</th>
|
||||
<th width="60"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -74,65 +73,54 @@ foreach ($righe as $riga) {
|
|||
echo '
|
||||
</td>';
|
||||
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
if ($riga->isDescrizione()) {
|
||||
echo '
|
||||
<span >'.Translator::numberToLocale($r['qta'] - $r['qta_evasa'], 'qta').' / '.Translator::numberToLocale($r['qta'], 'qta').'</span>';
|
||||
}
|
||||
echo '
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>';
|
||||
} else {
|
||||
// Quantità e unità di misura
|
||||
echo '
|
||||
<td class="text-center">
|
||||
'.numberFormat($riga->qta_rimanente, 'qta').' / '.numberFormat($riga->qta, 'qta').' '.$r['um'].'
|
||||
</td>';
|
||||
|
||||
// Unità di misura
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
// Prezzi unitari
|
||||
echo '
|
||||
'.$r['um'];
|
||||
}
|
||||
echo '
|
||||
</td>';
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->prezzo_unitario_corrente);
|
||||
|
||||
// Costo unitario
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo '
|
||||
'.moneyFormat($r['subtotale'] / $r['qta']);
|
||||
if ($dir == 'entrata' && $riga->costo_unitario != 0) {
|
||||
echo '
|
||||
<br><small>
|
||||
'.tr('Acquisto').': '.moneyFormat($riga->costo_unitario).'
|
||||
</small>';
|
||||
}
|
||||
|
||||
if (abs($r['sconto_unitario']) > 0) {
|
||||
$text = $r['sconto_unitario'] > 0 ? tr('sconto _TOT_ _TYPE_') : tr('maggiorazione _TOT_ _TYPE_');
|
||||
if (abs($riga->sconto_unitario) > 0) {
|
||||
$text = discountInfo($riga);
|
||||
|
||||
echo '
|
||||
<br><small class="label label-danger">'.replace($text, [
|
||||
'_TOT_' => Translator::numberToLocale(abs($r['sconto_unitario'])),
|
||||
'_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : currency()),
|
||||
]).'</small>';
|
||||
<br><small class="label label-danger">'.$text.'</small>';
|
||||
}
|
||||
}
|
||||
echo '
|
||||
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Iva
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
// Iva
|
||||
echo '
|
||||
'.moneyFormat($r['iva']).'
|
||||
<br><small class="help-block">'.$r['desc_iva'].'</small>';
|
||||
}
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->iva_unitaria).'
|
||||
<br><small class="'.(($riga->aliquota->deleted_at) ? 'text-red' : '').' help-block">'.$riga->aliquota->descrizione.(($riga->aliquota->esente) ? ' ('.$riga->aliquota->codice_natura_fe.')' : null).'</small>
|
||||
</td>';
|
||||
|
||||
// Imponibile
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
// Importo
|
||||
echo '
|
||||
'.moneyFormat($r['subtotale'] - $r['sconto']);
|
||||
}
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->importo).'
|
||||
</td>';
|
||||
}
|
||||
|
||||
// Possibilità di rimuovere una riga solo se l'ordine non è evaso
|
||||
echo '
|
||||
|
@ -188,7 +176,7 @@ $totale = abs($ordine->totale);
|
|||
// IMPONIBILE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -201,7 +189,7 @@ echo '
|
|||
if (!empty($sconto)) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b><span class="tip" title="'.tr('Un importo positivo indica uno sconto, mentre uno negativo indica una maggiorazione').'"> <i class="fa fa-question-circle-o"></i> '.tr('Sconto/maggiorazione', [], ['upper' => true]).':</span></b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -213,7 +201,7 @@ if (!empty($sconto)) {
|
|||
// TOTALE IMPONIBILE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -226,7 +214,7 @@ if (!empty($sconto)) {
|
|||
// IVA
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Iva', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -238,7 +226,7 @@ echo '
|
|||
// TOTALE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
|
|
@ -7,11 +7,10 @@ echo '
|
|||
<thead>
|
||||
<tr>
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th width="120">'.tr('Q.tà').' <i title="'.tr('da evadere').' / '.tr('totale').'" class="tip fa fa-question-circle-o"></i></th>
|
||||
<th width="80">'.tr('U.m.').'</th>
|
||||
<th width="120">'.tr('Costo unitario').'</th>
|
||||
<th width="120">'.tr('Iva').'</th>
|
||||
<th width="120">'.tr('Imponibile').'</th>
|
||||
<th class="text-center tip" width="150" title="'.tr('da evadere').' / '.tr('totale').'">'.tr('Q.tà').' <i class="fa fa-question-circle-o"></i></th>
|
||||
<th class="text-center" width="150">'.tr('Prezzo unitario').'</th>
|
||||
<th class="text-center" width="150">'.tr('Iva unitaria').'</th>
|
||||
<th class="text-center" width="150">'.tr('Importo').'</th>
|
||||
<th width="60"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -38,48 +37,48 @@ foreach ($righe as $riga) {
|
|||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>';
|
||||
} else {
|
||||
// Q.tà
|
||||
// Quantità e unità di misura
|
||||
echo '
|
||||
<td class="text-center">
|
||||
'.Translator::numberToLocale($riga->qta_rimanente, 'qta').' / '.Translator::numberToLocale($riga->qta, 'qta').'
|
||||
</td>';
|
||||
<td class="text-center">
|
||||
'.numberFormat($riga->qta_rimanente, 'qta').' / '.numberFormat($riga->qta, 'qta').' '.$r['um'].'
|
||||
</td>';
|
||||
|
||||
// Unità di misura
|
||||
// Prezzi unitari
|
||||
echo '
|
||||
<td class="text-center">
|
||||
'.$riga->um.'
|
||||
</td>';
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->prezzo_unitario_corrente);
|
||||
|
||||
// Costo unitario
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->prezzo_unitario);
|
||||
if ($dir == 'entrata' && $riga->costo_unitario != 0) {
|
||||
echo '
|
||||
<br><small>
|
||||
'.tr('Acquisto').': '.moneyFormat($riga->costo_unitario).'
|
||||
</small>';
|
||||
}
|
||||
|
||||
if (abs($riga->sconto_unitario) > 0) {
|
||||
$text = discountInfo($riga);
|
||||
|
||||
echo '
|
||||
<br><small class="label label-danger">'.$text.'</small>';
|
||||
<br><small class="label label-danger">'.$text.'</small>';
|
||||
}
|
||||
|
||||
echo'
|
||||
</td>';
|
||||
|
||||
// IVA
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->iva).'<br>
|
||||
<small class="help-block">'.$riga->aliquota->descrizione.(($riga->aliquota->esente) ? ' ('.$riga->aliquota->codice_natura_fe.')' : null).'</small>
|
||||
</td>';
|
||||
</td>';
|
||||
|
||||
// Imponibile
|
||||
// Iva
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->totale_imponibile).'
|
||||
</td>';
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->iva_unitaria).'
|
||||
<br><small class="'.(($riga->aliquota->deleted_at) ? 'text-red' : '').' help-block">'.$riga->aliquota->descrizione.(($riga->aliquota->esente) ? ' ('.$riga->aliquota->codice_natura_fe.')' : null).'</small>
|
||||
</td>';
|
||||
|
||||
// Importo
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.moneyFormat($riga->importo).'
|
||||
</td>';
|
||||
}
|
||||
|
||||
// Possibilità di rimuovere una riga solo se il preventivo non è stato pagato
|
||||
|
@ -140,7 +139,7 @@ $totale = abs($preventivo->totale);
|
|||
// Totale imponibile scontato
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
|
@ -153,7 +152,7 @@ echo '
|
|||
if (!empty($sconto)) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b><span class="tip" title="'.tr('Un importo positivo indica uno sconto, mentre uno negativo indica una maggiorazione').'"> <i class="fa fa-question-circle-o"></i> '.tr('Sconto/maggiorazione', [], ['upper' => true]).':</span></b>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
|
@ -165,7 +164,7 @@ if (!empty($sconto)) {
|
|||
// Totale imponibile scontato
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
|
@ -178,7 +177,7 @@ if (!empty($sconto)) {
|
|||
// Totale iva
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Iva', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
|
@ -190,7 +189,7 @@ echo '
|
|||
// Totale
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
<b>'.tr('Totale', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
|
@ -205,7 +204,7 @@ $margine_style = ($margine <= 0 and $preventivo->totale > 0) ? 'background-color
|
|||
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="4" class="text-right">
|
||||
'.tr('Margine (_PRC_%)', [
|
||||
'_PRC_' => numberFormat($preventivo->margine_percentuale),
|
||||
]).':
|
||||
|
|
Loading…
Reference in New Issue