%s |
%s |
%s |
%s |
%s |
%s |
';
$query = "select a.entrada_pausa, a.saida_pausa, (coalesce(a.saida_pausa, now()) - a.entrada_pausa) as duracao, b.id, b.motivo,
extract(EPOCH FROM (a.saida_pausa - a.entrada_pausa)) as dura_segundos,
case when(
(a.id = (select max(id)
from pbx_eventos_agentes
where entrada_pausa::date = a.entrada_pausa::date
and matricula = a.matricula
and id_dac = a.id_dac
)) and ((select count(*) from pbx_supervisor_agentes where matricula = '$matricula' and status = 'PAUSA') > 0)
)then 1 else 0 end as em_pausa,
a.pausa_produtiva, a.pausa_produtiva_obs
from pbx_eventos_agentes a, pbx_motivos_pausas b
where b.id = a.id_motivo_pausa
and entrada_pausa::date = now()::date
and matricula = '$matricula' ";
//if(IsAdmin()) echo $query;
$result = pg_query($dbcon, $query);
$numrow = 0;
$linhas = "";
$duracaoTotal = 0;
$duraProd = 0;
$duraNormal = 0;
$numProd = 0;
$numNormal = 0;
while ($row = pg_fetch_array($result)) {
$linhas .= sprintf($linha, $row["entrada_pausa"], $row["saida_pausa"], $row["duracao"], ($row["em_pausa"] ? ('*' . $row["motivo"]) : $row["motivo"]), $row["pausa_produtiva"] ? 'Sim' : 'Não', $row["pausa_produtiva_obs"]);
$duracaoTotal += $row["dura_segundos"];
if ($row["pausa_produtiva"]) {
$duraProd += $row["dura_segundos"];
$numProd++;
} else {
$duraNormal += $row["dura_segundos"];
$numNormal++;
}
$numrow++;
}
$duracaoTotal = SecondToStrTime($duracaoTotal);
$duraProd = SecondToStrTime($duraProd);
$duraNormal = SecondToStrTime($duraNormal);
$linha = "
Totalização |
[ Produtiva: $duraProd ($numProd) ] [ Não Produtiva: $duraNormal ($numNormal) ] [ Total: $duracaoTotal ($numrow) ] |
*Em pausa neste momento |
";
$linhas .= $linha;
$smarty->assign('linhas', $linhas);
GetTemplate($smarty, $nomeTpl);
?>