gest366/modules/dashboard/ajaxreq.php

158 lines
7.2 KiB
PHP
Raw Permalink Normal View History

2021-02-24 20:40:04 +00:00
<?php
include_once(__DIR__."/../../core.php");
$module_name = "Interventi";
if(!isset($user_idanagrafica)) $user_idanagrafica = "";
$additional_where['Interventi'] = str_replace( "|idanagrafica|", "'".$user_idanagrafica."'", $additional_where['Interventi'] );
$additional_where['Interventi'] = str_replace( "|idtecnico|", "'".$user_idanagrafica."'", $additional_where['Interventi'] );
//Lettura calendario tecnici
switch( $_GET['op'] ){
case "get_current_month":
$start = $_GET['start'];
$end = $_GET['end'];
echo "[";
//Lettura calendario tecnici
$query = "SELECT in_interventi_tecnici.idintervento, colore, in_interventi_tecnici.id, idtecnico, orario_inizio, orario_fine,
(SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS nome_tecnico,
(SELECT colore FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS colore_tecnico,
(SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=in_interventi.idanagrafica) AS cliente ,
(SELECT idzona FROM an_anagrafiche WHERE idanagrafica=in_interventi.idanagrafica) AS idzona
FROM in_interventi_tecnici INNER JOIN (in_interventi LEFT OUTER JOIN in_statiintervento ON in_interventi.idstatointervento=in_statiintervento.idstatointervento) ON in_interventi_tecnici.idintervento=in_interventi.idintervento
WHERE in_interventi_tecnici.orario_inizio >= '$start' AND in_interventi_tecnici.orario_fine <= '$end'
AND idtecnico IN(".implode(',', $_SESSION['dashboard']['idtecnici']).")
AND (in_interventi_tecnici.idstatointervento IN(".implode(',', $_SESSION['dashboard']['idstatiintervento']).") OR in_interventi_tecnici.idstatointervento='')
AND in_interventi_tecnici.idtipointervento IN(".implode(',', $_SESSION['dashboard']['idtipiintervento']).") ".$additional_where['Interventi'];
$rs = $dbo->fetchArray($query);
$n = sizeof($rs);
for( $i=0; $i<$n; $i++ ){
echo "{";
echo "\"id\":\"".$rs[$i]['id']."\",";
echo "\"idintervento\":\"".$rs[$i]['idintervento']."\",";
echo "\"idtecnico\":\"".$rs[$i]['idtecnico']."\",";
echo "\"orario\":\"1\",";
echo "\"title\":\"<b>Int. ".$rs[$i]['idintervento']."</b>\\n".clean($rs[$i]['cliente'])."<br>\\n<b>Tecnici: </b>".clean($rs[$i]['nome_tecnico'])."\",";
echo "\"start\": \"".date( "Y-m-d H:i", strtotime($rs[$i]['orario_inizio']) )."\",";
echo "\"end\": \"".date( "Y-m-d H:i", strtotime($rs[$i]['orario_fine']) )."\",";
echo "\"url\":\"".$rootdir."/editor.php?id_module=".$modules_info['Ordine di Servizio']['id']."&id_record=".$rs[$i]['idintervento']."\",";
echo "\"backgroundColor\":\"".$rs[$i]['colore_tecnico']."\",";
echo "\"textColor\":\"".color_inverse($rs[$i]['colore'])."\",";
//echo "\"tip\":\"".html_entity_decode($tooltip_text)."\",";
if ($rs[$i]['colore_tecnico']=='#FFFFFF')
echo "\"borderColor\":\"".ColorDarken($rs[$i]['colore_tecnico'], 100)."\",";
else
echo "\"borderColor\":\"".$rs[$i]['colore_tecnico']."\",";
echo "\"allDay\":false";
echo "}";
if( $i < $n-1 )
echo ",";
}
echo "]";
break;
case "update_intervento":
$idintervento = save( $_GET['idintervento'] );
$idtecnico = save( $_GET['idtecnico'] );
$orario = save( $_GET['orario'] );
$dayDelta = save( $_GET['dayDelta'] );
$timeStart = save( $_GET['timeStart'] );
$timeEnd = save( $_GET['timeEnd'] );
$id = save( $_GET['id'] );
//Aggiornamento prezzo totale
$q = "SELECT idtecnico , in_interventi_tecnici.idstatointervento FROM in_interventi_tecnici
INNER JOIN in_interventi ON in_interventi_tecnici.idintervento=in_interventi.idintervento
WHERE in_interventi_tecnici.idstatointervento<>'OK' and in_interventi_tecnici.id=\"".$id."\" ";
$rs = $dbo->fetchArray($q);
if (sizeof($rs)>0):
//Aggiornamento orario tecnico
$dbo->query( "UPDATE in_interventi_tecnici SET orario_inizio = \"".$timeStart."\", orario_fine = \"".$timeEnd."\" WHERE id=\"".$id."\"" );
echo "ok";
else:
echo "Attività completata, non è possibile modificarla!";
endif;
break;
case "get_more_info":
$idintervento = save( $_GET['idintervento'] );
$idtecnico = save( $_GET['idtecnico'] );
$orario = save( $_GET['orario'] );
$dayDelta = save( $_GET['dayDelta'] );
$timeStart = save( $_GET['timeStart'] );
$timeEnd = save( $_GET['timeEnd'] );
$id = save( $_GET['id'] );
//Lettura dati intervento di riferimento
$query = "SELECT in_interventi_tecnici.descrizione_att, in_interventi_tecnici.idintervento, in_interventi.id, idtecnico, orario_inizio, orario_fine, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS nome_tecnico, (SELECT colore FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS colore FROM in_interventi_tecnici INNER JOIN in_interventi ON in_interventi_tecnici.idintervento=in_interventi.idintervento WHERE in_interventi_tecnici.id=\"".$id."\" ".$additional_where['Interventi'];
$rs = $dbo->fetchArray($query);
$n = sizeof($rs);
$idintervento = $rs[0]['idintervento'];
$riga_tecnico = "";
for( $i=0; $i<$n; $i++ ){
$riga_tecnico .= "".$rs[$i]['nome_tecnico'];
$descrizione_att .= "".$rs[$i]['descrizione_att'];
$riga_tecnico .= " (".readDateTime($rs[$i]['orario_inizio'])." alle ".readDateTimePrint($rs[$i]['orario_fine'],time).")";
}
//Lettura dati intervento
$query = "SELECT *, idstatointervento AS parent_idstato, idtipointervento AS parent_idtipo, (SELECT descrizione FROM in_statiintervento WHERE idstatointervento=parent_idstato) AS stato, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=parent_idtipo) AS tipo, (SELECT nomesede FROM an_sedi WHERE id=idsede) AS sede, (SELECT idzona FROM an_anagrafiche WHERE idanagrafica=in_interventi.idanagrafica) AS idzona FROM in_interventi LEFT JOIN an_anagrafiche ON in_interventi.idanagrafica=an_anagrafiche.idanagrafica WHERE in_interventi.idintervento=\"$idintervento\" ".$additional_where['Interventi'];
$rs = $dbo->fetchArray( $query );
$desc_tipointervento = $rs[0]['tipo'];
$tooltip_text = "<b>Numero intervento</b>: ".$idintervento."<br/>";
$tooltip_text .= "<b>Ragione sociale</b>: ".fix_str($rs[0]['ragione_sociale'])."<br/>";
if ($rs[0]['telefono']!="")
$tooltip_text.="<b>Telefono</b>: ".fix_str($rs[0]['telefono'])."<br/>";
if ($rs[0]['cellulare']!="")
$tooltip_text.="<b>Cellulare</b>: ".fix_str($rs[0]['cellulare'])."<br/>";
if ( ($rs[0]['indirizzo']!="") or ($rs[0]['citta']!="") or ($rs[0]['provincia']!="") )
$tooltip_text.="<b>Indirizzo</b>: ".fix_str($rs[0]['indirizzo']." ".$rs[0]['citta']." (".$rs[0]['provincia'].")")."<br/>";
if ($rs[0]['note']!="")
$tooltip_text.="<b>Note</b>: ".fix_str($rs[0]['note'])."<br/>";
$tooltip_text.="<b>Data richiesta</b>: ".date( 'd/m/Y', strtotime($rs[0]['data_richiesta']) )."<br/>";
$tooltip_text.="<b>Tipo intervento</b>: ".fix_str($desc_tipointervento)."<br/>";
$tooltip_text.="<b>Tecnico:</b> ".$riga_tecnico."<br/>";
if ($descrizione_att!="")
$tooltip_text.="<b>Richiesta</b>: ".fix_str($descrizione_att)."<br/>";
echo $tooltip_text;
break;
}
?>