. */ include_once __DIR__.'/../../core.php'; use Util\Query; switch( get('op') ){ case "get_markers": $idanagrafica = get('idanagrafica'); $checks = get('check'); $where = []; //Filtro per anagrafica if(!empty($idanagrafica) && $idanagrafica!='null'){ $where[] = "in_interventi.idanagrafica=".prepare($idanagrafica); } //Filtri per stato $checks = explode(',', $checks); $where[] = "in_statiintervento.descrizione IN ('".implode("','", $checks)."')"; $add_query = "WHERE 1=1 AND ".implode(' AND ', $where); //Filtri per data $add_query .= " |date_period(`orario_inizio`,`data_richiesta`)|"; $query = "SELECT *, in_interventi.id AS idintervento, an_anagrafiche.lat AS lat_anagrafica, an_anagrafiche.lng AS lng_anagrafica, an_anagrafiche.indirizzo AS indirizzo_anagrafica, an_anagrafiche.cap AS cap_anagrafica, an_anagrafiche.citta AS citta_anagrafica, an_anagrafiche.provincia AS provincia_anagrafica, an_sedi.lat AS lat_sede, an_sedi.lng AS lng_sede, an_sedi.indirizzo AS indirizzo_sede, an_sedi.cap AS cap_sede, an_sedi.citta AS citta_sede, an_sedi.provincia AS provincia_sede, in_statiintervento.descrizione AS stato FROM in_interventi INNER JOIN an_anagrafiche ON in_interventi.idanagrafica=an_anagrafiche.idanagrafica LEFT JOIN an_sedi ON in_interventi.idsede_destinazione=an_sedi.id INNER JOIN in_statiintervento ON in_interventi.idstatointervento=in_statiintervento.idstatointervento LEFT JOIN in_interventi_tecnici ON in_interventi_tecnici.idintervento = in_interventi.id ".$add_query; $query = Query::replacePlaceholder($query); $query = Modules::replaceAdditionals(Modules::get('Interventi')['id'], $query); $records = $dbo->fetchArray($query); $rs = []; if(sizeof($records)>0){ for( $i=0; $i '.$records[$i]['ragione_sociale'].' '."\n
"; if(!empty($indirizzo)){ $descrizione .= ' Indirizzo: '.$indirizzo."\n
"; } if(!empty($cap)){ $descrizione .= ' '.$cap; } if(!empty($citta)){ $descrizione .= ', '.$citta; } if(!empty($provincia)){ $descrizione .= ' '.$provincia; } $descrizione .= '
'; $descrizione .= ' Calcola percorso '; //dettagli intervento $rs_sessioni = $dbo->fetchOne("SELECT MIN(orario_inizio) AS data, GROUP_CONCAT(DISTINCT ragione_sociale SEPARATOR ', ') AS tecnici FROM in_interventi_tecnici INNER JOIN an_anagrafiche ON in_interventi_tecnici.idtecnico=an_anagrafiche.idanagrafica WHERE idintervento=".prepare($records[$i]['idintervento'])." GROUP BY idintervento"); $descrizione .= '
'; $descrizione .= 'Data: '.(!empty($rs_sessioni['data'])?Translator::dateToLocale($rs_sessioni['data']):Translator::dateToLocale($records[$i]['data_richiesta'])).'
'; $descrizione .= 'Stato: '.$records[$i]['stato']."
"; $descrizione .= 'Richiesta: '.substr(strip_tags($records[$i]['richiesta']), 0, 200)."
"; if(!empty($rs_sessioni['tecnici'])){ $descrizione .= 'Tecnici: '.$rs_sessioni['tecnici']; } $descrizione .= '
'; $descrizione .= ' Apri attività '; $descrizione .= '
'; $rs[] = ['descrizione'=>$descrizione, 'lat'=>$lat, 'lng'=>$lng]; } } } echo json_encode($rs); break; } ?>