diff --git a/actions.php b/actions.php index 438115764..6ec276a31 100755 --- a/actions.php +++ b/actions.php @@ -424,6 +424,8 @@ elseif (post('op') == 'send-email') { } } elseif (filter('op') == 'visualizza_righe_riferimenti') { include_once base_dir().'/include/riferimenti/riferimenti.php'; +} elseif (filter('op') == 'visualizza_documenti_collegati') { + include_once base_dir().'/include/riferimenti/documenti_collegati.php'; } elseif (filter('op') == 'visualizza_righe_documento') { include_once base_dir().'/include/riferimenti/righe_documento.php'; } elseif (filter('op') == 'salva_riferimento_riga') { diff --git a/include/riferimenti/documenti_collegati.php b/include/riferimenti/documenti_collegati.php new file mode 100644 index 000000000..94ee758bf --- /dev/null +++ b/include/riferimenti/documenti_collegati.php @@ -0,0 +1,88 @@ +. + */ + +include_once __DIR__.'/../../core.php'; + +use Modules\Articoli\Articolo; + +// Informazioni generali sulla riga +$source_type = filter('riga_type'); +$source_id = filter('riga_id'); +if (empty($source_type) || empty($source_id)) { + return; +} + +$source = $source_type::find($source_id); +$documenti_destinazione = getDestinationComponents($source); + +echo ' +
+
+

'; + if ($source->isArticolo()) { + $articolo_riga = Articolo::find($source->idarticolo); + echo $articolo_riga->codice.' - '.$source->descrizione; + } else { + echo nl2br($source->descrizione); + } + echo ' +

+
+ '.tr('Quantità evasa / Totale').': '.numberFormat($source->qta_evasa, 'qta').' / '.numberFormat($source->qta, 'qta').' +
+
+ +
'; + if ($documenti_destinazione) { + echo ' + + + + + + + + + '; + + $documenti_destinazione = getDestinationComponents($source); + foreach ($documenti_destinazione['documento'] as $key => $destinazione) { + echo ' + + + + '; + } + echo ' + +
'.tr('Documento').''.tr('Q.tà').'
+ '.reference($destinazione).' + + '.numberFormat($documenti_destinazione['qta'][$key], 'qta').' +
'; + } else { + echo ' +
+ '.tr('Nessun documento collegato').'. +
'; + } + echo ' +
+
'; diff --git a/lib/common.php b/lib/common.php index f9ef52fbc..d13804a73 100755 --- a/lib/common.php +++ b/lib/common.php @@ -24,6 +24,11 @@ * @since 2.4.2 */ use Common\Components\Accounting; +use Modules\Contratti\Contratto; +use Modules\DDT\DDT; +use Modules\Fatture\Fattura; +use Modules\Interventi\Intervento; +use Modules\Ordini\Ordine; /** * Esegue una somma precisa tra due interi/array. @@ -194,6 +199,39 @@ function reference($document, $text = null) return Modules::link($module_id, $document_id, $description, $description, $extra); } +function getDestinationComponents($riga) +{ + $documents = []; + + $contratti = database()->table('co_righe_contratti')->where('original_id', $riga->id)->where('original_type', $riga::class)->get(); + foreach ($contratti as $contratto) { + $documents['documento'][] = Contratto::find($contratto->idcontratto); + $documents['qta'][] = $contratto->qta; + } + $fatture = database()->table('co_righe_documenti')->where('original_id', $riga->id)->where('original_type', $riga::class)->get(); + foreach ($fatture as $fattura) { + $documents['documento'][] = Fattura::find($fattura->iddocumento); + $documents['qta'][] = $fattura->qta; + } + $ddts = database()->table('dt_righe_ddt')->where('original_id', $riga->id)->where('original_type', $riga::class)->get(); + foreach ($ddts as $ddt) { + $documents['documento'][] = Ddt::find($ddt->idddt); + $documents['qta'][] = $ddt->qta; + } + $interventi = database()->table('in_righe_interventi')->where('original_id', $riga->id)->where('original_type', $riga::class)->get(); + foreach ($interventi as $intervento) { + $documents['documento'][] = Intervento::find($intervento->idintervento); + $documents['qta'][] = $intervento->qta; + } + $ordini = database()->table('or_righe_ordini')->where('original_id', $riga->id)->where('original_type', $riga::class)->get(); + foreach ($ordini as $ordine) { + $documents['documento'][] = Ordine::find($ordine->idordine); + $documents['qta'][] = $ordine->qta; + } + + return $documents; +} + /** * Funzione che gestisce il parsing di uno sconto combinato e la relativa trasformazione in sconto fisso. * Esempio: (40 + 10) % = 44 %. diff --git a/modules/contratti/init.php b/modules/contratti/init.php index 769de31db..b42d6d411 100755 --- a/modules/contratti/init.php +++ b/modules/contratti/init.php @@ -75,7 +75,7 @@ if (!empty($id_record)) { WHERE (`in_righe_interventi`.`original_document_id` = '.prepare($id_record).' AND `in_righe_interventi`.`original_document_type` = \'Modules\\\\Contratti\\\\Contratto\') OR `in_interventi`.`id_contratto` = '.prepare($id_record).' GROUP BY id - ORDER BY `data`'); + ORDER BY `modulo`'); $is_anagrafica_deleted = !$contratto->anagrafica; diff --git a/modules/contratti/row-list.php b/modules/contratti/row-list.php index 740559dd2..cecd34bc2 100755 --- a/modules/contratti/row-list.php +++ b/modules/contratti/row-list.php @@ -25,7 +25,7 @@ use Models\Plugin; $block_edit = $record['is_completato']; $order_row_desc = $_SESSION['module_'.$id_module]['order_row_desc']; $righe = $order_row_desc ? $contratto->getRighe()->sortByDesc('created_at') : $contratto->getRighe(); -$colspan = '7'; +$colspan = '8'; $evasione_bar = [ 'Fatture di vendita' => 'success', @@ -46,6 +46,7 @@ echo ' '.tr('#').' '.tr('Descrizione').' + '.tr('Documenti').' '.tr('Q.tà').' '.tr('Costo unitario').' '.tr('Prezzo unitario').' @@ -93,12 +94,6 @@ foreach ($righe as $riga) { '; - // Aggiunta dei riferimenti ai documenti - if ($riga->hasOriginalComponent()) { - echo ' - '.reference($riga->getOriginalComponent()->getDocument(), tr('Origine')).''; - } - // Descrizione $descrizione = nl2br($riga->descrizione); if ($riga->isArticolo()) { @@ -131,6 +126,17 @@ foreach ($righe as $riga) {
'.nl2br($riga->note).''; } echo ' + + + '; + // Aggiunta dei riferimenti ai documenti + if ($riga->hasOriginalComponent()) { + echo ' + '; + } + echo ' '; if ($riga->isDescrizione()) { @@ -144,8 +150,10 @@ foreach ($righe as $riga) { // Quantità e unità di misura echo ' - {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "decimals": "qta", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-after": " numberFormat($riga->qta_evasa, 'qta'), '_TOT_' => numberFormat($riga->qta, 'qta')]).'\'>'.$riga->um.' ", "disabled": "'.($riga->isSconto() ? 1 : 0).'", "disabled": "'.($block_edit || $riga->isSconto()).'" ]} -
'; + {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "decimals": "qta", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-before": "'.$riga->um.'", "disabled": "'.($riga->isSconto() ? 1 : 0).'", "disabled": "'.($block_edit || $riga->isSconto()).'" ]} + + +
'; // Visualizzazione evasione righe per documento $color = ''; $valore_evaso = 0; @@ -164,13 +172,14 @@ foreach ($righe as $riga) { $perc_ev = $valore_evaso * 100 / ($riga->qta ?: 1); if ($perc_ev > 0) { echo ' -
'; +
'; } } } } echo ' -
+
+
'; if ($riga->isArticolo()) { @@ -662,4 +671,12 @@ if (Plugin::where('name', 'Distinta base')->first()->id) { }'; } echo ' + +function apriDocumenti(div) { + let riga = $(div).closest("tr"); + let id = riga.data("id"); + let type = riga.data("type"); + + openModal("'.tr('Documenti collegati').'", globals.rootdir + "/actions.php?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&op=visualizza_documenti_collegati&riga_id=" + id + "&riga_type=" + type) +} '; diff --git a/modules/ddt/init.php b/modules/ddt/init.php index 18d9bc4ae..81face612 100755 --- a/modules/ddt/init.php +++ b/modules/ddt/init.php @@ -100,7 +100,7 @@ if (!empty($id_record)) { GROUP BY id - ORDER BY `data`'); + ORDER BY `modulo`'); $is_anagrafica_deleted = !$ddt->anagrafica; } diff --git a/modules/ddt/row-list.php b/modules/ddt/row-list.php index ff35bc6c3..89199325a 100755 --- a/modules/ddt/row-list.php +++ b/modules/ddt/row-list.php @@ -25,7 +25,7 @@ use Models\Plugin; $block_edit = $record['flag_completato']; $order_row_desc = $_SESSION['module_'.$id_module]['order_row_desc']; $righe = $order_row_desc ? $ddt->getRighe()->sortByDesc('created_at') : $ddt->getRighe(); -$colspan = $dir == 'entrata' ? '7' : '6'; +$colspan = $dir == 'entrata' ? '8' : '7'; $evasione_bar = [ 'Fatture di vendita' => 'success', @@ -46,6 +46,7 @@ echo ' '.tr('#').' '.tr('Descrizione').' + '.tr('Documenti').' '.tr('Q.tà').''; if ($dir == 'entrata') { echo ''.tr('Costo unitario').''; @@ -100,26 +101,7 @@ foreach ($righe as $riga) { '.$num.' - - '; - - $numero_riferimenti_riga = $riga->referenceTargets()->count(); - $numero_riferimenti_collegati = $riga->referenceSources()->count(); - $riferimenti_presenti = $numero_riferimenti_riga; - $testo_aggiuntivo = $riferimenti_presenti ? $numero_riferimenti_riga : ''; - echo ' - '; - - // Aggiunta dei riferimenti ai documenti - if ($riga->hasOriginalComponent()) { - echo ' -
'.reference($riga->getOriginalComponent()->getDocument(), tr('Origine')); - } - echo ' -
'; - + '; if ($riga->isArticolo()) { echo Modules::link('Articoli', $riga->idarticolo, $riga->codice.' - '.$riga->descrizione); } else { @@ -151,6 +133,26 @@ foreach ($righe as $riga) { echo ' '; + $numero_riferimenti_riga = $riga->referenceTargets()->count(); + $numero_riferimenti_collegati = $riga->referenceSources()->count(); + $riferimenti_presenti = $numero_riferimenti_riga; + $testo_aggiuntivo = $riferimenti_presenti ? ''.$numero_riferimenti_riga.'' : ''; + echo ' + + '; + + // Aggiunta dei riferimenti ai documenti + if ($riga->hasOriginalComponent()) { + echo ' + '; + } + echo ' + '; + if ($riga->isDescrizione()) { echo ' '; @@ -165,8 +167,10 @@ foreach ($righe as $riga) { // Quantità e unità di misura echo ' - {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-after": " numberFormat($riga->qta_evasa, 'qta'), '_TOT_' => numberFormat($riga->qta, 'qta')]).'\'>'.$riga->um.' ", "disabled": "'.($riga->isSconto() ? 1 : 0).'", "disabled": "'.($block_edit || $riga->isSconto()).'", "decimals": "qta" ]} -
'; + {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-before": "'.$riga->um.'", "disabled": "'.($block_edit || $riga->isSconto()).'", "decimals": "qta" ]} + + +
'; // Visualizzazione evasione righe per documento $color = ''; $valore_evaso = 0; @@ -185,13 +189,14 @@ foreach ($righe as $riga) { $perc_ev = $valore_evaso * 100 / ($riga->qta ?: 1); if ($perc_ev > 0) { echo ' -
'; +
'; } } } } echo ' -
+
+ '; if ($riga->isArticolo()) { @@ -596,6 +601,14 @@ function apriRiferimenti(button) { openModal("'.tr('Riferimenti riga').'", globals.rootdir + "/actions.php?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&op=visualizza_righe_riferimenti&riga_id=" + id + "&riga_type=" + type) } +function apriDocumenti(div) { + let riga = $(div).closest("tr"); + let id = riga.data("id"); + let type = riga.data("type"); + + openModal("'.tr('Documenti collegati').'", globals.rootdir + "/actions.php?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&op=visualizza_documenti_collegati&riga_id=" + id + "&riga_type=" + type) +} + $(document).ready(function() { sortable(".sortable", { axis: "y", diff --git a/modules/interventi/init.php b/modules/interventi/init.php index e3247720f..0bde477fc 100755 --- a/modules/interventi/init.php +++ b/modules/interventi/init.php @@ -45,5 +45,24 @@ if (!empty($id_record)) { WHERE `in_interventi`.`id`='.prepare($id_record)); + $elementi = $dbo->fetchArray('SELECT + `co_documenti`.`id`, + `co_documenti`.`data`, + `co_documenti`.`numero`, + `co_documenti`.`numero_esterno`, + `co_tipidocumento_lang`.`title` AS tipo_documento, + IF(`co_tipidocumento`.`dir` = \'entrata\', \'Fatture di vendita\', \'Fatture di acquisto\') AS modulo, + GROUP_CONCAT(CONCAT(`original_id`, " - ", `qta`) SEPARATOR ", ") AS righe + FROM + `co_documenti` + INNER JOIN `co_righe_documenti` ON `co_righe_documenti`.`iddocumento` = `co_documenti`.`id` + INNER JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` + LEFT JOIN `co_tipidocumento_lang` ON (`co_tipidocumento_lang`.`id_record` = `co_tipidocumento`.`id` AND `co_tipidocumento_lang`.`id_lang` = '.prepare(Models\Locale::getDefault()->id).') + WHERE + (`co_righe_documenti`.`original_document_id` = '.prepare($id_record).' AND `co_righe_documenti`.`original_document_type` = \'Modules\\\\Interventi\\\\Intervento\') + GROUP BY + id + ORDER BY `modulo`'); + $is_anagrafica_deleted = !$intervento->anagrafica; } diff --git a/modules/interventi/row-list.php b/modules/interventi/row-list.php index efdc9fb5a..c4bba5079 100755 --- a/modules/interventi/row-list.php +++ b/modules/interventi/row-list.php @@ -24,10 +24,14 @@ use Models\Plugin; $block_edit = $record['flag_completato']; $righe = $intervento->getRighe(); -$colspan = '6'; +$colspan = '7'; $show_prezzi = Auth::user()['gruppo'] != 'Tecnici' || (Auth::user()['gruppo'] == 'Tecnici' && setting('Mostra i prezzi al tecnico')); +$evasione_bar = [ + 'Fatture di vendita' => 'success' +]; + echo '
@@ -41,6 +45,7 @@ if (!$block_edit && sizeof($righe) > 0) { echo ' + '; if ($show_prezzi) { @@ -51,7 +56,7 @@ if ($show_prezzi) { '; } echo ' - '; + '; echo ' @@ -77,22 +82,7 @@ foreach ($righe as $riga) { echo ' + + '; // Quantità e unità di misura echo ' '; if ($show_prezzi) { @@ -299,6 +329,17 @@ if (!$block_edit && sizeof($righe) > 0) { } echo ' +
+
+
+
'.tr('Quantità evasa in').':
+
+
+ +  '.tr('Fattura').' +
+
+
'; diff --git a/modules/ordini/init.php b/modules/ordini/init.php index 36ec7e286..691121abe 100755 --- a/modules/ordini/init.php +++ b/modules/ordini/init.php @@ -118,7 +118,7 @@ if (!empty($id_record)) { GROUP BY id ORDER BY - `data`'); + `modulo`'); $is_anagrafica_deleted = !$ordine->anagrafica; } diff --git a/modules/ordini/row-list.php b/modules/ordini/row-list.php index 639216150..4cccc39b2 100755 --- a/modules/ordini/row-list.php +++ b/modules/ordini/row-list.php @@ -28,7 +28,7 @@ $block_edit = $record['flag_completato']; $order_row_desc = $_SESSION['module_'.$id_module]['order_row_desc']; $righe = $order_row_desc ? $ordine->getRighe()->sortByDesc('created_at') : $ordine->getRighe(); $dir = $ordine->direzione; -$colspan = $dir == 'entrata' ? '8' : '7'; +$colspan = $dir == 'entrata' ? '9' : '8'; $evasione_bar = [ 'Ddt in entrata' => 'info', @@ -53,6 +53,7 @@ echo ' + '; if ($dir == 'entrata') { @@ -111,22 +112,6 @@ foreach ($righe as $riga) { '; + $numero_riferimenti_riga = $riga->referenceTargets()->count(); + $numero_riferimenti_collegati = $riga->referenceSources()->count(); + $riferimenti_presenti = $numero_riferimenti_riga; + $testo_aggiuntivo = $riferimenti_presenti ? ''.$numero_riferimenti_riga.'' : ''; + echo ' + '; + // Data prevista evasione $info_evasione = ''; if (!empty($riga->data_evasione)) { @@ -222,8 +227,10 @@ foreach ($righe as $riga) { // Quantità e unità di misura echo ' '; if ($riga->isArticolo()) { @@ -553,10 +561,6 @@ echo '  '.tr('Attività').' -
- -  '.tr('Ordine').' -
@@ -698,6 +702,14 @@ function apriRiferimenti(button) { openModal("'.tr('Riferimenti riga').'", globals.rootdir + "/actions.php?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&op=visualizza_righe_riferimenti&riga_id=" + id + "&riga_type=" + type) } +function apriDocumenti(div) { + let riga = $(div).closest("tr"); + let id = riga.data("id"); + let type = riga.data("type"); + + openModal("'.tr('Documenti collegati').'", globals.rootdir + "/actions.php?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&op=visualizza_documenti_collegati&riga_id=" + id + "&riga_type=" + type) +} + $(document).ready(function() { sortable(".sortable", { axis: "y", diff --git a/modules/preventivi/init.php b/modules/preventivi/init.php index 3ed3bf56d..a319ba238 100755 --- a/modules/preventivi/init.php +++ b/modules/preventivi/init.php @@ -120,7 +120,7 @@ if (!empty($id_record)) { WHERE `co_righe_contratti`.`original_document_id` = '.prepare($id_record).' AND `co_righe_contratti`.`original_document_type` = \'Modules\\\\Preventivi\\\\Preventivo\' GROUP BY id - ORDER BY `data`'); + ORDER BY `modulo`'); $is_anagrafica_deleted = !$preventivo->anagrafica; } diff --git a/modules/preventivi/row-list.php b/modules/preventivi/row-list.php index c33714962..b38fe4c09 100755 --- a/modules/preventivi/row-list.php +++ b/modules/preventivi/row-list.php @@ -25,7 +25,7 @@ use Models\Plugin; $block_edit = $record['is_completato']; $order_row_desc = $_SESSION['module_'.$id_module]['order_row_desc']; $righe = $order_row_desc ? $preventivo->getRighe()->sortByDesc('created_at') : $preventivo->getRighe(); -$colspan = '8'; +$colspan = '9'; echo '
@@ -41,6 +41,7 @@ echo '
+ @@ -103,12 +104,6 @@ foreach ($righe as $key => $riga) { + + '; + // Data prevista evasione $info_evasione = ''; if (!empty($riga->data_evasione)) { @@ -180,9 +187,10 @@ foreach ($righe as $key => $riga) { // Quantità e unità di misura echo ' '; if ($riga->isArticolo()) { @@ -760,5 +769,13 @@ if (Plugin::where('name', 'Distinta base')->first()) { openModal("'.tr('Distinta base').'", "'.Plugin::where('name', 'Distinta base')->first()->fileurl('view.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&id_articolo=" + id_articolo); }'; } + echo ' +function apriDocumenti(div) { + let riga = $(div).closest("tr"); + let id = riga.data("id"); + let type = riga.data("type"); + + openModal("'.tr('Documenti collegati').'", globals.rootdir + "/actions.php?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&op=visualizza_documenti_collegati&riga_id=" + id + "&riga_type=" + type) +} ';
'.tr('Descrizione').''.tr('Documenti').' '.tr('Q.tà').''.tr('Importo').''.tr(' ').''.tr(' ').'
'; - - // Informazioni aggiuntive sulla destra - echo ' - '; - - // Aggiunta dei riferimenti ai documenti - if ($riga->hasOriginalComponent()) { - echo ' - '.reference($riga->getOriginalComponent()->getDocument(), tr('Origine')); - } - - echo ' - '; - - echo ' - '.Modules::link($riga->isArticolo() ? 'Articoli' : null, $riga->isArticolo() ? $riga['idarticolo'] : null, $descrizione); + echo Modules::link($riga->isArticolo() ? 'Articoli' : null, $riga->isArticolo() ? $riga['idarticolo'] : null, $descrizione); if ($riga->isArticolo()) { if (!empty($mancanti)) { @@ -118,13 +108,53 @@ foreach ($righe as $riga) { echo '
'.nl2br($riga->note).''; } + echo ' +
'; + // Aggiunta dei riferimenti ai documenti + if ($riga->hasOriginalComponent()) { + echo ' + '; + } echo ' - {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-after": "'.($riga->um ?: ' ').'", "disabled": "'.($riga->isSconto() ? 1 : 0).'", "disabled": "'.($block_edit || $riga->isSconto()).'","decimals": "qta" ]} + {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-before": "'.$riga->um.'", "disabled": "'.($block_edit || $riga->isSconto()).'","decimals": "qta" ]} + + +
'; + // Visualizzazione evasione righe per documento + $color = ''; + $valore_evaso = 0; + foreach ($elementi as $elemento) { + $righe_evase = explode(', ', (string) $elemento['righe']); + $righe_evase_array = array_reduce($righe_evase, function ($carry, $riga_evasa) { + [$id, $qta] = explode(' - ', $riga_evasa); + $carry[$id] = $qta; + + return $carry; + }, []); + foreach ($righe_evase_array as $id => $qta) { + if ($id == $riga->id) { + $color = $evasione_bar[$elemento['modulo']]; + $valore_evaso = $qta; + $perc_ev = $valore_evaso * 100 / ($riga->qta ?: 1); + if ($perc_ev > 0) { + echo ' +
'; + } + } + } + } + echo ' +
+
'.tr('#').' '.tr('Descrizione').''.tr('Documenti').' '.tr('Prev. evasione').' '.tr('Q.tà').''; - $numero_riferimenti_riga = $riga->referenceTargets()->count(); - $numero_riferimenti_collegati = $riga->referenceSources()->count(); - $riferimenti_presenti = $numero_riferimenti_riga; - $testo_aggiuntivo = $riferimenti_presenti ? $numero_riferimenti_riga : ''; - - echo ' - '; - - // Aggiunta dei riferimenti ai documenti - if ($riga->hasOriginalComponent()) { - echo ' - '.reference($riga->getOriginalComponent()->getDocument(), tr('Origine')).''; - } - if ($riga->isArticolo()) { $articolo_riga = Articolo::find($riga->idarticolo); @@ -171,6 +156,26 @@ foreach ($righe as $riga) { echo ' + '; + + // Aggiunta dei riferimenti ai documenti + if ($riga->hasOriginalComponent()) { + echo ' + '; + } + echo ' + - {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-before": "confermato ? tr('Articolo confermato') : tr('Articolo non confermato')).'\'>confermato ? 'fa fa-check text-success' : 'fa fa-clock-o text-warning').'\'>", "icon-after": " numberFormat($riga->qta_evasa, 'qta'), '_TOT_' => numberFormat($riga->qta, 'qta')]).'\'>'.$riga->um.' ", "disabled": "'.($riga->isSconto() ? 1 : 0).'", "disabled": "'.($block_edit || $riga->isSconto()).'", "decimals": "qta" ]} -
'; + {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-after": "confermato ? tr('Articolo confermato') : tr('Articolo non confermato')).'\'>confermato ? 'fa fa-check text-success' : 'fa fa-clock-o text-warning').'\'>", "icon-before": "'.$riga->um.'", "disabled": "'.($block_edit || $riga->isSconto()).'", "decimals": "qta" ]} + + +
'; // Visualizzazione evasione righe per documento $color = ''; $valore_evaso = 0; @@ -242,13 +249,14 @@ foreach ($righe as $riga) { $perc_ev = $valore_evaso * 100 / ($riga->qta ?: 1); if ($perc_ev > 0) { echo ' -
'; +
'; } } } } echo ' -
+
+
'.tr('#').' '.tr('Descrizione').''.tr('Documenti').' '.tr('Prev. evasione').' '.tr('Q.tà').' '.tr('Costo unitario').''; - // Aggiunta dei riferimenti ai documenti - if ($riga->hasOriginalComponent()) { - echo ' - '.reference($riga->getOriginalComponent()->getDocument(), tr('Origine')).''; - } - // Descrizione $descrizione = nl2br($riga->descrizione); if ($riga->isArticolo()) { @@ -126,9 +121,21 @@ foreach ($righe as $key => $riga) { echo '
'.nl2br($riga->note).''; } + echo ' +
'; + // Aggiunta dei riferimenti ai documenti + if ($riga->hasOriginalComponent()) { + echo ' + '; + } echo ' - {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-before": "confermato ? tr('Articolo confermato') : tr('Articolo non confermato')).'\'>confermato ? 'fa fa-check text-success' : 'fa fa-clock-o text-warning').'\'>", "icon-after": " numberFormat($riga->qta_evasa, 'qta'), '_TOT_' => numberFormat($riga->qta, 'qta')]).'\'>'.$riga->um.' ", "disabled": "'.($riga->isSconto() ? 1 : 0).'", "disabled": "'.($block_edit || $riga->isSconto()).'", "decimals": "qta" ]} -
'; + {[ "type": "number", "name": "qta_'.$riga->id.'", "value": "'.$riga->qta.'", "min-value": "0", "onchange": "aggiornaInline($(this).closest(\'tr\').data(\'id\'))", "icon-after": "confermato ? tr('Articolo confermato') : tr('Articolo non confermato')).'\'>confermato ? 'fa fa-check text-success' : 'fa fa-clock-o text-warning').'\'>", "icon-before": "'.$riga->um.'", "disabled": "'.($block_edit || $riga->isSconto()).'", "decimals": "qta" ]} + +
'; // Visualizzazione evasione righe per documento $color = ''; $valore_evaso = 0; @@ -204,14 +212,15 @@ foreach ($righe as $key => $riga) { if ($perc_ev > 0) { echo ' -
'; +
'; } } } } echo ' -
+
+