Correzioni minori sulle righe

This commit is contained in:
Dasc3er 2020-09-25 11:03:39 +02:00
parent 9a3f92de54
commit 3ed12713a8
5 changed files with 48 additions and 51 deletions

View File

@ -87,7 +87,7 @@ if (!$righe->isEmpty()) {
</td>';
if ($show_prezzi) {
//Costo unitario
// Costo unitario
echo '
<td class="text-right">
'.moneyFormat($riga->costo_unitario).'

View File

@ -110,7 +110,7 @@ echo '
</div>
<div class="col-md-6">
{[ "type": "select", "multiple": "1", "label": "'.tr('Impianti a contratto').'", "name": "idimpianti[]", "help": "'.tr('Impianti sede selezionata').'", "values": "query=SELECT my_impianti.id AS id, my_impianti.nome AS descrizione FROM my_impianti_contratti INNER JOIN my_impianti ON my_impianti_contratti.idimpianto = my_impianti.id WHERE my_impianti_contratti.idcontratto = '.$id_parent.' ORDER BY descrizione", "value": "'.implode(',', $id_impianti).'", "readonly": '.intval($block_edit).' ]}
{[ "type": "select", "multiple": "1", "label": "'.tr('Impianti a contratto').'", "name": "idimpianti[]", "help": "'.tr('Impianti della sede selezionata per il Contratto').'", "values": "query=SELECT my_impianti.id AS id, my_impianti.nome AS descrizione FROM my_impianti_contratti INNER JOIN my_impianti ON my_impianti_contratti.idimpianto = my_impianti.id WHERE my_impianti_contratti.idcontratto = '.$id_parent.' ORDER BY descrizione", "value": "'.implode(',', $id_impianti).'", "readonly": '.intval($block_edit).' ]}
</div>
</div>
@ -144,11 +144,15 @@ echo '
<i class="fa fa-plus"></i> '.tr('Riga').'
</a>';
}
echo '
</div>
</div>
<div id="righe">';
<div class="clearfix"></div>
<br>
<div id="righe_promemoria">';
include $structure->filepath('row-list.php');
@ -304,7 +308,7 @@ echo '
});
function refreshRighe(id){
$("#righe").load("'.$plugin->fileurl('row-list.php').'?id_plugin='.$id_plugin.'&id_record=" + id + "&add='.$block_edit.'");
function refreshRighe(id) {
$("#righe_promemoria").load("'.$plugin->fileurl('row-list.php').'?id_plugin='.$id_plugin.'&id_record=" + id + "&add='.$block_edit.'");
}
</script>';

View File

@ -54,8 +54,6 @@ if (!$righe->isEmpty()) {
<tbody>';
foreach ($righe as $riga) {
$r = $riga->toArray();
$extra = '';
$mancanti = $riga->isArticolo() ? $riga->missing_serials_number : 0;
if ($mancanti > 0) {
@ -88,45 +86,43 @@ if (!$righe->isEmpty()) {
// Quantità
echo '
<td class="text-right">
'.Translator::numberToLocale($r['qta'], 'qta').' '.$r['um'].'
</td>';
//Costo unitario
echo '
<td class="text-right">
'.moneyFormat($riga->costo_unitario).'
</td>';
<td class="text-right">
'.Translator::numberToLocale($riga->qta, 'qta').' '.$riga->um.'
</td>';
if ($show_prezzi) {
// Costo unitario
echo '
<td class="text-right">
'.moneyFormat($riga->costo_unitario).'
</td>';
// Prezzo unitario
echo '
<td class="text-right">
'.moneyFormat($riga->prezzo_unitario);
<td class="text-right">
'.moneyFormat($riga->prezzo_unitario);
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 '
</td>';
</td>';
echo '
<td class="text-right">
'.moneyFormat($r['iva']).'
</td>';
<td class="text-right">
'.moneyFormat($riga->iva_unitaria).'
<br><small class="'.(($riga->aliquota->deleted_at) ? 'text-red' : '').' text-muted">'.$riga->aliquota->descrizione.(($riga->aliquota->esente) ? ' ('.$riga->aliquota->codice_natura_fe.')' : null).'</small>
</td>';
// Prezzo di vendita
echo '
<td class="text-right">
'.moneyFormat($riga->imponibile).'
</td>';
<td class="text-right">
'.moneyFormat($riga->importo).'
</td>';
}
// Pulsante per riportare nel magazzino centrale.
@ -135,15 +131,15 @@ if (!$righe->isEmpty()) {
echo '
<td class="text-center">';
if ($r['abilita_serial']) {
if ($riga->abilita_serial) {
echo '
<button type="button" class="btn btn-info btn-xs" data-toggle="tooltip" onclick="launch_modal(\''.tr('Modifica articoli').'\', \''.base_path().'/modules/fatture/add_serial.php?id_module='.$id_module.'&id_record='.$id_record.'&idarticolo='.$r['idriga'].'&idriga='.$r['id'].'\');">
<button type="button" class="btn btn-info btn-xs" data-toggle="tooltip" onclick="launch_modal(\''.tr('Modifica articoli').'\', \''.base_path().'/modules/fatture/add_serial.php?id_module='.$id_module.'&id_record='.$id_record.'&idarticolo='.$riga->id.'&idriga='.$riga->id.'\');">
<i class="fa fa-barcode"></i>
</button>';
}
echo '
<button type="button" class="btn btn-warning btn-xs" data-toggle="tooltip" onclick="launch_modal(\''.tr('Modifica').'\', \''.$structure->fileurl('row-edit.php').'?id_module='.$id_module.'&id_record='.$id_record.'&idriga='.$r['id'].'&type='.urlencode(get_class($riga)).'\');">
<button type="button" class="btn btn-warning btn-xs" data-toggle="tooltip" onclick="launch_modal(\''.tr('Modifica').'\', \''.$structure->fileurl('row-edit.php').'?id_module='.$id_module.'&id_record='.$id_record.'&idriga='.$riga->id.'&type='.urlencode(get_class($riga)).'\');">
<i class="fa fa-edit"></i>
</button>

View File

@ -27,6 +27,7 @@ use Modules\Iva\Aliquota;
*
* Prevede i seguenti campi nel database:
*
* @property float costo_unitario
* @property float prezzo_unitario
* @property float iva_unitaria = prezzo_unitario * percentuale_iva
* @property float prezzo_unitario_ivato = prezzo_unitario + iva_unitaria
@ -41,6 +42,7 @@ use Modules\Iva\Aliquota;
* @property float iva = (iva_unitaria - sconto_iva_unitario) * qta
* @property float totale = (prezzo_unitario_ivato - sconto_unitario_ivato) * qta [Totale imponibile con IVA]
* @property float importo = se incorpora_iva: totale, altrimenti: totale_imponibile
* @property float spesa = costo_unitario * qta
*
* Per una estensione del sistema dei totali (Rivalsa, Ritenuta, ...), si consiglia di introdurre un relativo Netto a pagare. [Fatture]
*
@ -64,6 +66,17 @@ abstract class Accounting extends Component
'prezzo_unitario_corrente',
'sconto_unitario_corrente',
'max_qta',
'spesa',
'imponibile',
'sconto',
'totale_imponibile',
'iva',
'totale',
];
protected $hidden = [
'document',
'aliquota',
];
public function getIvaIndetraibileAttribute()

View File

@ -55,7 +55,7 @@ abstract class Component extends Model
];
protected $hidden = [
'parent',
'document',
];
public function hasOriginalComponent()
@ -183,22 +183,6 @@ abstract class Component extends Model
return $result;
}
public function toArray()
{
$array = parent::toArray();
$result = array_merge($array, [
'spesa' => $this->spesa,
'imponibile' => $this->imponibile,
'sconto' => $this->sconto,
'totale_imponibile' => $this->totale_imponibile,
'iva' => $this->iva,
'totale' => $this->totale,
]);
return $result;
}
/**
* Copia l'oggetto (articolo, riga, descrizione) nel corrispettivo per il documento indicato.
*