. */ use Modules\Interventi\Intervento; include_once __DIR__.'/../../../core.php'; // Interventi da pianificare NON completati $interventi_da_pianificare = Intervento::doesntHave('sessioni') ->orderByRaw('IF(data_scadenza IS NULL, data_richiesta, data_scadenza)') ->whereHas('stato', fn ($query) => $query->where('is_completato', '=', 0)) ->get(); $raggruppamenti = $interventi_da_pianificare->groupBy(function ($item, $key) { $data = $item->data_scadenza ?: $item->data_richiesta; return ucfirst((string) $data->isoFormat('MMMM YYYY')); }); $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('Tecnici assegnati').' | '.tr('Tipo intervento').' | '.tr('Stato intervento').' | |
---|---|---|---|---|---|---|
'.Modules::link('Interventi', $r['id'], $r['codice']).' | '.Modules::link('Anagrafiche', $r['idanagrafica'], $dbo->fetchOne('SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica='.prepare($r['idanagrafica']))['ragione_sociale']).' Presso: '; // Sede promemoria 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 ' |
'.Translator::dateToLocale($r['data_richiesta']).' '.((empty($r['data_scadenza'])) ? '' : ' Entro il '.Translator::dateToLocale($r['data_scadenza']).'').' |
'.$rs_tecnici[0]['tecnici'].' | '.$dbo->fetchOne("SELECT CONCAT_WS(' - ', `codice`,`title`) AS descrizione FROM `in_tipiintervento` LEFT JOIN `in_tipiintervento_lang` ON (`in_tipiintervento_lang`.`id_record` = `in_tipiintervento`.`id` AND `in_tipiintervento_lang`.`id_lang` = ".prepare(Models\Locale::getDefault()->id).') WHERE `in_tipiintervento`.`id`='.prepare($r['idtipointervento']))['descrizione'].' | '.$dbo->fetchOne("SELECT CONCAT_WS(' - ', `codice`,`title`) AS descrizione FROM `in_statiintervento` LEFT JOIN `in_statiintervento_lang` ON (`in_statiintervento_lang`.`id_record` = `in_statiintervento`.`id` AND `in_statiintervento_lang`.`id_lang` = ".prepare(Models\Locale::getDefault()->id).') WHERE `in_statiintervento`.`id`='.prepare($r['idstatointervento']))['descrizione'].' |
'.tr('Non ci sono interventi da pianificare').'.
'; } echo ' ';