Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */
session_start();
include "../../includes/include_geral.inc.php";
include "../../includes/include_geral_II.inc.php";
$hoje = date("Y-m-d H:i:s");
$destaque = false;
$cor = TD_COLOR;
$cor1 = TD_COLOR;
$percLimit = 20;
//Tolerância em percentual
$imgSlaR = 'sla1.png';
$imgSlaS = 'checked.png';
$dtS = new dateOpers();
//objeto para Solução
$dtR = new dateOpers();
//objeto para Resposta
?>
<script type="text/javascript">
	function popup(pagina)	{ //Exibe uma janela popUP
		x = window.open(pagina,'popup','dependent=yes,width=400,height=200,scrollbars=yes,statusbar=no,resizable=yes');
		x.moveTo(window.parent.screenX+100, window.parent.screenY+100);
		return false
	}

	function popup_alerta(pagina)	{ //Exibe uma janela popUP
		x = window.open(pagina,'_blank','dependent=yes,width=700,height=470,scrollbars=yes,statusbar=no,resizable=yes');
		x.moveTo(window.parent.screenX+50, window.parent.screenY+50);
		return false
	}
</script>
Example #2
0
 //Verifica se o status 'atual' já foi gravado na tabela 'tempo_status' , em caso positivo, atualizo o tempo, senão devo gravar ele pela primeira vez.
 $sql_ts_anterior = "select * from tempo_status where ts_ocorrencia = " . $rowABS['numero'] . " and ts_status = " . $rowABS['status_cod'] . " ";
 $exec_sql = mysql_query($sql_ts_anterior);
 if ($exec_sql == 0) {
     $error = " erro 1" . $sql_ts_anterior;
 }
 $achou = mysql_num_rows($exec_sql);
 if ($achou > 0) {
     //esse status já esteve setado em outro momento
     $row_ts = mysql_fetch_array($exec_sql);
     // if (array_key_exists($rowABS['sistema'],$H_horarios)){  //verifica se o código da área possui carga horária definida no arquivo config.inc.php
     // $areaT = $rowABS['sistema']; //Recebe o valor da área de atendimento do chamado
     // } else $areaT = 1; //Carga horária default definida no arquivo config.inc.php
     $areaT = "";
     $areaT = testaArea($areaT, $rowABS['area_cod'], $H_horarios);
     $dt = new dateOpers();
     $dt->setData1($row_ts['ts_data']);
     $dt->setData2(date('Y-m-d H:i:s'));
     $dt->tempo_valido($dt->data1, $dt->data2, $H_horarios[$areaT][0], $H_horarios[$areaT][1], $H_horarios[$areaT][2], $H_horarios[$areaT][3], "H");
     $segundos = $dt->diff["sValido"];
     //segundos válidos
     $sql_upd = "update tempo_status set ts_tempo = (ts_tempo+" . $segundos . ") , ts_data ='" . date('Y-m-d H:i:s') . "' where ts_ocorrencia = " . $rowABS['numero'] . " and\n\t\t\t\t\t\t\tts_status = " . $rowABS['status_cod'] . " ";
     $exec_upd = mysql_query($sql_upd);
     if ($exec_upd == 0) {
         $error .= " erro 2";
     }
 } else {
     $sql_ins = "insert into tempo_status (ts_ocorrencia, ts_status, ts_tempo, ts_data) values (" . $rowABS['numero'] . ", " . $rowABS['status_cod'] . ", 0, '" . date('Y-m-d H:i:s') . "' )";
     $exec_ins = mysql_query($sql_ins);
     if ($exec_ins == 0) {
         $error .= " erro 3 " . $sql_ins;
<META HTTP-EQUIV='Refresh' CONTENT="120; URL=abertura_user.php?action=listall">
<script type="text/javascript">
	function popup(pagina)	{ //Exibe uma janela popUP
		x = window.open(pagina,'popup','dependent=yes,width=400,height=200,scrollbars=yes,statusbar=no,resizable=yes');
		x.moveTo(window.parent.screenX+100, window.parent.screenY+100);
		return false
	}
</script>
<?php 
include 'includes/header.php';
?>
</head>
<?php 
$dt = new dateOpers();
//Criado o objeto $dt
$dta = new dateOpers();
$cor = TD_COLOR;
$cor1 = TD_COLOR;
$cor3 = BODY_COLOR;
$percLimit = 20;
//Tolerância em percentual
$imgSlaR = 'sla1.png';
$imgSlaS = 'checked.png';
print "<br>";
//Todas as áreas que o usuário percente
$uareas = $_SESSION['s_area'];
if ($_SESSION['s_uareas']) {
    $uareas .= "," . $_SESSION['s_uareas'];
}
$query = "SELECT a.*, u.*, ar.* from usuarios u, avisos a left join sistemas ar on a.area = ar.sis_id where (a.area in (" . $uareas . ") or a.area=-1) and a.origem=u.user_id and upper(a.status) = 'ALTA'";
$resultado = mysql_query($query) or die(TRANS('ERR_QUERY') . $query);
 //MEDIAS DE SOLUÇÃO
 $perc_ate_sla2 = round($sla_green * 100 / $linhas, 2);
 $perc_ate_sla3 = round($sla_yellow * 100 / $linhas, 2);
 $perc_mais_sla3 = round($sla_red * 100 / $linhas, 2);
 $perc_sla16 = round($c_slaS_16h * 100 / $linhas, 2);
 //MEDIAS DE RESPOSTA
 $perc_ate_slaR2 = round($slaR_green * 100 / $linhas, 2);
 $perc_ate_slaR3 = round($slaR_yellow * 100 / $linhas, 2);
 $perc_mais_slaR3 = round($slaR_red * 100 / $linhas, 2);
 $slaR2M = $slaR2 / 60;
 $slaR3M = $slaR3 / 60;
 #####################################################################################
 //TOTAL DE HORAS VÁLIDAS NO PERÍODO:
 $area = 1;
 //Padrao
 $dt = new dateOpers();
 $dt->setData1($d_ini_completa);
 $dt->setData2($d_fim_completa);
 $dt->tempo_valido($dt->data1, $dt->data2, $H_horarios[$area][0], $H_horarios[$area][1], $H_horarios[$area][2], $H_horarios[$area][3], "H");
 $hValido = $dt->diff["hValido"] + 1;
 //Como o período passado não é arredondado (xx/xx/xx 23:59:59) é necessário arrendondar o total de horas.
 ####################################################################################
 print "</table>";
 print "<table align='center'>";
 print "  <tr><td colspan =4></td><td class='line'></td></tr>";
 print "  <tr><td colspan=4 align=center><b>Período: " . $d_ini . " a " . $d_fim . "</b></td></tr>";
 print "  <tr><td colspan=4 align=center><b>Total de horas válidas no período: " . $hValido . "</b></td></tr>";
 print "  <tr><td colspan='4' align='center'><b>Total de chamados fechados no período: {$linhas}.</b></td></tr>";
 print "  <tr><td colspan =4></td></tr>";
 print "<tr><td class='line'><b>Resposta em até " . $slaR2M . " minutos:</b></TD><td class='line'><font color=" . $corSla1 . "> {$slaR_green} chamados = </font></TD><td class='line'><font color=" . $corSla1 . ">{$perc_ate_slaR2}%</font></td><td class='line'></td></tr>";
 print "<tr><td class='line'><b>Resposta em até " . $slaR3M . " minutos:</b></TD><td class='line'><font color=" . $corSla2 . "> {$slaR_yellow} chamados = </font></TD><td class='line'><font color=" . $corSla2 . ">{$perc_ate_slaR3}%</font></td><td class='line'></td></tr>";
Example #5
0
	<?

	print "</head>";
	$auth = new auth;
	
	//COLOCAR AQUI O TITULO PARA SER EXIBIDO NA TELA

	//DIV PARA MOSTRAR OS HINTS
	print "<div id='bubble_tooltip'>";
		print "<div class='bubble_top'><span></span></div>";
		print "<div class='bubble_middle'><span id='bubble_tooltip_content'></span></div>";
		print "<div class='bubble_bottom'></div>";
	print "</div>";


	$dt = new dateOpers; //Criado o objeto $dt
	$dta = new dateOpers;

	$cor  = TD_COLOR;
	$cor1 = TD_COLOR;
	$cor3 = BODY_COLOR;

        $percLimit = 20; //Tolerância em percentual
        $imgSlaR = 'sla1.png';
        $imgSlaS = 'checked.png';

	//Todas as áreas que o usuário percente
	$uareas = $_SESSION['s_area'];
	if ($_SESSION['s_uareas']) {
		$uareas.=",".$_SESSION['s_uareas'];
	}
             $data = $row['data'];
             //só preciso dessa data se o chamado não estiver encerrado!!
         }
     } else {
         //.....//
     }
     $codStatAtual = $row['codStatAtual'];
     $statAtual = $row['status_atual'];
     if ($row['codStat'] != $row['codStatAtual']) {
         //vou imprimir o status atual fora do loop
         print "<tr><td class='line'>" . $row['status'] . "</td><td class='line'>" . $row['tempo'] . "</td></tr>";
     } else {
         $tempoSecStatAtual = $row['total'];
     }
 }
 $dt = new dateOpers();
 $tempoHoraStatAtual = "";
 if ($codStatAtual == 4) {
     //encerrada
     $tempoHora = $dt->secToHour($tempoTotalSec);
 } else {
     //chamados ainda não encerrados
     $areaChamado = 1;
     $dt->setData1($data);
     $dt->setData2($hoje);
     $dt->tempo_valido($dt->data1, $dt->data2, $H_horarios[$areaChamado][0], $H_horarios[$areaChamado][1], $H_horarios[$areaChamado][2], $H_horarios[$areaChamado][3], "H");
     $segundos = $dt->diff["sValido"];
     //segundos válidos
     $tempoHoraStatAtual = $dt->secToHour($segundos + $tempoSecStatAtual);
     $tempoHora = $dt->secToHour($segundos + $tempoTotalSec);
 }
     $media_solucao_valida = $dtS->secToHour(floor($total_sol_valido / $linhas));
     //MEDIAS DE SOLUÇÃO
     $perc_ate_sla2 = round($sla_green * 100 / $linhas, 2);
     $perc_ate_sla3 = round($sla_yellow * 100 / $linhas, 2);
     $perc_mais_sla3 = round($sla_red * 100 / $linhas, 2);
     //MEDIAS DE RESPOSTA
     $perc_ate_slaR2 = round($slaR_green * 100 / $linhas, 2);
     $perc_ate_slaR3 = round($slaR_yellow * 100 / $linhas, 2);
     $perc_mais_slaR3 = round($slaR_red * 100 / $linhas, 2);
 }
 $query_hw_sla = "select o.numero, o.data_abertura, o.data_atendimento, o.data_fechamento, " . "o.sistema as cod_area, s.sistema " . "from ocorrencias as o, sistemas as s " . "where o.status=4 and s.sis_id=o.sistema and o.sistema in (" . $HW . ") and " . "o.data_fechamento >= '" . $d_ini_completa . "' and o.data_fechamento <= '" . $d_fim_completa . "' and " . "o.data_atendimento is not null order by o.data_abertura";
 $exec_hw_sla = mysql_query($query_hw_sla);
 $linhas_hw = mysql_num_rows($exec_hw_sla);
 $dtS_hw = new dateOpers();
 //solução
 $dtR_hw = new dateOpers();
 //resposta
 $sla_green_hw = 0;
 $sla_red_hw = 0;
 $sla_yellow_hw = 0;
 while ($row = mysql_fetch_array($exec_hw_sla)) {
     // if (array_key_exists($row['cod_area'],$H_horarios)){  //verifica se o código da área possui carga horária definida no arquivo config.inc.php
     // $area = $row['cod_area']; //Recebe o valor da área de atendimento do chamado
     // } else $area = 1; //Carga horária default definida no arquivo config.inc.php
     $area = testaArea($area, $row['cod_area'], $H_horarios);
     $dtS_hw->setData1($row['data_abertura']);
     $dtS_hw->setData2($row['data_fechamento']);
     $dtS_hw->tempo_valido($dtS_hw->data1, $dtS_hw->data2, $H_horarios[$area][0], $H_horarios[$area][1], $H_horarios[$area][2], $H_horarios[$area][3], "H");
     $dtR_hw->setData1($row['data_abertura']);
     $dtR_hw->setData2($row['data_atendimento']);
     $dtR_hw->tempo_valido($dtR_hw->data1, $dtR_hw->data2, $H_horarios[$area][0], $H_horarios[$area][1], $H_horarios[$area][2], $H_horarios[$area][3], "H");
 print "<tr><td colspan=5><b>MÉDIAS -></td><td class='line'><b>{$media_resposta_valida}</td><td class='line'><B>{$media_solucao_valida}</td></tr>";
 //MEDIAS DE SOLUÇÃO
 $perc_ate_sla2 = round($sla_green * 100 / $linhas, 2);
 $perc_ate_sla3 = round($sla_yellow * 100 / $linhas, 2);
 $perc_mais_sla3 = round($sla_red * 100 / $linhas, 2);
 //MEDIAS DE RESPOSTA
 $perc_ate_slaR2 = round($slaR_green * 100 / $linhas, 2);
 $perc_ate_slaR3 = round($slaR_yellow * 100 / $linhas, 2);
 $perc_mais_slaR3 = round($slaR_red * 100 / $linhas, 2);
 $slaR2M = $slaR2 / 60;
 $slaR3M = $slaR3 / 60;
 #####################################################################################
 //TOTAL DE HORAS VÁLIDAS NO PERÍODO:
 $area_fixa = 1;
 //Padrao
 $dt = new dateOpers();
 $dt->setData1($_GET['ini']);
 $dt->setData2($_GET['end']);
 $dt->tempo_valido($dt->data1, $dt->data2, $H_horarios[$area_fixa][0], $H_horarios[$area_fixa][1], $H_horarios[$area_fixa][2], $H_horarios[$area_fixa][3], "H");
 $hValido = $dt->diff["hValido"] + 1;
 //Como o período passado não é arredondado (xx/xx/xx 23:59:59) é necessário arrendondar o total de horas.
 ####################################################################################
 print "</table>";
 ##TRANSFORMAÇÕES DOS ARRAYS
 $numerosRed = putComma($chamadosSred);
 $numerosYellow = putComma($chamadosSyellow);
 $numerosGreen = putComma($chamadosSgreen);
 $numerosRred = putComma($chamadosRred);
 $numerosRyellow = putComma($chamadosRyellow);
 $numerosRgreen = putComma($chamadosRgreen);
 ## QUADROS DE ESTATÍSTICAS
 $row_config = mysql_fetch_array($execConfig);
 ##TRATANDO O STATUS ANTERIOR
 //Verifica se o status 'atual' já foi gravado na tabela 'tempo_status' , em caso positivo, atualizo o tempo, senão devo gravar ele pela primeira vez.
 //$sql_ts_anterior = "select * from tempo_status where ts_ocorrencia = ".$rowAT['numero']." and ts_status = ".$row_config['conf_schedule_status']." ";
 $sql_ts_anterior = "select * from tempo_status where ts_ocorrencia = " . $rowAT['numero'] . " and ts_status = " . $rowAT['status_cod'] . " ";
 $exec_sql = mysql_query($sql_ts_anterior);
 if ($exec_sql == 0) {
     $error = " erro 1";
 }
 $achou = mysql_num_rows($exec_sql);
 if ($achou > 0) {
     //esse status já esteve setado em outro momento
     $row_ts = mysql_fetch_array($exec_sql);
     $areaT = "";
     $areaT = testaArea($areaT, $rowAT['area_cod'], $H_horarios);
     $dt = new dateOpers();
     $dt->setData1($row_ts['ts_data']);
     //$dt->setData2(date("Y-m-d H:i:s"));  //SUBSTITUÍ date("Y-m-d H:i:s") POR $rowAT['data_abertura']
     $dt->setData2($rowAT['data_abertura']);
     $dt->tempo_valido($dt->data1, $dt->data2, $H_horarios[$areaT][0], $H_horarios[$areaT][1], $H_horarios[$areaT][2], $H_horarios[$areaT][3], "H");
     $segundos = $dt->diff["sValido"];
     //segundos válidos
     //$sql_upd = "update tempo_status set ts_tempo = (ts_tempo+".$segundos.") , ts_data ='".date("Y-m-d H:i:s")."' where ts_ocorrencia = ".$rowAT['numero']." and
     //ts_status = ".$row_config['conf_schedule_status']." ";
     $sql_upd = "update tempo_status set ts_tempo = (ts_tempo+" . $segundos . ") , ts_data ='" . $rowAT['data_abertura'] . "' where ts_ocorrencia = " . $rowAT['numero'] . " and\n\t\t\t\t\t\tts_status = " . $rowAT['status_cod'] . " ";
     $exec_upd = mysql_query($sql_upd);
     if ($exec_upd == 0) {
         $error .= " erro 2";
     }
 } else {
     //$sql_ins = "insert into tempo_status (ts_ocorrencia, ts_status, ts_tempo, ts_data) values (".$rowAT['numero'].", ".$row_config['conf_schedule_status'].", 0, '".date("Y-m-d H:i:s")."' )";