diff --git a/cadastros/motivosPausa/motivosPausaDelete.php b/cadastros/motivosPausa/motivosPausaDelete.php index 6def6400..9294dd64 100644 --- a/cadastros/motivosPausa/motivosPausaDelete.php +++ b/cadastros/motivosPausa/motivosPausaDelete.php @@ -8,17 +8,18 @@ require_once("bd.php"); $id = $_GET["id"] ?? "0"; $numReg = 0; +$org_id = $_SESSION['SSEmpresaPadrao']; -$query = "select count(*) from pbx_eventos_agentes where id_motivo_pausa = $id"; +$query = "select count(*) from pbx_eventos_agentes where id_motivo_pausa = $id and org_id = $org_id"; $result = pg_query($dbcon, $query); -$query1 = "SELECT * FROM pbx_motivos_pausas WHERE id = $id;"; +$query1 = "SELECT * FROM pbx_motivos_pausas WHERE id = $id AND org_id = $org_id;"; $result1 = pg_query($dbcon, $query1); $res = pg_fetch_assoc($result1); -if($id && $res['flag'] == 0){ - $query = "update pbx_motivos_pausas set flag = '1' where id = $id"; +if($id && $res['flag'] === 0){ + $query = "update pbx_motivos_pausas set flag = '1' where id = $id and org_id = $org_id"; $result = pg_query($dbcon, $query); echo "OK; Registro foi ativado."; return; @@ -33,14 +34,15 @@ if ($result) { $query = "begin"; $result = pg_query($dbcon, $query); if ($result) { - $query = "delete from pbx_motivos_pausas where id = $id"; - $result = pg_query($dbcon, $query); - } - - if ($result) { - $query = "commit"; - pg_query($dbcon, $query); - echo "OK; Registro excluido com sucesso!"; + $query = "delete from pbx_motivos_pausas where id = $id and org_id = $org_id"; + $resultDelete = pg_query($dbcon, $query); + if ($resultDelete && pg_affected_rows($resultDelete) > 0) { + $query = "commit"; + pg_query($dbcon, $query); + echo "OK; Registro excluido com sucesso!"; + }else { + echo "OK; Este registro não pode ser apagado!"; + } } else { $query = "rollback"; pg_query($dbcon, $query); diff --git a/cadastros/motivosPausa/motivosPausaInsert.php b/cadastros/motivosPausa/motivosPausaInsert.php index 84e93d51..767146e6 100644 --- a/cadastros/motivosPausa/motivosPausaInsert.php +++ b/cadastros/motivosPausa/motivosPausaInsert.php @@ -25,7 +25,7 @@ $id = 0; $flag = 0; $motivo = ""; $produtiva = 0; -$org_id = GetOrganizacao(); +$org_id = $_SESSION['SSEmpresaPadrao']; /* * Verifica se o usuario pressionou o botão para inserir @@ -37,11 +37,11 @@ if ($formAction == FORM_NEW) { if (trim($_POST["motivo"] == "")) { GetGpValues(); $msgUser = "alert('O \"Motivo\" é campo de preenchimento obrigatório!');"; - } else if (RegistroInc($dbcon, sprintf("select count(*) from pbx_motivos_pausas where upper(motivo) = %s and org_id = '%s'", QuotedStr(strtoupper($_POST["motivo"])), $org_id))) { + } else if (RegistroInc($dbcon, sprintf("select count(*) from pbx_motivos_pausas where upper(motivo) = %s and org_id = %d", QuotedStr(strtoupper($_POST["motivo"])), $org_id))) { $msgUser = sprintf("alert('O \"Motivo: %s\" já existe na base de dados!');", $_POST["motivo"]); } else { //string para inserção do registro - $query = "INSERT INTO pbx_motivos_pausas(motivo, flag, produtiva, tempo_alerta, org_id) VALUES(%s, %s, %s, %s, %s)"; + $query = "INSERT INTO pbx_motivos_pausas(motivo, flag, produtiva, tempo_alerta, org_id) VALUES(%s, %s, %s, %s, %d)"; GetGpValues(); diff --git a/cadastros/motivosPausa/motivosPausaSelect.php b/cadastros/motivosPausa/motivosPausaSelect.php index 27b79ab7..b4503781 100644 --- a/cadastros/motivosPausa/motivosPausaSelect.php +++ b/cadastros/motivosPausa/motivosPausaSelect.php @@ -20,6 +20,11 @@ $imgNovo = GetLinkFormInsert("novoMotivoPausa", 'images/novo.gif', $filtroNovo, */ $mensagemErro = ""; +/* +*Get ID Organizacao +*/ +$org_id = $_SESSION['SSEmpresaPadrao']; + $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"]); @@ -38,7 +43,8 @@ $query = "SELECT id, motivo, flag, produtiva,tempo_alerta AND upper(motivo) NOT IN('AUSENTE', 'LOGIN', 'RECUSADA') $compl - AND flag = '$active' + AND flag = '$active' + AND (org_id = $org_id OR org_id = 0) ORDER BY motivo"; $params = "¶mPesquisa=$filtro"; diff --git a/cadastros/motivosPausa/motivosPausaUpdate.php b/cadastros/motivosPausa/motivosPausaUpdate.php index ff62f21b..d5658cd1 100644 --- a/cadastros/motivosPausa/motivosPausaUpdate.php +++ b/cadastros/motivosPausa/motivosPausaUpdate.php @@ -12,6 +12,11 @@ $msgErro = ""; $setFocus = "document.getElementById('motivo').focus();"; $jsStartup[] = $setFocus; +/* +*Get ID Organizacao +*/ +$org_id = $_SESSION['SSEmpresaPadrao']; + /* * Verifica se o usuario pressionou o botão para inserir * o registro @@ -27,14 +32,18 @@ if ($formAction == FORM_UPDATE) { $msgUser = sprintf("alert('O \"Motivo: %s\" já existe na base de dados!');", $_POST["motivo"]); } else { //string para inserção do registro - $query = "update pbx_motivos_pausas set motivo = %s, flag = %s, produtiva = %s, tempo_alerta = %s where id = %d"; + $query = "update pbx_motivos_pausas set motivo = %s, flag = %s, produtiva = %s, tempo_alerta = %s where id = %d and org_id = $org_id"; //GetGpValues(null); //Prepara a query para inserir o registro no banco $query = sprintf($query, QuotedStr($motivo), QuotedStr($flag), QuotedStr($produtiva),QuotedStr($tempo_alerta), $id); $tempo_alerta = $tempo_alerta / 60; //Executa a query no banco $result = pg_query($dbcon, $query); + $num_rows = pg_num_rows($result); + if($num_rows === 0) { + goto fail; + } if ($result) { //GetGpValues(null); @@ -47,6 +56,8 @@ if ($formAction == FORM_UPDATE) { $msgErro = "A operação não pode ser realizada!Erro: $erroBd"; } } + fail: $msgUser = "alert('Não é possível alterar este motivo')"; + $jsStartup[] = "window.close();"; } if (!empty($msgUser)) @@ -66,7 +77,8 @@ GetTemplate($smarty, 'cadastros/motivosPausa/motivosPausaCadastro.tpl'); function GetGpValues($db) { if (!empty($db)) { $id = $_GET["id"] ?? "0"; - $query = "select id, motivo, flag, produtiva,tempo_alerta from pbx_motivos_pausas where id = $id"; + $org_id = $_SESSION['SSEmpresaPadrao']; + $query = "select id, motivo, flag, produtiva,tempo_alerta from pbx_motivos_pausas where id = $id and (org_id = $org_id or org_id = 0)"; $result = pg_query($db, $query); if ($result) $row = pg_fetch_array($result, $row); @@ -79,4 +91,5 @@ function GetGpValues($db) { $GLOBALS["tempo_alerta"] = empty($db) ? $_POST["tempo_alerta"] * 60 : $row["tempo_alerta"] / 60; } + ?> diff --git a/supervisor.php b/supervisor.php index 139a1b0a..8356cddc 100644 --- a/supervisor.php +++ b/supervisor.php @@ -66,7 +66,7 @@ $tbCall = ""; if (IsAjax() && isset($_GET["logoff"])) { $matrLogoff = $_GET["logoff"]; $dacLogoff = $_GET["dac"]; - $GLOBALS["ramalOperacao"] = GetRamalLogado($dbcon, $matrLogoff); + $GLOBALS["ramalOperacao"] = GetRamalLogado($dbcon, $matrLogoff, $org_id); //if(AgenteOcupado($dbcon, $matrLogoff)) //restrição removida. if (false) { echo "Esta operação não pode ser realizada quando o \"Agente Está Ocupado\"!"; @@ -78,7 +78,7 @@ if (IsAjax() && isset($_GET["logoff"])) { * Desliga a chamada corrente * e desconecta o usuario do asterisk */ - $query = "SELECT canal, canal_transfer, canal_agente, ramal, nome, dac, uniqueid, status FROM pbx_supervisor_agentes WHERE matricula = '$matrLogoff'"; + $query = "SELECT canal, canal_transfer, canal_agente, ramal, nome, dac, uniqueid, status FROM pbx_supervisor_agentes WHERE matricula = '$matrLogoff' AND org_id = $org_id"; $result = pg_query($dbcon, $query); if ($result) { $row = @pg_fetch_array($result); @@ -90,18 +90,18 @@ if (IsAjax() && isset($_GET["logoff"])) { $result = pg_query($dbcon, "begin"); //atualiza dados do supervisor - $query = "DELETE FROM pbx_supervisor_agentes WHERE matricula = '$matrLogoff'"; + $query = "DELETE FROM pbx_supervisor_agentes WHERE matricula = '$matrLogoff' AND org_id = $org_id"; $result = pg_query($dbcon, $query); $result = @pg_affected_rows($result); //registra o login do usuario if ($result) { - $query = "SELECT coalesce(max(id),0) AS id FROM pbx_eventos_agentes WHERE matricula = '$matrLogoff' AND cast(login as date) = cast(now() as date) AND flag <> 2"; + $query = "SELECT coalesce(max(id),0) AS id FROM pbx_eventos_agentes WHERE matricula = '$matrLogoff' AND org_id = $org_id AND cast(login as date) = cast(now() as date) AND flag <> 2"; $result = pg_query($dbcon, $query); $row = @pg_fetch_row($result); $idLogoff = $row[0]; if ($idLogoff) { - $query = "UPDATE pbx_eventos_agentes SET logoff = now(), flag = 2 WHERE id = $idLogoff"; + $query = "UPDATE pbx_eventos_agentes SET logoff = now(), flag = 2 WHERE id = $idLogoff AND org_id = $org_id"; $result = pg_query($dbcon, $query); $result = @pg_affected_rows($result); } @@ -379,7 +379,7 @@ function GetDadosAgt($dac) function GetQueryDac() { $idUser = GetIdUser(); - $org_id = GetOrganizacao(); + $org_id = $_SESSION['SSEmpresaPadrao']; $dacsAcesso = GetDacsAcesso($idUser); $query = "SELECT DISTINCT coalesce(sel, 0) AS sel, @@ -460,7 +460,7 @@ function GetQueryDac() function GetDacsAcesso($idUser, $array = false) { global $dbcon; - $org_id = GetOrganizacao(); + $org_id = $_SESSION['SSEmpresaPadrao']; $query = "SELECT DISTINCT b.nome FROM pbx_queues_grupos b @@ -1030,6 +1030,7 @@ function PausaAgente($dbcon, $ramal, $dac, $matricula) $idSessao = "SSpausa_" . $matricula; $pausa = GetPausa($dbcon, $matricula); // $_SESSION[$idSessao]; $codMotivo = $_SESSION["SetListaMotivo"]; + $org_id = $_SESSION['SSEmpresaPadrao']; $GLOBALS["ramalOperacao"] = $ramal; if (!$pausa) { @@ -1039,7 +1040,7 @@ function PausaAgente($dbcon, $ramal, $dac, $matricula) pg_query($dbcon, "begin"); //Descricao do Motivo de pausa - $query = "SELECT motivo FROM pbx_motivos_pausas WHERE id = '$codMotivo'"; + $query = "SELECT motivo FROM pbx_motivos_pausas WHERE id = '$codMotivo' AND (org_id = $org_id OR org_id = 0)"; $result = pg_query($dbcon, $query); if ($result) { $rowMotivo = @pg_fetch_row($result);