forked from SimplesIP/pabx-app
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
107 lines
4.2 KiB
107 lines
4.2 KiB
<?php |
|
|
|
/* |
|
* Function interna |
|
*/ |
|
|
|
function GetPesquisaRel($db, $plId, $matricula = null) { |
|
$ret = ""; |
|
$sel = ""; |
|
$query = sprintf("SELECT DISTINCT a.pl_id, pl_descricao, pl_data_inicio, pl_data_fim, b.pp_id, b.pp_nome |
|
FROM pbx_pesquisa_liberacao a |
|
INNER JOIN pbx_pesquisa b ON a.pp_id = b.pp_id |
|
INNER JOIN pbx_pesquisa_movimento f ON a.pp_id = f.pp_id |
|
INNER JOIN pbx_usuarios c ON matricula = f.user_reg |
|
INNER JOIN pbx_grupo_usuario d ON d.user_id = c.id |
|
INNER JOIN pbx_fila_grupos e ON e.gp_id = d.gp_id |
|
WHERE EXISTS(SELECT '' FROM pbx_pesquisa_movimento WHERE pl_id = a.pl_id AND e.id = id_dac) |
|
%s", $matricula ? "and c.matricula = '$matricula'" : ""); |
|
$result = pg_query($db, $query); |
|
|
|
if (!$plId) { |
|
$ret = '<option value="0" selected="selected">---------------------</option>'; |
|
} |
|
|
|
while ($linhaBd = pg_fetch_array($result)) { |
|
$id = sprintf('%s|%s|%s|%s|%s|%s', $linhaBd["pl_id"], $linhaBd["pl_descricao"], FormataDataDbDataDisplay($linhaBd["pl_data_inicio"]), FormataDataDbDataDisplay($linhaBd["pl_data_fim"]), $linhaBd["pp_id"], $linhaBd["pp_nome"]); |
|
$sel = $plId == $linhaBd["pl_id"] ? 'selected="selected"' : ""; |
|
$ret .= sprintf('<option value="%s" %s>%s</option>', RemoveAcentos($id), $sel, $linhaBd["pl_descricao"]); |
|
} |
|
return $ret; |
|
} |
|
|
|
function GetDadosPesq($db, $lst, &$plId, &$plDescricao, &$ppId, &$ppNome, &$datas) { |
|
$dados = explode("|", $lst); |
|
$plId = $dados[0]; |
|
$plDescricao = $dados[1]; |
|
$datas[0] = $dados[2]; |
|
$datas[1] = $dados[3]; |
|
$ppId = $dados[4]; |
|
$ppNome = $dados[5]; |
|
} |
|
|
|
function GetPesquisaDac($db, $idDac) { |
|
$ret = ""; |
|
$sel = ""; |
|
$login = GetLogin(); |
|
$login = IsAdmin() ? "apelido" : "'$login'"; |
|
$query = " select distinct id_dac, nome_dac |
|
from pbx_usuarios_dacs a |
|
where apelido = $login |
|
and exists(select '' from pbx_pesquisa_movimento where id_dac = a.id_dac)"; |
|
|
|
$result = pg_query($db, $query); |
|
$numRows = pg_num_rows($result); |
|
|
|
//if(IsAdmin())echo $query; |
|
if ((!$idDac) && ($numRows > 1)) { |
|
$ret = '<option value="0" selected="selected">---------------------</option>'; |
|
} |
|
|
|
while ($linhaBd = pg_fetch_array($result)) { |
|
$id = $linhaBd["id_dac"]; |
|
$sel = ($idDac == $linhaBd["id_dac"]) || ($numRows == 1) ? 'selected="selected"' : ""; |
|
$ret .= sprintf('<option value="%s" %s>%s</option>', $id, $sel, $linhaBd["nome_dac"]); |
|
} |
|
return $ret; |
|
} |
|
|
|
function GetPesquisaAgente($db, $plId, $matricula, $idDac, $dtIni, $dtFim, $incTodos = false) { |
|
$ret = ""; |
|
$sel = ""; |
|
$dataIni = soNumero($dtIni) == "" ? "null" : "'$dtIni'"; |
|
$dataFim = soNumero($dtFim) == "" ? "null" : "'$dtFim'"; |
|
$idDac = !$idDac ? "null" : $idDac; |
|
$plId = !$plId ? "null" : $plId; |
|
$query = "select matricula, apelido |
|
from pbx_usuarios a |
|
where exists |
|
(select '' |
|
from pbx_pesquisa_movimento |
|
where pl_id = coalesce($plId,pl_id) |
|
and id_dac = coalesce($idDac, id_dac) |
|
and user_reg = a.matricula |
|
and pm_data >= coalesce($dataIni, pm_data) |
|
and pm_data <= coalesce($dataFim, pm_data) |
|
) order by apelido"; |
|
|
|
$result = pg_query($db, $query); |
|
//if(IsAdmin())echo $query; |
|
if (!$plId) |
|
$sel = "selected=\"selected\""; |
|
if ($incTodos) { |
|
$ret = "<option value=\"0\" $sel>Todos</option>"; |
|
} |
|
$mat = $matricula; |
|
while ($linhaBd = pg_fetch_array($result)) { |
|
$id = $linhaBd["matricula"]; |
|
$sel = ($matricula == $linhaBd["matricula"]) ? 'selected="selected"' : ""; |
|
$ret .= sprintf('<option value="%s" %s>%s</option>', $id, $sel, $linhaBd["apelido"]); |
|
$mat = 1; |
|
} |
|
if (!$mat) |
|
$ret = '<option value="0" selected="selected">---------------------</option>'; |
|
return $ret; |
|
} |
|
|
|
?>
|
|
|