158 lines
7.2 KiB
PHP
158 lines
7.2 KiB
PHP
|
<?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;
|
||
|
|
||
|
}
|
||
|
?>
|