@ -3,14 +3,15 @@
$tpLayout = 1;
$tpLayout = 1;
$clasId = $_REQUEST["clas_id"];
$clasId = $_REQUEST["clas_id"];
$clasDesc = $_REQUEST["clas_descricao"];
$clasDesc = $_REQUEST["clas_descricao"];
$org_id = $_SESSION['SSEmpresaPadrao'];
if (isset($_POST["btIncDac"])) {
if (isset($_POST["btIncDac"])) {
$dacs = $_POST["dacs"];
$dacs = $_POST["dacs"];
pg_query($dbcon, 'begin');
pg_query($dbcon, 'begin');
foreach ($dacs as $idDac) {
foreach ($dacs as $idDac) {
$query = "INSERT INTO pbx_classifica_dacs(clas_id, id_dac )
$query = "INSERT INTO pbx_classifica_dacs(clas_id, id_dac, org_id )
SELECT '$clasId', '$idDac'
SELECT '$clasId', '$idDac', $org_id
WHERE NOT EXISTS(SELECT '' FROM pbx_classifica_dacs WHERE id_dac = '$idDac' AND clas_id = '$clasId')";
WHERE NOT EXISTS(SELECT '' FROM pbx_classifica_dacs WHERE id_dac = '$idDac' AND clas_id = '$clasId' AND org_id = $org_id )";
$result = pg_query($dbcon, $query);
$result = pg_query($dbcon, $query);
if (!$result) {
if (!$result) {
break;
break;
@ -29,7 +30,7 @@ if (isset($_POST["btIncDac"])) {
$dacs = $_POST["dacsInc"];
$dacs = $_POST["dacsInc"];
pg_query($dbcon, 'begin');
pg_query($dbcon, 'begin');
foreach ($dacs as $idDac) {
foreach ($dacs as $idDac) {
$query = "DELETE FROM pbx_classifica_dacs WHERE id_dac = '$idDac' AND clas_id = '$clasId' ";
$query = "DELETE FROM pbx_classifica_dacs WHERE id_dac = '$idDac' AND clas_id = '$clasId' AND org_id = $org_id ";
$result = pg_query($dbcon, $query);
$result = pg_query($dbcon, $query);
if (!$result) {
if (!$result) {
break;
break;
@ -46,8 +47,8 @@ if (isset($_POST["btIncDac"])) {
}
}
}
}
$dacs = GetDacClas($dbcon, $clasId);
$dacs = GetDacClasGeneric ($dbcon, $clasId, true, "dacs[]", "dacs" );
$dacsIncs = GetDacClasInc($dbcon, $clasId );
$dacsIncs = GetDacClasGeneric($dbcon, $clasId, false, "dacsInc[]", "dacsInc" );
GetDac($dbcon, $codDac);
GetDac($dbcon, $codDac);
@ -58,46 +59,23 @@ $smarty->assign("dacsIncs", $dacsIncs);
$smarty->assign("erro", $msg);
$smarty->assign("erro", $msg);
GetTemplate($smarty, 'cadastros/classificaAtendimento/classificacaoDacs.htm');
GetTemplate($smarty, 'cadastros/classificaAtendimento/classificacaoDacs.htm');
function GetDacClas($dbcon, $clasId)
function GetDacClasGeneric ($dbcon, $clasId, $useNotIn, $selectName, $select Id)
{
{
/*
/*
* Carrega lista de dacs disponivel
* Carrega lista de dacs disponivel
* para ser inserdo entre as tags < select > < / select >
* para ser inserdo entre as tags < select > < / select >
*/
*/
$org_id = GetOrganizacao();
$org_id = GetOrganizacao();
$inCondition = $useNotIn ? 'NOT IN' : 'IN';
$query = "SELECT DISTINCT id, nome AS nome, 'Receptivo' AS tipo
$query = "SELECT DISTINCT id, nome AS nome, 'Receptivo' AS tipo
FROM pbx_queues_grupos d
FROM pbx_queues_grupos d
WHERE status = 'A'
WHERE status = 'A'
AND org_id = $org_id
AND org_id = $org_id
AND id NOT IN (SELECT id_dac FROM pbx_classifica_dacs WHERE clas_id = $clasId)
AND id $inCondition (SELECT id_dac FROM pbx_classifica_dacs WHERE clas_id = $clasId)
ORDER BY 2";
ORDER BY 2";
$result = pg_query($dbcon, $query);
$result = pg_query($dbcon, $query);
$dacs = "< select name = \"dacs[]\" id = \"dacs\" size = \"6\" multiple = \"multiple\" style = \"width:250px;\" > ";
$dacs = "< select name = \"$selectName\" id = \"$selectId\" size = \"6\" multiple = \"multiple\" style = \"width:250px;\" > ";
while ($dados = pg_fetch_row($result)) {
$dacs .= "< option value = \"$dados[0]\" > " . RemoveExibicaoOrg($dados[1]) . "< / option > ";
}
$dacs .= "< / select > ";
return $dacs;
}
function GetDacClasInc($dbcon, $clasId)
{
/*
* Carrega lista de dacs disponivel
* para ser inserdo entre as tags < select > < / select >
*/
$org_id = GetOrganizacao();
$query = "SELECT DISTINCT id, nome AS nome, 'Receptivo' AS tipo
FROM pbx_queues_grupos d
WHERE status = 'A'
AND org_id = $org_id
AND id IN(SELECT id_dac FROM pbx_classifica_dacs WHERE clas_id = $clasId)
ORDER BY 2";
$result = pg_query($dbcon, $query);
$dacs = "< select name = \"dacsInc[]\" id = \"dacsInc\" size = \"6\" multiple = \"multiple\" style = \"width:250px;\" > ";
while ($dados = pg_fetch_row($result)) {
while ($dados = pg_fetch_row($result)) {
$dacs .= "< option value = \"$dados[0]\" > " . RemoveExibicaoOrg($dados[1]) . "< / option > ";
$dacs .= "< option value = \"$dados[0]\" > " . RemoveExibicaoOrg($dados[1]) . "< / option > ";