%s"; $idClas = isset($_REQUEST['listaClas']) ? $_REQUEST['listaClas'] : 0; $idItem = isset($_REQUEST['listaItem']) ? $_REQUEST['listaItem'] : 0; $regCad = array(); if (isset($_GET['audio'])) { $file = $_GET["audio"]; $filepath = VerificaCharFinal($_SESSION[SS_PRM_PATH_AUDIO]) . $file; if (!@file_get_contents($filepath)) { $jsStartup[] = "alert('Arquivo não encontrado!');"; } else { DownloadAudio($file, $filepath); exit; } } if (IsPostBack() && isset($_POST['bt_classifica'])) { $msg = ''; $clas = $idClas; $clasItem = $idItem; $regClass = isset($_POST['sel']) ? $_POST['sel'] : []; if (!count($regClass)) { $msg = "Selecione pelo menos um registro!"; $jsStartup[] = "alert('$msg');"; } else { $result = pg_query($dbcon, "begin"); if (!$result) { $msg = "Não foi possível inicar uma transação no banco de dados!"; } else { $regMat = array(); foreach ($regClass as $value) { $reg = explode("|", $value); $matricula = $reg[0]; $uniqueid = $reg[1]; $regCad[] = $uniqueid; if (!$clas || !$clasItem) { $msg = "Selecione uma classificação!"; } if (!$msg) { /* * Esta informações são utilizadas no relatorio de abandonadas na fila para identificar * qdo o agente não esta recdebendo uma chamada por não ter classificado a mesma estando * portanto desabilitado de receber chamadas o que pode causar abandono. */ $matUser = GetMatricula(); $query = "update pbx_registra_classificacao set rgc_saida = now(), matricula_reg = '$matUser' where uid = '$uniqueid' and rgc_saida is null"; pg_query($dbcon, $query); $query = "insert into pbx_classifica_reg(matricula, clas_id, clit_id, id_bilhetes, id_dac, contrib_id, mun_id) values(%s, %s, %s, %s, %s, '0', '0' )"; $query = sprintf($query, QuotedStr($matricula), QuotedStr($clas), QuotedStr($clasItem), QuotedStr($uniqueid), QuotedStr($idDac)); $result = pg_query($dbcon, $query); if (array_search($matricula, $regMat) === false) { @GetUrl(AST_REM_PAUSA, $dac, $matricula); $regMat[] = $matricula; } if (!$result) { $msg = "Não foi possível registrar a classificação!"; } } } if (!$msg) { $msg = "Registros classificados com sucesso!"; pg_query($dbcon, "commit"); } else { pg_query($dbcon, "rollback"); } $jsStartup[] = "alert('$msg');"; } } } $dataIni = date('d/m/Y'); $dataFim = date('d/m/Y'); if (isset($_POST['btConsulta'])) { if (!is_date($_POST["dataIni"]) || !is_date($_POST["dataFim"])) { $jsStartup[] = "alert('Datas inválidas, verifique e tente novamente!');"; } else { $dataIni = $_POST["dataIni"]; $dataFim = $_POST["dataFim"]; } } $dtIni = FormatDtMssql($dataIni); $dtFim = FormatDtMssql($dataFim); $query = sprintf("select id_bilhetes, data_bilhete, calldate, origem, destino, uniqueid, fila, agente, nome_agente, audio,(strtoint(tempo_atendimento) * interval '1 second')as tempo_atendimento, evento " . " from pbx_nao_classificado where fila = %s and data_bilhete >= %s and data_bilhete <= %s ", QuotedStr($dac), QuotedStr($dtIni), QuotedStr($dtFim)); $result = pg_query($dbcon, $query); $linhas = ''; $imp = 0; $downloadAudio = VerificaPerfilAcesso($dbcon, GetIdProgFromNomeArq('downloadAudio.php')); $acessoAudio = GetAcessoAudio($dac); while ($dados = pg_fetch_array($result)) { $uid = $dados["uniqueid"]; $agt = $dados["agente"]; $agtNomte = $dados["nome_agente"]; $dt = FormataDBDataHora($dados["calldate"]); $duracao = $dados["tempo_atendimento"]; $fone = array_search($dados["evento"], array('COMPLETEAGENT', 'COMPLETECALLER', 'COMPLETECALLERRAMAL', 'TRANSFER')) !== false ? $dados["origem"] : $dados["destino"]; $audio = $dados["audio"]; $sel = array_search($uid, $regCad) !== false ? 'checked="checked"' : ''; $check = sprintf("", $agt, $uid, $sel); if (!$downloadAudio || IsAdmin() || !$acessoAudio) { if (IsAdmin()) { $msgAudio = "Usuário Administrador não tem permissão para acessar áudios!"; } else { $msgAudio = "Este usuário não possui permissões para acessar áudios!"; } $audio = sprintf("", $msgAudio); } else { $audio = "" . "" . ""; } $linha = sprintf(" $check $agt/$agtNomte $dt $duracao %s $audio ", ocultarTelefone($fone)); $linhas .= $linha; $imp++; } $jsJQuery[] = "\$('#dataIni').keypress(function(){formataDataHora(this);}) "; $jsJQuery[] = "\$('#dataFim').keypress(function(){formataDataHora(this);}) "; $clas = GetClassificacao($dbcon, $idClas, $idDac); $clasItem = GetItem($dbcon, $idClas, $idItem); if (!$imp) $linhas = sprintf($linhaSumario, "Nenum registro encontrado!"); $smarty->assign("linhas", $linhas); $smarty->assign("classifica", $clas); $smarty->assign("clas_item", $clasItem); $smarty->assign("dac", $dac); $smarty->assign("idDac", $idDac); $smarty->assign("dataFim", $dataFim); $smarty->assign("dataIni", $dataIni); GetTemplate($smarty, $nomeTpl); } else { $idClas = $_GET['idItem']; echo GetItem($dbcon, $idClas, 0); } ?>