@ -10,6 +10,7 @@
private $__pesquisa;
private $__pesquisa;
private $__filtro;
private $__filtro;
private $___servico;
private $___servico;
private $__tronco;
public function __construct($idProg, $dbcon, $incDac) {
public function __construct($idProg, $dbcon, $incDac) {
parent::__construct($idProg, $dbcon, $incDac);
parent::__construct($idProg, $dbcon, $incDac);
@ -19,6 +20,7 @@
$this->__classificacao = isset($_POST["classificacao"]) ? $_POST["classificacao"] : '';
$this->__classificacao = isset($_POST["classificacao"]) ? $_POST["classificacao"] : '';
$this->__pesquisa = isset($_POST["pesquisa"]) ? $_POST["pesquisa"] : '';
$this->__pesquisa = isset($_POST["pesquisa"]) ? $_POST["pesquisa"] : '';
$this->___servico = isset($_POST["listaServico"]) ? $_POST["listaServico"] : 0;
$this->___servico = isset($_POST["listaServico"]) ? $_POST["listaServico"] : 0;
$this->__tronco = isset($_POST["tronco"]) ? $_POST["tronco"] : 0;
}
}
function ___FiltrosRelatorio() {
function ___FiltrosRelatorio() {
@ -84,6 +86,7 @@
$class = $this->__classificacao ? "checked" : '';
$class = $this->__classificacao ? "checked" : '';
$pesq = $this->__pesquisa ? "checked" : '';
$pesq = $this->__pesquisa ? "checked" : '';
$tronco = $this->__tronco ? "checked" : '';
$filtro .= sprintf('< td > '
$filtro .= sprintf('< td > '
. '< table > '
. '< table > '
@ -91,9 +94,10 @@
. '< div class = "geral" > '
. '< div class = "geral" > '
. '< input name = "classificacao" id = "tipoLigacao" type = "checkbox" size = "15" class = "clean" % s value = "classificacao" / > Classificação & nbsp'
. '< input name = "classificacao" id = "tipoLigacao" type = "checkbox" size = "15" class = "clean" % s value = "classificacao" / > Classificação & nbsp'
. '< input name = "pesquisa" id = "tipoLigacao" type = "checkbox" size = "15" class = "clean" % s value = "pesquisa" / > Pesquisa & nbsp'
. '< input name = "pesquisa" id = "tipoLigacao" type = "checkbox" size = "15" class = "clean" % s value = "pesquisa" / > Pesquisa & nbsp'
. '< input name = "tronco" id = "tipoLigacao" type = "checkbox" size = "15" class = "clean" % s value = "tronco" / > Tronco & nbsp'
. '< / div > '
. '< / div > '
. '< / td > < / tr > '
. '< / td > < / tr > '
. '< / table > < / td > ', $class, $pesq);
. '< / table > < / td > ', $class, $pesq, $tronco );
$filtro .= '< / tr > ';
$filtro .= '< / tr > ';
/*
/*
@ -116,10 +120,10 @@
$ambos = $this->__tipoLigacao == 0 ? "checked" : "";
$ambos = $this->__tipoLigacao == 0 ? "checked" : "";
$filtro .= sprintf('< td > '
$filtro .= sprintf('< td > '
. '< table > < tr > < td > < div class = "geral" > '
. '< table > < tr > < td > < div class = "geral" > '
. '< input name = "tipoLigacao" id = "tipoLigacao" type = "radio" size = "15 " class = "clean" % s value = "2" / > Entrada & nbsp'
. '< input name = "tipoLigacao" id = "tipoLigacao" type = "radio" size = "50" style = "margin-left: 25px; " class = "clean" % s value = "2" / > Entrada & nbsp'
. '< input name = "tipoLigacao" id = "tipoLigacao" type = "radio" size = "15 " class = "clean" % s value = "3" / > Saída & nbsp'
. '< input name = "tipoLigacao" id = "tipoLigacao" type = "radio" size = "50" style = "margin-left: 25px; " class = "clean" % s value = "3" / > Saída & nbsp'
. '< input name = "tipoLigacao" id = "tipoLigacao" type = "radio" size = "15 " class = "clean" % s value = "0" / > Ambos'
. '< input name = "tipoLigacao" id = "tipoLigacao" type = "radio" size = "50" style = "margin-left: 25px; " class = "clean" % s value = "0" / > Ambos'
. '< / div > < / td > < / tr > < / table > '
. '< / div > < / td > < / tr > < / table > '
. '< / td > ', $entrada, $saida, $ambos);
. '< / td > ', $entrada, $saida, $ambos);
$filtro .= '< td > < input type = "submit" name = "btConsulta" id = "btConsulta" value = "Consultar" > < / td > ';
$filtro .= '< td > < input type = "submit" name = "btConsulta" id = "btConsulta" value = "Consultar" > < / td > ';
@ -155,15 +159,18 @@
WHERE a.data_reg::DATE >= '$dataIni' AND a.data_reg::DATE < = '$dataFim'
WHERE a.data_reg::DATE >= '$dataIni' AND a.data_reg::DATE < = '$dataFim'
GROUP BY a.uniqueid) AS pesq ON pesq.uniqueid = a.uniqueid" : '';
GROUP BY a.uniqueid) AS pesq ON pesq.uniqueid = a.uniqueid" : '';
$servico = GetUsoServico() ? " \nLEFT JOIN pbx_servicos_registra sr ON sr.uniqueid = a.uniqueid" : '';
$servico = GetUsoServico() ? "\n LEFT JOIN pbx_servicos_registra sr ON sr.uniqueid = a.uniqueid" : '';
$tronco = $this->__tronco ? "\n LEFT JOIN pbx_troncos pt ON a.channel LIKE CONCAT('%', pt.nome, '%') OR a.dstchannel LIKE CONCAT('%', pt.nome, '%')" : '';
$columnPesq = $this->__pesquisa ? "pesquisa," : "";
$columnPesq = $this->__pesquisa ? "pesquisa," : "";
$columnClass = $this->__classificacao ? "classificacao," : "";
$columnClass = $this->__classificacao ? "classificacao," : "";
$columnServico = GetUsoServico() ? "coalesce(sr.serv_id, ' - ') as servico," : '';
$columnServico = GetUsoServico() ? "coalesce(sr.serv_id, ' - ') as servico," : '';
$columnTronco = $this->__tronco ? "coalesce(pt.nome, ' - ') as tronco," : "";
$query = "SELECT calldate, protocolo, src, dst, tplg_descricao,
$query = "SELECT calldate, protocolo, src, dst, tplg_descricao, $columnTronco
CASE WHEN(ed.evento = 'ABANDON')THEN strtoint(ed.param3) ELSE a.billsec END AS tempo_atendimento,
CASE WHEN(ed.evento = 'ABANDON')THEN strtoint(ed.param3) ELSE a.billsec END AS tempo_atendimento,
userfield, fila, apelido, evento, $columnClass $columnPesq $columnServico
userfield, fila, apelido, evento, $columnClass $columnPesq $columnServico
REPLACE(SUBSTRING(retorno_cliente, POSITION('||' in retorno_cliente), 99999), '||', '') AS dados_cliente,
REPLACE(SUBSTRING(retorno_cliente, POSITION('||' in retorno_cliente), 99999), '||', '') AS dados_cliente,
CASE WHEN (abdsr_agente IS NOT NULL) THEN 'RETORNADA' ELSE '-' END AS retorno_abd
CASE WHEN (abdsr_agente IS NOT NULL) THEN 'RETORNADA' ELSE '-' END AS retorno_abd
FROM pbx_bilhetes a
FROM pbx_bilhetes a
@ -174,6 +181,7 @@
$classificacao
$classificacao
$pesquisa
$pesquisa
$servico
$servico
$tronco
LEFT JOIN pbx_abandonadas_semretorno asr ON asr.abdsr_uniqueid = a.uniqueid
LEFT JOIN pbx_abandonadas_semretorno asr ON asr.abdsr_uniqueid = a.uniqueid
LEFT JOIN pbx_integracao_reg ir ON ir.reg_uniqueid = a.uniqueid
LEFT JOIN pbx_integracao_reg ir ON ir.reg_uniqueid = a.uniqueid
LEFT JOIN pbx_queues_grupos qg ON qg.nome = ed.fila
LEFT JOIN pbx_queues_grupos qg ON qg.nome = ed.fila
@ -232,6 +240,7 @@
GetUsoServico() ? $dadosCabecalio[] = 'Servico' : '';
GetUsoServico() ? $dadosCabecalio[] = 'Servico' : '';
$this->__classificacao ? $dadosCabecalio[] = 'Classificação' : '';
$this->__classificacao ? $dadosCabecalio[] = 'Classificação' : '';
$this->__pesquisa ? $dadosCabecalio[] = 'Pesquisa' : '';
$this->__pesquisa ? $dadosCabecalio[] = 'Pesquisa' : '';
$this->__tronco ? $dadosCabecalio[] = 'Tronco' : '';
$dadosField = array(
$dadosField = array(
'calldate',
'calldate',
@ -249,6 +258,7 @@
GetUsoServico() ? $dadosField[] = 'servico' : '';
GetUsoServico() ? $dadosField[] = 'servico' : '';
$this->__classificacao ? $dadosField[] = 'classificacao' : '';
$this->__classificacao ? $dadosField[] = 'classificacao' : '';
$this->__pesquisa ? $dadosField[] = 'pesquisa' : '';
$this->__pesquisa ? $dadosField[] = 'pesquisa' : '';
$this->__tronco ? $dadosField[] = 'tronco' : '';
/*
/*
* Monta a linha de cabecalio.
* Monta a linha de cabecalio.
@ -324,6 +334,7 @@
GetUsoServico() ? $dadosCabecalio[] = 'Servico' : '';
GetUsoServico() ? $dadosCabecalio[] = 'Servico' : '';
$this->__classificacao ? $dadosCabecalio[] = 'Classificacao' : '';
$this->__classificacao ? $dadosCabecalio[] = 'Classificacao' : '';
$this->__pesquisa ? $dadosCabecalio[] = 'Pesquisa' : '';
$this->__pesquisa ? $dadosCabecalio[] = 'Pesquisa' : '';
$this->__tronco ? $dadosCabecalio[] = 'Tronco' : '';
$dadosField = array(
$dadosField = array(
'calldate',
'calldate',
@ -341,6 +352,7 @@
GetUsoServico() ? $dadosField[] = 'servico' : '';
GetUsoServico() ? $dadosField[] = 'servico' : '';
$this->__classificacao ? $dadosField[] = 'classificacao' : '';
$this->__classificacao ? $dadosField[] = 'classificacao' : '';
$this->__pesquisa ? $dadosField[] = 'pesquisa' : '';
$this->__pesquisa ? $dadosField[] = 'pesquisa' : '';
$this->__tronco ? $dadosField[] = 'tronco' : '';
/*
/*
* Monta a linha de cabecalio.
* Monta a linha de cabecalio.
@ -398,6 +410,7 @@
GetUsoServico() ? $dadosCabecalio['Serviço'] = 'align="center"' : '';
GetUsoServico() ? $dadosCabecalio['Serviço'] = 'align="center"' : '';
$this->__classificacao ? $dadosCabecalio['Classificação'] = 'align="center"' : '';
$this->__classificacao ? $dadosCabecalio['Classificação'] = 'align="center"' : '';
$this->__pesquisa ? $dadosCabecalio['Pesquisa'] = 'align="center"' : '';
$this->__pesquisa ? $dadosCabecalio['Pesquisa'] = 'align="center"' : '';
$this->__tronco ? $dadosCabecalio['Tronco'] = 'align="center"' : '';
$dadosField = array(
$dadosField = array(
'calldate' => 'align="center"',
'calldate' => 'align="center"',
@ -415,6 +428,7 @@
GetUsoServico() ? $dadosField['servico'] = 'align="center"' : '';
GetUsoServico() ? $dadosField['servico'] = 'align="center"' : '';
$this->__classificacao ? $dadosField['classificacao'] = 'align="center"' : '';
$this->__classificacao ? $dadosField['classificacao'] = 'align="center"' : '';
$this->__pesquisa ? $dadosField['pesquisa'] = 'align="center"' : '';
$this->__pesquisa ? $dadosField['pesquisa'] = 'align="center"' : '';
$this->__tronco ? $dadosField['tronco'] = 'align="center"' : '';
/*
/*
* Inicia o relatório.
* Inicia o relatório.