Browse Source

corrigido motivos de pausa para multiempresas e corrigido algumas querys do supervisor

1.9
Matheo Bonucia 2 months ago
parent
commit
ac896c2618
  1. 20
      cadastros/motivosPausa/motivosPausaDelete.php
  2. 6
      cadastros/motivosPausa/motivosPausaInsert.php
  3. 6
      cadastros/motivosPausa/motivosPausaSelect.php
  4. 17
      cadastros/motivosPausa/motivosPausaUpdate.php
  5. 17
      supervisor.php

20
cadastros/motivosPausa/motivosPausaDelete.php

@ -8,17 +8,18 @@ require_once("bd.php");
$id = $_GET["id"] ?? "0"; $id = $_GET["id"] ?? "0";
$numReg = 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); $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); $result1 = pg_query($dbcon, $query1);
$res = pg_fetch_assoc($result1); $res = pg_fetch_assoc($result1);
if($id && $res['flag'] == 0){ if($id && $res['flag'] === 0){
$query = "update pbx_motivos_pausas set flag = '1' where id = $id"; $query = "update pbx_motivos_pausas set flag = '1' where id = $id and org_id = $org_id";
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
echo "OK; Registro foi ativado."; echo "OK; Registro foi ativado.";
return; return;
@ -33,14 +34,15 @@ if ($result) {
$query = "begin"; $query = "begin";
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
if ($result) { if ($result) {
$query = "delete from pbx_motivos_pausas where id = $id"; $query = "delete from pbx_motivos_pausas where id = $id and org_id = $org_id";
$result = pg_query($dbcon, $query); $resultDelete = pg_query($dbcon, $query);
} if ($resultDelete && pg_affected_rows($resultDelete) > 0) {
if ($result) {
$query = "commit"; $query = "commit";
pg_query($dbcon, $query); pg_query($dbcon, $query);
echo "OK; Registro excluido com sucesso!"; echo "OK; Registro excluido com sucesso!";
}else {
echo "OK; Este registro não pode ser apagado!";
}
} else { } else {
$query = "rollback"; $query = "rollback";
pg_query($dbcon, $query); pg_query($dbcon, $query);

6
cadastros/motivosPausa/motivosPausaInsert.php

@ -25,7 +25,7 @@ $id = 0;
$flag = 0; $flag = 0;
$motivo = ""; $motivo = "";
$produtiva = 0; $produtiva = 0;
$org_id = GetOrganizacao(); $org_id = $_SESSION['SSEmpresaPadrao'];
/* /*
* Verifica se o usuario pressionou o botão para inserir * Verifica se o usuario pressionou o botão para inserir
@ -37,11 +37,11 @@ if ($formAction == FORM_NEW) {
if (trim($_POST["motivo"] == "")) { if (trim($_POST["motivo"] == "")) {
GetGpValues(); GetGpValues();
$msgUser = "alert('O \"Motivo\" é campo de preenchimento obrigatório!');"; $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"]); $msgUser = sprintf("alert('O \"Motivo: %s\" já existe na base de dados!');", $_POST["motivo"]);
} else { } else {
//string para inserção do registro //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(); GetGpValues();

6
cadastros/motivosPausa/motivosPausaSelect.php

@ -20,6 +20,11 @@ $imgNovo = GetLinkFormInsert("novoMotivoPausa", 'images/novo.gif', $filtroNovo,
*/ */
$mensagemErro = ""; $mensagemErro = "";
/*
*Get ID Organizacao
*/
$org_id = $_SESSION['SSEmpresaPadrao'];
$paramPesquisa = isset($_REQUEST['paramPesquisa']) ? $_REQUEST['paramPesquisa'] : ''; $paramPesquisa = isset($_REQUEST['paramPesquisa']) ? $_REQUEST['paramPesquisa'] : '';
$filtro = isset($_REQUEST["paramPesquisa"]) ? trim($_REQUEST["paramPesquisa"]) : ''; $filtro = isset($_REQUEST["paramPesquisa"]) ? trim($_REQUEST["paramPesquisa"]) : '';
$filtroNovo = !isset($_REQUEST["pgn"]) ? '' : sprintf("&paramPesquisa%s&pgn=%s&bloco=%s&pg=%s", $_REQUEST["paramPesquisa"], $_REQUEST["pgn"], $_REQUEST["bloco"], $_REQUEST["pg"]); $filtroNovo = !isset($_REQUEST["pgn"]) ? '' : sprintf("&paramPesquisa%s&pgn=%s&bloco=%s&pg=%s", $_REQUEST["paramPesquisa"], $_REQUEST["pgn"], $_REQUEST["bloco"], $_REQUEST["pg"]);
@ -39,6 +44,7 @@ $query = "SELECT id, motivo, flag, produtiva,tempo_alerta
NOT IN('AUSENTE', 'LOGIN', 'RECUSADA') NOT IN('AUSENTE', 'LOGIN', 'RECUSADA')
$compl $compl
AND flag = '$active' AND flag = '$active'
AND (org_id = $org_id OR org_id = 0)
ORDER BY motivo"; ORDER BY motivo";
$params = "&paramPesquisa=$filtro"; $params = "&paramPesquisa=$filtro";

17
cadastros/motivosPausa/motivosPausaUpdate.php

@ -12,6 +12,11 @@ $msgErro = "";
$setFocus = "document.getElementById('motivo').focus();"; $setFocus = "document.getElementById('motivo').focus();";
$jsStartup[] = $setFocus; $jsStartup[] = $setFocus;
/*
*Get ID Organizacao
*/
$org_id = $_SESSION['SSEmpresaPadrao'];
/* /*
* Verifica se o usuario pressionou o botão para inserir * Verifica se o usuario pressionou o botão para inserir
* o registro * o registro
@ -27,14 +32,18 @@ if ($formAction == FORM_UPDATE) {
$msgUser = sprintf("alert('O \"Motivo: %s\" já existe na base de dados!');", $_POST["motivo"]); $msgUser = sprintf("alert('O \"Motivo: %s\" já existe na base de dados!');", $_POST["motivo"]);
} else { } else {
//string para inserção do registro //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); //GetGpValues(null);
//Prepara a query para inserir o registro no banco //Prepara a query para inserir o registro no banco
$query = sprintf($query, QuotedStr($motivo), QuotedStr($flag), QuotedStr($produtiva),QuotedStr($tempo_alerta), $id); $query = sprintf($query, QuotedStr($motivo), QuotedStr($flag), QuotedStr($produtiva),QuotedStr($tempo_alerta), $id);
$tempo_alerta = $tempo_alerta / 60; $tempo_alerta = $tempo_alerta / 60;
//Executa a query no banco //Executa a query no banco
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
$num_rows = pg_num_rows($result);
if($num_rows === 0) {
goto fail;
}
if ($result) { if ($result) {
//GetGpValues(null); //GetGpValues(null);
@ -47,6 +56,8 @@ if ($formAction == FORM_UPDATE) {
$msgErro = "A operação não pode ser realizada!Erro: $erroBd"; $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)) if (!empty($msgUser))
@ -66,7 +77,8 @@ GetTemplate($smarty, 'cadastros/motivosPausa/motivosPausaCadastro.tpl');
function GetGpValues($db) { function GetGpValues($db) {
if (!empty($db)) { if (!empty($db)) {
$id = $_GET["id"] ?? "0"; $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); $result = pg_query($db, $query);
if ($result) if ($result)
$row = pg_fetch_array($result, $row); $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; $GLOBALS["tempo_alerta"] = empty($db) ? $_POST["tempo_alerta"] * 60 : $row["tempo_alerta"] / 60;
} }
?> ?>

17
supervisor.php

@ -66,7 +66,7 @@ $tbCall = "";
if (IsAjax() && isset($_GET["logoff"])) { if (IsAjax() && isset($_GET["logoff"])) {
$matrLogoff = $_GET["logoff"]; $matrLogoff = $_GET["logoff"];
$dacLogoff = $_GET["dac"]; $dacLogoff = $_GET["dac"];
$GLOBALS["ramalOperacao"] = GetRamalLogado($dbcon, $matrLogoff); $GLOBALS["ramalOperacao"] = GetRamalLogado($dbcon, $matrLogoff, $org_id);
//if(AgenteOcupado($dbcon, $matrLogoff)) //restrição removida. //if(AgenteOcupado($dbcon, $matrLogoff)) //restrição removida.
if (false) { if (false) {
echo "Esta operação não pode ser realizada quando o \"Agente Está Ocupado\"!"; 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 * Desliga a chamada corrente
* e desconecta o usuario do asterisk * 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); $result = pg_query($dbcon, $query);
if ($result) { if ($result) {
$row = @pg_fetch_array($result); $row = @pg_fetch_array($result);
@ -90,18 +90,18 @@ if (IsAjax() && isset($_GET["logoff"])) {
$result = pg_query($dbcon, "begin"); $result = pg_query($dbcon, "begin");
//atualiza dados do supervisor //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_query($dbcon, $query);
$result = @pg_affected_rows($result); $result = @pg_affected_rows($result);
//registra o login do usuario //registra o login do usuario
if ($result) { 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); $result = pg_query($dbcon, $query);
$row = @pg_fetch_row($result); $row = @pg_fetch_row($result);
$idLogoff = $row[0]; $idLogoff = $row[0];
if ($idLogoff) { 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_query($dbcon, $query);
$result = @pg_affected_rows($result); $result = @pg_affected_rows($result);
} }
@ -379,7 +379,7 @@ function GetDadosAgt($dac)
function GetQueryDac() function GetQueryDac()
{ {
$idUser = GetIdUser(); $idUser = GetIdUser();
$org_id = GetOrganizacao(); $org_id = $_SESSION['SSEmpresaPadrao'];
$dacsAcesso = GetDacsAcesso($idUser); $dacsAcesso = GetDacsAcesso($idUser);
$query = "SELECT DISTINCT coalesce(sel, 0) AS sel, $query = "SELECT DISTINCT coalesce(sel, 0) AS sel,
@ -460,7 +460,7 @@ function GetQueryDac()
function GetDacsAcesso($idUser, $array = false) function GetDacsAcesso($idUser, $array = false)
{ {
global $dbcon; global $dbcon;
$org_id = GetOrganizacao(); $org_id = $_SESSION['SSEmpresaPadrao'];
$query = "SELECT DISTINCT b.nome $query = "SELECT DISTINCT b.nome
FROM pbx_queues_grupos b FROM pbx_queues_grupos b
@ -1030,6 +1030,7 @@ function PausaAgente($dbcon, $ramal, $dac, $matricula)
$idSessao = "SSpausa_" . $matricula; $idSessao = "SSpausa_" . $matricula;
$pausa = GetPausa($dbcon, $matricula); // $_SESSION[$idSessao]; $pausa = GetPausa($dbcon, $matricula); // $_SESSION[$idSessao];
$codMotivo = $_SESSION["SetListaMotivo"]; $codMotivo = $_SESSION["SetListaMotivo"];
$org_id = $_SESSION['SSEmpresaPadrao'];
$GLOBALS["ramalOperacao"] = $ramal; $GLOBALS["ramalOperacao"] = $ramal;
if (!$pausa) { if (!$pausa) {
@ -1039,7 +1040,7 @@ function PausaAgente($dbcon, $ramal, $dac, $matricula)
pg_query($dbcon, "begin"); pg_query($dbcon, "begin");
//Descricao do Motivo de pausa //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); $result = pg_query($dbcon, $query);
if ($result) { if ($result) {
$rowMotivo = @pg_fetch_row($result); $rowMotivo = @pg_fetch_row($result);

Loading…
Cancel
Save