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.
111 lines
3.9 KiB
111 lines
3.9 KiB
<?php |
|
|
|
$tpLayout = 1; |
|
$plId = $_REQUEST["pl_id"]; |
|
$plDescricao = $_REQUEST["pl_descricao"]; |
|
|
|
|
|
if (isset($_POST["btIncDac"])) { |
|
$dacs = $_POST["dacs"]; |
|
@pg_query($dbcon, 'begin'); |
|
foreach ($dacs as $idDac) { |
|
$query = "insert into pbx_pesquisa_liberacao_dacs(pl_id, id_dac ) |
|
select '$plId', '$idDac' |
|
where not exists(select '' from pbx_pesquisa_liberacao_dacs where id_dac = '$idDac' and pl_id = '$plId')"; |
|
$result = pg_query($dbcon, $query); |
|
if (!$result) |
|
break; |
|
} |
|
|
|
if ($result) { |
|
@pg_query($dbcon, 'commit'); |
|
$msg = "<span style=\"color: #0000FF\">Operação realizada com sucesso!</span>"; |
|
} else { |
|
@pg_query($dbcon, 'rollback'); |
|
$erroDb = pg_last_error($dbcon); |
|
$msg = "<span style=\"color: #FF0000\">A operação não pode realizada!" . ($erroDb ? (" Erro: " . $erroDb) : "") . "</span>"; |
|
} |
|
} else if (isset($_POST["btRmDac"])) { |
|
$dacs = $_POST["dacsInc"]; |
|
@pg_query($dbcon, 'begin'); |
|
foreach ($dacs as $idDac) { |
|
$query = "delete from pbx_pesquisa_liberacao_dacs where id_dac = '$idDac' and pl_id = '$plId' "; |
|
$result = pg_query($dbcon, $query); |
|
if (!$result) break; |
|
|
|
$query = "update pbx_queues_grupos set id_pesquisa_liberacao = null where id = '{$idDac}' and id_pesquisa_liberacao = '{$plId}'"; |
|
$result = pg_query($dbcon, $query); |
|
if (!$result) break; |
|
} |
|
|
|
if ($result) { |
|
@pg_query($dbcon, 'commit'); |
|
$msg = "<span style=\"color: #0000FF\">Operação realizada com sucesso!</span>"; |
|
} else { |
|
@pg_query($dbcon, 'rollback'); |
|
$erroDb = pg_last_error($dbcon); |
|
$msg = "<span style=\"color: #FF0000\">A operação não pode realizada!" . ($erroDb ? (" Erro: " . $erroDb) : "") . "</span>"; |
|
} |
|
} |
|
|
|
|
|
$dacs = GetDacPesqClas($dbcon, $plId); |
|
$dacsIncs = GetDacPesqClasInc($dbcon, $plId); |
|
|
|
$smarty->assign("pl_id", $plId); |
|
$smarty->assign("pl_descricao", $plDescricao); |
|
$smarty->assign("dacs", $dacs); |
|
$smarty->assign("dacsIncs", $dacsIncs); |
|
$smarty->assign("erro", $msg); |
|
GetTemplate($smarty, 'pesquisa/pesquisaDacs.htm'); |
|
|
|
function GetDacPesqClas($dbcon, $plId) { |
|
$query = "select distinct id, nome as nome, 'Receptivo' as tipo |
|
from pbx_dacs d |
|
where status = 'A' |
|
and id not in(select id_dac from pbx_pesquisa_liberacao_dacs where pl_id = $plId and id_dac = d.id) |
|
order by 2"; |
|
|
|
|
|
//echo $query; |
|
$result = pg_query($dbcon, $query); |
|
$dacs = "<select name=\"dacs[]\" id=\"dacs\" size=\"6\" multiple=\"multiple\" style=\"width:250px;\" >"; |
|
|
|
while ($dados = pg_fetch_row($result)) { |
|
$dacs .= "<option value=\"$dados[0]\" $sel>$dados[1]</option>"; |
|
$cont++; |
|
} |
|
$dacs .= "</select>"; |
|
return $dacs; |
|
} |
|
|
|
function GetDacPesqClasInc($dbcon, $plId) { |
|
/* |
|
* Carrega lista de dacs disponivel |
|
* para ser inserdo entre as tags <select></select> |
|
*/ |
|
|
|
$isAdm = (IsAdmin() && !$matricula); |
|
$matricula = GetMatricula(); |
|
|
|
|
|
|
|
$query = "select distinct id, nome as nome, 'Receptivo' as tipo |
|
from pbx_dacs d |
|
where status = 'A' |
|
and id in(select id_dac from pbx_pesquisa_liberacao_dacs where pl_id = $plId and id_dac = d.id) |
|
order by 2"; |
|
|
|
//echo $query; |
|
$result = pg_query($dbcon, $query); |
|
$dacs = "<select name=\"dacsInc[]\" id=\"dacsInc\" size=\"6\" multiple=\"multiple\" style=\"width:250px;\" >"; |
|
|
|
while ($dados = pg_fetch_row($result)) { |
|
$dacs .= "<option value=\"$dados[0]\" $sel>$dados[1]</option>"; |
|
$cont++; |
|
} |
|
$dacs .= "</select>"; |
|
return $dacs; |
|
} |
|
|
|
?>
|
|
|