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.
155 lines
7.4 KiB
155 lines
7.4 KiB
<?php |
|
|
|
$tpl = 'pesquisa/pesquisaLibera.htm'; |
|
$numReg = 0; |
|
$colspan = 8; |
|
$msg = "Selecione os parametros desejados e clique em consultar!"; |
|
$erro = ""; |
|
$janW = 500; |
|
$janH = 200; |
|
$isDelete = isset($_GET["idDelete"]) ? $_GET["idDelete"] : 0; |
|
|
|
$paramPesquisa = isset($_REQUEST['paramPesquisa']) ? $_REQUEST['paramPesquisa'] : ''; |
|
$filtro = isset($_REQUEST["paramPesquisa"]) ? trim($_REQUEST["paramPesquisa"]) : ''; |
|
$filtroNovo = !isset($_REQUEST["pgn"]) ? '' : sprintf("¶mPesquisa%s&pgn=%s&bloco=%s&pg=%s", $_REQUEST["paramPesquisa"], $_REQUEST["pgn"], $_REQUEST["bloco"], $_REQUEST["pg"]); |
|
$recontaPag = ($acao == 'inseri') || $isDelete || isset($_POST['pesquisa']); |
|
$org_id = GetOrganizacao(); |
|
/* |
|
* Atribui valore default para as datas. |
|
*/ |
|
$date_default = new DateTime(); |
|
$date_default->sub(new DateInterval("P7D")); |
|
$dataIniDef = $date_default->format("d/m/Y"); |
|
$dataFimDef = date('d/m/Y'); |
|
$dataIni = (isset($_REQUEST["dataIni"]) && is_date($_REQUEST["dataIni"])) ? $_REQUEST["dataIni"] : ''; |
|
$dataFim = (isset($_REQUEST["dataFim"]) && is_date($_REQUEST["dataFim"])) ? $_REQUEST["dataFim"] : ''; |
|
|
|
$imgNovo = "<img src=\"imgSite/novoUser.png\" width=\"16\" height=\"16\" border=\"0\" title=\"Inclui nova pesquisa!\" align=\"absmiddle\">"; |
|
$imgNovo = "<a href=\"javaScript:NovaJanela('index.php?idProg=186&pl_id=0', 'pesquisaCadLiberacao', '$janW', '$janH', 'resizable=NO,scrollbars=YES');\">$imgNovo Nova Liberação</a>"; |
|
|
|
if ($isDelete) { |
|
try { |
|
/* |
|
* Verifica se já existe movimentações para a pesquisa. |
|
*/ |
|
$nomePesquisa = $_GET["pl_descricao"]; |
|
$query = "SELECT (case when(exists(select '' from pbx_pesquisa_movimento where pl_id = '$isDelete'))then 1 else 0 end) as pp_bloqueado "; |
|
$result = pg_query($dbcon, $query); |
|
if (!$result) { |
|
GeraExcept("Não foi possível verificar a pesquisa: $nomePesquisa!"); |
|
} |
|
|
|
$dados = pg_fetch_array($result); |
|
$deleta = $dados["pp_bloqueado"]; |
|
if ($deleta) { |
|
GeraExcept("Não é possível excluir a liberação para a pesquisa: $nomePesquisa! Já existe movimentação para a mesma."); |
|
} |
|
|
|
$query = "begin"; |
|
$result = pg_query($dbcon, $query); |
|
if (!$result) { |
|
GeraExcept("Não foi possível iniciar a exclusão da liberação: $nomePesquisa!"); |
|
} |
|
|
|
$query = "DELETE FROM pbx_pesquisa_liberacao_dacs WHERE pl_id = '$isDelete'"; |
|
$result = pg_query($dbcon, $query); |
|
if (!$result) { |
|
GeraExcept("Não foi possível deletar a liberacao: $nomePesquisa! Erro ao remover DACS."); |
|
} |
|
|
|
$query = "DELETE FROM pbx_pesquisa_liberacao WHERE pl_id = '$isDelete'"; |
|
$result = pg_query($dbcon, $query); |
|
if (!$result) { |
|
GeraExcept("Não foi possível deletar a liberação: $nomePesquisa! Erro ao remover liberação."); |
|
} |
|
|
|
$query = "commit"; |
|
$result = pg_query($dbcon, $query); |
|
if (!$result) { |
|
GeraExcept("Não foi possível deletar a liberação: $nomePesquisa! Erro ao gravar operação no banco de dados."); |
|
} |
|
|
|
Alert("Remoção concluida com sucesso!"); |
|
} catch (Exception $ex) { |
|
pg_query($dbcon, "rollback"); |
|
Alert($ex->getMessage()); |
|
} |
|
} |
|
|
|
$compl = ''; |
|
if (isset($_REQUEST['paramPesquisa']) && $_REQUEST['paramPesquisa']) { |
|
$compl = PreparaLike($filtro, true); |
|
$compl = sprintf("and (a.pl_descricao ilike %s or b.pp_nome ilike %s)", $compl, $compl); |
|
} |
|
|
|
$compl .= " AND a.org_id = $org_id "; |
|
|
|
$query = "SELECT pl_id, a.pp_id, pl_data, pl_descricao, pl_data_inicio, pl_data_fim, pl_ativa, b.pp_nome, |
|
(case when(exists(select '' from pbx_pesquisa_movimento where pl_id = a.pl_id))then 1 else 0 end) as pl_bloqueado |
|
FROM pbx_pesquisa_liberacao a, pbx_pesquisa b |
|
WHERE b.pp_id = a.pp_id"; |
|
$query .= $dataIni && $dataFim ? sprintf(" and pl_data >= '%s' and pl_data <= '%s' ", FormatDtMssql($dataIni), FormatDtMssql($dataFim)) : ''; |
|
$query .= " {$compl} ORDER BY a.data_reg DESC"; |
|
|
|
//if(IsAdmin()) echo $query; |
|
$params = "¶mPesquisa=$filtro&dataIni=$dataIni&dataFim=$dataFim"; |
|
$links = PaginaDados($idProg, $query, $params, $regPagina, $offSet, $pagMostra, true); |
|
$query .= " limit $regPagina offset $offSet"; |
|
$result = pg_query($dbcon, $query); |
|
while ($dados = pg_fetch_array($result)) { |
|
$pp_id = $dados["pp_id"]; |
|
$pl_id = $dados["pl_id"]; |
|
$pl_data = FormataDataDbDataDisplay($dados["pl_data"]); |
|
$pl_descricao = $dados["pl_descricao"]; |
|
$pl_data_inicio = FormataDataDbDataDisplay($dados["pl_data_inicio"]); |
|
$pl_data_fim = FormataDataDbDataDisplay($dados["pl_data_fim"]); |
|
$pl_ativa = $dados["pl_ativa"]; |
|
$block = $dados["pl_bloqueado"]; |
|
$pp_nome = $dados["pp_nome"]; |
|
/* Opeeracoes */ |
|
$imgEdit = "<img src=\"imgSite/editaUser.png\" width=\"16\" height=\"16\" border=\"0\" title=\"Edita a liberação: $pl_descricao\">"; |
|
$imgEdit = "<a href=\"javaScript:NovaJanela('index.php?idProg=186&pl_id=$pl_id', 'pesquisaCadLibera', '$janW', '$janH', 'resizable=NO,scrollbars=YES');\"> $imgEdit</a>"; |
|
|
|
$imgYes = "<img src=\"imgSite/stAprovado.png\" width=\"12\" height=\"12\ border=\"0\">"; |
|
$imgNo = "<img src=\"imgSite/no.gif\" width=\"12\" height=\"12\ border=\"0\">"; |
|
$imgDelete = "<img src=\"imgSite/deletaUser.png\" width=\"16\" height=\"16\" border=\"0\" title=\"Apaga liberação: $pl_descricao\">"; |
|
$pl_ativa = $pl_ativa ? $imgYes : $imgNo; |
|
$imgDac = '<img src="imgSite/phone16.png" border="0" title="Dacs">'; |
|
$imgDac = "<a href=\"javaScript:NovaJanela('index.php?idProg=183&pl_id=$pl_id&pl_descricao=$pl_descricao', 'pesquisaDac', '550', '250', 'resizable=NO,scrollbars=NO');\">$imgDac</a>"; |
|
$imgBlock = "<img src=\"imgSite/cadeado.gif\" width=\"12\" height=\"12\ border=\"0\">"; |
|
$imgDelete = $block ? $imgBlock : sprintf("<a href=\"javaScript:DeletaPesquisaLibera('%s', '%s', '$params');\">%s</a>", $pl_id, $pl_descricao, $imgDelete); |
|
|
|
$linha .= trim("<tr> |
|
<td align=\"center\">$pl_id</td> |
|
<td align=\"left\">$pl_descricao</td> |
|
<td align=\"left\">$pp_id - $pp_nome</td> |
|
<td width=\"80\" align=\"center\">$pl_data</td> |
|
<td width=\"80\" align=\"center\">$pl_data_inicio</td> |
|
<td width=\"80\" align=\"center\">$pl_data_fim</td> |
|
<td width=\"20\" align=\"center\">$pl_ativa</td> |
|
<td width=\"40\" align=\"center\">$imgEdit $imgDelete $imgDac</td> |
|
</tr>"); |
|
$imp++; |
|
} |
|
|
|
|
|
$smarty->assign("linha", $linha); |
|
$smarty->assign("erro", $erro); |
|
$smarty->assign("dacs", $dacs); |
|
$smarty->assign("dataIni", $dataIni); |
|
$smarty->assign("dataFim", $dataFim); |
|
$smarty->assign("paramPesquisa", $paramPesquisa); |
|
$smarty->assign("imgNovo", $imgNovo); |
|
$smarty->assign("links", $links); |
|
$smarty->assign("pagMostra", $pagMostra); |
|
$smarty->assign("totalReg", $totalReg); |
|
$smarty->assign("pgn", $_REQUEST["pgn"]); |
|
$smarty->assign("bloco", $_REQUEST["bloco"]); |
|
$smarty->assign("pg", $_REQUEST["pg"]); |
|
|
|
//$jsJQuery[] = "\$('#userLogin').change(function(){limpaEspaco(this);}) "; |
|
//$jsJQuery[] = "\$('#penalidade').keyup(function(){somenteNumeros(this);}) "; |
|
$jsJQuery[] = "\$('#dataIni').keypress(function(){formataDataHora(this);}) "; |
|
$jsJQuery[] = "\$('#dataFim').keypress(function(){formataDataHora(this);}) "; |
|
|
|
GetTemplate($smarty, $tpl);
|
|
|