@ -1,7 +1,8 @@
<?php
<?php
include_once 'util/relatoriosBase.php';
include_once 'util/relatoriosBase.php';
// error_reporting(E_ALL);
// ini_set('display_errors', 1);
class RelClassificacaoDetalhes extends Relatorios {
class RelClassificacaoDetalhes extends Relatorios {
private $___classificacao;
private $___classificacao;
@ -117,8 +118,9 @@ class RelClassificacaoDetalhes extends Relatorios {
$srv = $this->___servico;
$srv = $this->___servico;
$mostraColunaServicos = GetUsoServico() == RELATORIO_SERVICOS_HABILITA;
$mostraColunaServicos = GetUsoServico() == RELATORIO_SERVICOS_HABILITA;
$query = "SELECT " . ( $mostraColunaServicos ? "coalesce(s.serv_id, 'Não Informado') as serv_id," : "" ) . " calldate, apelido, src AS origem, dst AS destino, f.nome, clas_descricao, clit_descricao,tplg_descricao,
$query = "SELECT b.id AS reg_class_id,
CASE WHEN (g.conf_uid < > '' AND g.conf_discado = 1) THEN 'S' ELSE 'N' END AS discador
a.uniqueid, " . ( $mostraColunaServicos ? "coalesce(s.serv_id, 'Não Informado') as serv_id," : "" ) . " calldate, apelido, src AS origem, dst AS destino, f.nome, clas_descricao, clit_descricao,tplg_descricao,
CASE WHEN (g.conf_uid < > '' AND g.conf_discado = 1) THEN 'S' ELSE 'N' END AS discador, b.id_dac as id_dac, a.uniqueid as uniqueid, b.clas_id, b.clit_id, b.data_reg
FROM pbx_bilhetes a
FROM pbx_bilhetes a
INNER JOIN pbx_tipo_ligacao h ON h.tplg_codigo = a.tipo_chamada
INNER JOIN pbx_tipo_ligacao h ON h.tplg_codigo = a.tipo_chamada
INNER JOIN pbx_classifica_reg b ON a.uniqueid = b.id_bilhetes AND a.calldate = (SELECT MAX(calldate) FROM pbx_bilhetes WHERE uniqueid = b.id_bilhetes)
INNER JOIN pbx_classifica_reg b ON a.uniqueid = b.id_bilhetes AND a.calldate = (SELECT MAX(calldate) FROM pbx_bilhetes WHERE uniqueid = b.id_bilhetes)
@ -205,7 +207,7 @@ class RelClassificacaoDetalhes extends Relatorios {
);
);
$dadosField = array(
$dadosField = array(
'call date',
'data_r eg ',
'origem',
'origem',
'destino',
'destino',
'apelido',
'apelido',
@ -237,7 +239,7 @@ class RelClassificacaoDetalhes extends Relatorios {
$row['clit_descricao'] = RemoveAcentos($row['clit_descricao']);
$row['clit_descricao'] = RemoveAcentos($row['clit_descricao']);
$row['clas_descricao'] = RemoveAcentos($row['clas_descricao']);
$row['clas_descricao'] = RemoveAcentos($row['clas_descricao']);
$row['tplg_descricao'] = explode(' ', $row['tplg_descricao'])[0];
$row['tplg_descricao'] = explode(' ', $row['tplg_descricao'])[0];
$row['call date'] = date('d/m/Y H:i:s', strtotime($row['call date']));
$row['data_r eg '] = date('d/m/Y H:i:s', strtotime($row['data_r eg ']));
$row['origem'] = ocultarTelefone($row['origem']);
$row['origem'] = ocultarTelefone($row['origem']);
$row['destino'] = ocultarTelefone($row['destino']);
$row['destino'] = ocultarTelefone($row['destino']);
// Formata linha de dados.
// Formata linha de dados.
@ -291,7 +293,7 @@ class RelClassificacaoDetalhes extends Relatorios {
);
);
$dadosField = array(
$dadosField = array(
'call date',
'data_r eg ',
'origem',
'origem',
'destino',
'destino',
'apelido',
'apelido',
@ -332,7 +334,7 @@ class RelClassificacaoDetalhes extends Relatorios {
$row['clit_descricao'] = RemoveAcentos($row['clit_descricao']);
$row['clit_descricao'] = RemoveAcentos($row['clit_descricao']);
$row['clas_descricao'] = RemoveAcentos($row['clas_descricao']);
$row['clas_descricao'] = RemoveAcentos($row['clas_descricao']);
$row['tplg_descricao'] = explode(' ', $row['tplg_descricao'])[0];
$row['tplg_descricao'] = explode(' ', $row['tplg_descricao'])[0];
$row['call date'] = date('d/m/Y H:i:s', strtotime($row['call date']));
$row['data_r eg '] = date('d/m/Y H:i:s', strtotime($row['data_r eg ']));
$row['origem'] = ocultarTelefone($row['origem']);
$row['origem'] = ocultarTelefone($row['origem']);
$row['destino'] = ocultarTelefone($row['destino']);
$row['destino'] = ocultarTelefone($row['destino']);
@ -354,9 +356,6 @@ class RelClassificacaoDetalhes extends Relatorios {
$dataRel = array();
$dataRel = array();
$mostraColunaServicos = GetUsoServico() == RELATORIO_SERVICOS_HABILITA;
$mostraColunaServicos = GetUsoServico() == RELATORIO_SERVICOS_HABILITA;
$editaClassificacao = "< a href = \"javaScript:NovaJanela('index.php?idProg=367&pbxRequest=1&dac=ALMOXARIFADO_SGP&idDac=', ' jneditaClassificado ' , ' 505 ' , ' 210 ' , ' resizable = YES,scrollbars=YES');\" >
< img src = \"imgSite/class16.png\" width = \"16\" border = \"0\" height = \"16\" title = \"Não há chamados a classificar nesta data ! \ "
alt=\"Não há chamados a classificar nesta data!\" align=\"absmiddle\">< / a > ";
$dadosCabecalio = array(
$dadosCabecalio = array(
'Data/Hora' => 'align="center"',
'Data/Hora' => 'align="center"',
@ -367,27 +366,20 @@ class RelClassificacaoDetalhes extends Relatorios {
'Item' => 'align="center"',
'Item' => 'align="center"',
'Tipo' => 'align="center"',
'Tipo' => 'align="center"',
'Discador' => 'align="Center"',
'Discador' => 'align="Center"',
'Editar Classificação' => 'align="Center"'
);
);
$dadosField = array(
$dadosField = array(
'call date' => 'align="center"',
'data_r eg ' => 'align="center"',
'origem' => 'align="left"',
'origem' => 'align="left"',
'destino' => 'align="left"',
'destino' => 'align="left"',
'apelido' => 'align="left"',
'apelido' => 'align="left"',
'clas_descricao' => 'align="left"',
'clas_descricao' => 'align="left"',
'clit_descricao' => 'align="center"',
'clit_descricao' => 'align="center"',
'tplg_descricao' => 'align="center"',
'tplg_descricao' => 'align="center"',
'discador' => 'align="Center"'
'discador' => 'align="Center"',
);
if (IsAdmin()){
$dadosCabecalio += [
'Editar Classificação' => 'align="Center"'
];
$dadosField += [
'editarClassificacao' => 'align="Center"'
'editarClassificacao' => 'align="Center"'
];
);
}
if ($mostraColunaServicos) {
if ($mostraColunaServicos) {
$dadosCabecalio = array_merge(['Serviço' => 'align="center"'], $dadosCabecalio);
$dadosCabecalio = array_merge(['Serviço' => 'align="center"'], $dadosCabecalio);
@ -430,7 +422,7 @@ class RelClassificacaoDetalhes extends Relatorios {
$oldSrv = $srv;
$oldSrv = $srv;
}
}
if ((($srv != $oldSrv)) || !$row) {
if ((($srv != $oldSrv)) || !$row) {
$dataRel[] = sprintf("< tr > < th colspan = \"7 \" align = \"center\" { $ style } > Total [%s] < / th > < th colspan = \"2\" align = \"right\" { $ style } > %s< / th > < / tr > ", $oldSrv, $somaServico);
$dataRel[] = sprintf("< tr > < th colspan = \"8 \" align = \"center\" { $ style } > Total [%s] < / th > < th colspan = \"2\" align = \"right\" { $ style } > %s< / th > < / tr > ", $oldSrv, $somaServico);
$oldSrv = $srv;
$oldSrv = $srv;
$somaServico = 0;
$somaServico = 0;
}
}
@ -443,17 +435,21 @@ class RelClassificacaoDetalhes extends Relatorios {
* Linhas de dados.
* Linhas de dados.
*/
*/
foreach ($this->GetData()[0] as $row) {
foreach ($this->GetData()[0] as $row) {
$editaClassificacao = sprintf("< a href = \"javaScript:NovaJanela('index.php?idProg=367&pbxRequest=1&wipeSessionParameter=1&idDac=%s&listaClas=%s&listaItem=%s®ClassId=%s', ' jneditaClassificado ' , ' 0 ' , ' 0 ' , ' resizable = no,location=no,scrollbars=no');\" >
< img src = \"imgSite/class16.png\" width = \"16\" border = \"0\" height = \"16\" title = \"Clique para editar esta classificação . \ "
alt=\"Clique para editar esta classificação.\" align=\"absmiddle\">< / a > ", $row['id_dac'], $row['clas_id'], $row['clit_id'], $row['reg_class_id']);
if ($mostraColunaServicos) {
if ($mostraColunaServicos) {
$agrupaServico($row);
$agrupaServico($row);
}
}
$somaReg ++;
$somaReg ++;
$row["call date"] = date('d/m/Y H:i:s', strtotime($row["call date"]));
$row["data_r eg "] = date('d/m/Y H:i:s', strtotime($row["data_r eg "]));
$row['tplg_descricao'] = explode(' ', $row['tplg_descricao'])[0];
$row['tplg_descricao'] = explode(' ', $row['tplg_descricao'])[0];
$row['origem'] = ocultarTelefone($row['origem']);
$row['origem'] = ocultarTelefone($row['origem']);
$row['destino'] = ocultarTelefone($row['destino']);
$row['destino'] = ocultarTelefone($row['destino']);
$row['editarClassificacao'] = $editaClassificacao;
$row['editarClassificacao'] = $editaClassificacao;
// Formata linha de dados.
// Formata linha de dados.
$linha = "< tr > ";
$linha = "< tr > ";
foreach ($dadosField as $key => $value) {
foreach ($dadosField as $key => $value) {
@ -465,10 +461,10 @@ class RelClassificacaoDetalhes extends Relatorios {
/*
/*
* Linha de totalizacao.
* Linha de totalizacao.
*/
*/
$colspan = 6 ;
$colspan = 7 ;
if ($mostraColunaServicos) {
if ($mostraColunaServicos) {
$agrupaServico(false);
$agrupaServico(false);
$colspan = 7 ;
$colspan = 8 ;
}
}
$linha = '< tr > < th colspan = "' .$colspan . '" align = "left" > Total [ Chamadas Periodo ]: %s< / th > < th colspan = "2" align = "right" > Registros: %s< / th > < / tr > ';
$linha = '< tr > < th colspan = "' .$colspan . '" align = "left" > Total [ Chamadas Periodo ]: %s< / th > < th colspan = "2" align = "right" > Registros: %s< / th > < / tr > ';
@ -505,7 +501,7 @@ class RelClassificacaoDetalhes extends Relatorios {
'Discador' => 'C',
'Discador' => 'C',
);
);
$dadosField = array(
$dadosField = array(
'call date' => 'C',
'data_r eg ' => 'C',
'origem' => 'C',
'origem' => 'C',
'destino' => 'C',
'destino' => 'C',
'apelido' => 'C',
'apelido' => 'C',
@ -537,7 +533,7 @@ class RelClassificacaoDetalhes extends Relatorios {
$perc = !$somaChmTotal ? 0 : (($somaServico / $somaChmTotal) * 100.0);
$perc = !$somaChmTotal ? 0 : (($somaServico / $somaChmTotal) * 100.0);
$data = [];
$data = [];
$data['serv_id'] = "TOTAL[$oldSrv]";
$data['serv_id'] = "TOTAL[$oldSrv]";
$data['call date'] = ' ';
$data['data_r eg '] = ' ';
$data['origem'] = ' ';
$data['origem'] = ' ';
$data['apelido'] = ' ';
$data['apelido'] = ' ';
$data['clas_descricao'] = ' ';
$data['clas_descricao'] = ' ';
@ -562,7 +558,7 @@ class RelClassificacaoDetalhes extends Relatorios {
}
}
$somaReg ++;
$somaReg ++;
$row['call date'] = date('d/m/Y H:i:s', strtotime($row['call date']));
$row['data_r eg '] = date('d/m/Y H:i:s', strtotime($row['data_r eg ']));
$row['tplg_descricao'] = explode(' ', $row['tplg_descricao'])[0];
$row['tplg_descricao'] = explode(' ', $row['tplg_descricao'])[0];
$row['origem'] = ocultarTelefone($row['origem']);
$row['origem'] = ocultarTelefone($row['origem']);
$row['destino'] = ocultarTelefone($row['destino']);
$row['destino'] = ocultarTelefone($row['destino']);