%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,
a.org_id,
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 org_id = a.org_id
))
AND ((
SELECT
count(*)
FROM
pbx_supervisor_agentes
WHERE
matricula = '$matricula'
AND org_id = a.org_id
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'
AND a.org_id = $org_id;";
//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);
?>