. */ use Modules\Interventi\Intervento; include_once __DIR__.'/../../../core.php'; // Interventi da pianificare $interventi_da_pianificare = Intervento::doesntHave('sessioni') ->orderByRaw('IF(data_scadenza IS NULL, data_richiesta, data_scadenza)') ->whereHas('stato', function ($query) { return $query->where('is_completato', '=', 0); }) ->get(); $raggruppamenti = $interventi_da_pianificare->groupBy(function ($item, $key) { $data = $item->data_scadenza ?: $item->data_richiesta; return ucfirst($data->formatLocalized('%B %Y')); }); $counter = 0; foreach ($raggruppamenti as $mese => $raggruppamento) { ++$counter; // Se cambia il mese ricreo l'intestazione della tabella if ($counter == 1) { $attr = ''; $class = 'fa-minus-circle'; } else { $attr = 'style="display:none;"'; $class = 'fa-plus-circle'; } echo "
'.tr('Codice').' | '.tr('Cliente').' | '.tr('Data richiesta').' | '.tr('Data scadenza').' | '.tr('Tipo intervento').' | '.tr('Descrizione').' | '.tr('Sede').' |
---|---|---|---|---|---|---|
'.Modules::link(Modules::get('Interventi')['id'], $r['id'], $r['codice']).' | '.Modules::link(Modules::get('Anagrafiche')['id'], $r['idanagrafica'], $dbo->fetchOne('SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica='.prepare($r['idanagrafica']))['ragione_sociale']).' | '.Translator::dateToLocale($r['data_richiesta']).' | '.((empty($r['data_scadenza'])) ? ' - ' : Translator::dateToLocale($r['data_scadenza'])).' | '.$dbo->fetchOne("SELECT CONCAT_WS(' - ', codice,descrizione) AS descrizione FROM in_tipiintervento WHERE idtipointervento=".prepare($r['idtipointervento']))['descrizione'].' | '.nl2br($r['richiesta']).' | '; echo ''; // Sede if ($r['idsede'] == '-1') { echo '- '.('Nessuna').' -'; } elseif (empty($r['idsede'])) { echo tr('Sede legale'); } else { $rsp2 = $dbo->fetchArray("SELECT id, CONCAT( CONCAT_WS( ' (', CONCAT_WS(', ', nomesede, citta), indirizzo ), ')') AS descrizione FROM an_sedi WHERE id=".prepare($r['idsede'])); echo $rsp2[0]['descrizione']; } echo ' | '; echo '
'.tr('Non ci sono interventi da pianificare').'.
'; }