. */ use Models\Module; use Modules\Contratti\Stato as StatoContratto; use Modules\DDT\Stato; use Modules\Fatture\Stato as StatoFattura; use Modules\Fatture\Tipo as Tipofattura; use Modules\Ordini\Stato as StatoOrdine; use Plugins\ListinoFornitori\DettaglioFornitore; // Inizializzazione $documento = $options['documento']; $documento_finale = $options['documento_finale']; if (empty($documento)) { return; } // Informazioni utili $dir = $documento->direzione; $original_module = Module::find((new Module())->getByField('title', $documento->module, Models\Locale::getPredefined()->id)); $name = !empty($documento_finale) ? $documento_finale->module : $options['module']; $final_module = Module::find((new Module())->getByField('title', $name, Models\Locale::getPredefined()->id)); $id_segment = $_SESSION['module_'.$final_module->id]['id_segment']; // IVA predefinita $id_iva = $id_iva ?: setting('Iva predefinita'); $righe_totali = $documento->getRighe(); $id_module_interventi = (new Module())->getByField('title', 'Attività', Models\Locale::getPredefined()->id); $id_module_ordini_f = (new Module())->getByField('title', 'Ordini fornitore', Models\Locale::getPredefined()->id); if ($final_module->id == $id_module_interventi) { $righe = $righe_totali->where('is_descrizione', '=', 0) ->where('qta_rimanente', '>', 0); $righe_evase = $righe_totali->where('is_descrizione', '=', 0) ->where('qta_rimanente', '=', 0); } elseif ($final_module->id == $id_module_ordini_f) { $righe = $righe_totali; $righe_evase = collect(); } else { $righe = $righe_totali->where('qta_rimanente', '>', 0); $righe_evase = $righe_totali->where('qta_rimanente', '=', 0); } if ($righe->isEmpty()) { echo '
'.tr('Non ci sono elementi da evadere').'...
'; return; } $link = !empty($documento_finale) ? base_path().'/editor.php?id_module='.$final_module->id.'&id_record='.$documento_finale->id : base_path().'/controller.php?id_module='.$final_module->id; echo ' '; echo ' '; // Individuazione scorte $articoli = $documento->articoli->groupBy('idarticolo'); $scorte = []; foreach ($articoli as $elenco) { $qta = $elenco->sum('qta'); $articolo = $elenco->first()->articolo; $descrizione_riga = $articolo->codice.' - '.$articolo->getTranslation('title'); $text = $articolo ? Modules::link('Articoli', $articolo->id, $descrizione_riga) : $descrizione_riga; $scorte[$articolo->id] = [ 'qta' => $articolo->qta, 'descrizione' => $text, 'servizio' => $articolo->servizio, ]; } echo ' ';