Browse Source

Implementação da nova opção de supervisor ou agente no cadastro de usuário, correções na tela de audio e correção no cadastro de usuários para a versão 1.9

1.9
Matheo Bonucia 2 months ago
parent
commit
ffcbefd29c
  1. 4
      audio.php
  2. 2
      contacteFunc.php
  3. 3
      include/util/funcoesApl.php
  4. 33
      seguranca/usuarioCad.php
  5. 16
      templates/seguranca/usuario.tpl

4
audio.php

@ -267,6 +267,8 @@
$y = 1; $y = 1;
} }
$dacs .= ") "; $dacs .= ") ";
} elseif(IsAdmin()) {
$dac = "";
} else { } else {
$dac = "AND c.id = $dac "; $dac = "AND c.id = $dac ";
} }
@ -319,7 +321,7 @@
LEFT JOIN pbx_classifica_reg f ON f.id_bilhetes = a.uniqueid and f.org_id = a.org_id LEFT JOIN pbx_classifica_reg f ON f.id_bilhetes = a.uniqueid and f.org_id = a.org_id
LEFT JOIN pbx_classifica_item g ON g.clas_id = f.clas_id and g.clit_id = f.clit_id and g.org_id = f.org_id LEFT JOIN pbx_classifica_item g ON g.clas_id = f.clas_id and g.clit_id = f.clit_id and g.org_id = f.org_id
LEFT JOIN pbx_classifica_atendimento h ON h.clas_id = f.clas_id and h.org_id = f.org_id LEFT JOIN pbx_classifica_atendimento h ON h.clas_id = f.clas_id and h.org_id = f.org_id
WHERE a.org_id = {$org_id} AND a.billsec > 3 \n WHERE a.org_id = {$org_id} AND a.billsec > 3
AND exists(SELECT '' FROM pbx_fila_audios x, pbx_grupo_usuario y WHERE x.org_id = {$org_id} AND y.gp_id = x.gp_id AND y.user_id = '{$idUser}' and x.id = c.id)\n"; AND exists(SELECT '' FROM pbx_fila_audios x, pbx_grupo_usuario y WHERE x.org_id = {$org_id} AND y.gp_id = x.gp_id AND y.user_id = '{$idUser}' and x.id = c.id)\n";
if ($isProto) { if ($isProto) {
$query .= "AND (e.protocolo = $proto or e.protoparceiro = $proto) "; $query .= "AND (e.protocolo = $proto or e.protoparceiro = $proto) ";

2
contacteFunc.php

@ -2362,7 +2362,7 @@ function IncluiAgenteFile($dbcon)
{ {
$org_id = $_SESSION['SSEmpresaPadrao']; $org_id = $_SESSION['SSEmpresaPadrao'];
$query = "select matricula, apelido from pbx_usuarios pu inner join pbx_organizacao_usuarios pou ON pou.id_usuarios = pu.id and pou.id_organizacao = $org_id where delete_ = 0"; $query = "select matricula, apelido from pbx_usuarios pu inner join pbx_organizacao_usuarios pou ON pou.id_usuario = pu.id and pou.id_organizacao = $org_id where delete_ = 0";
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
if (!$result) { if (!$result) {

3
include/util/funcoesApl.php

@ -598,7 +598,8 @@ function IsAdmin() {
from pbx_usuarios p_u from pbx_usuarios p_u
where where
matricula = '$matricula' matricula = '$matricula'
and id = (select id_usuario from pbx_organizacao_usuarios pou WHERE pou.id_usuario = p_u.id AND pou.id_organizacao = 1)"; and p_u.id = (select id_usuario from pbx_organizacao_usuarios pou WHERE pou.id_usuario = p_u.id AND pou.id_organizacao = 1)
and user_system = 1";
$isadmin = pg_query($GLOBALS["dbcon"], $query); $isadmin = pg_query($GLOBALS["dbcon"], $query);
/* Não foi possível obter se o usuário é admin /* Não foi possível obter se o usuário é admin

33
seguranca/usuarioCad.php

@ -68,16 +68,19 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$acaoUser = $_POST["btGravar"]; $acaoUser = $_POST["btGravar"];
$penalidade = $_POST["penalidade"] ? soNumero($_POST["penalidade"]) : "0"; $penalidade = $_POST["penalidade"] ? soNumero($_POST["penalidade"]) : "0";
$dacPadraoSel = $_POST["listaDacs"] ? $_POST["listaDacs"] : "0"; $dacPadraoSel = $_POST["listaDacs"] ? $_POST["listaDacs"] : "0";
//$empPadrao = $_POST["empPadrao"] ? $_POST["empPadrao"] : 'null';
$dacPadrao = GetDacs($dbcon, $dacPadraoSel, "", 0, 1); $dacPadrao = GetDacs($dbcon, $dacPadraoSel, "", 0, 1);
$userExpiraSenha = $_POST["userExpiraSenha"] ? $_POST["userExpiraSenha"] : 0; $userExpiraSenha = $_POST["userExpiraSenha"] ? $_POST["userExpiraSenha"] : 0;
$userAgente = (isset($_POST["tipoUsuario"]) && $_POST["tipoUsuario"] == 'agente') ? 'TRUE' : 'FALSE';
$userSuper = (isset($_POST["tipoUsuario"]) && $_POST["tipoUsuario"] == 'supervisor') ? 'TRUE' : 'FALSE';
if (empty($msg) && ($_POST["btGravar"] == 'Incluir')) { if (empty($msg) && ($_POST["btGravar"] == 'Incluir')) {
$result = pg_query($dbcon, "begin"); $result = pg_query($dbcon, "begin");
if ($result) { if ($result) {
$userMatricula = GetMatriculaAgente($dbcon); $userMatricula = GetMatriculaAgente($dbcon);
$query = "INSERT INTO pbx_usuarios(nome, apelido, matricula, flag, \"admin\", senha, supervisor, agente, email, status, penalidade, dac_padrao, check_vl, senha_dias_expira, org_padrao) $query = "INSERT INTO pbx_usuarios(
VALUES(%s, lower(%s), %s, %s, %s, md5(%s), %s, %s, %s, %s, %s, %s, md5(lower(%s)), %s, %s) RETURNING id;"; nome, apelido, matricula, flag, \"admin\", senha, supervisor, agente, email, status, penalidade, dac_padrao, check_vl, senha_dias_expira
) VALUES (
%s, lower(%s), %s, %s, %s, md5(%s), %s, %s, %s, %s, %s, %s, md5(lower(%s)), %s) RETURNING id;";
$query = sprintf( $query = sprintf(
$query, $query,
@ -85,17 +88,16 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
QuotedStr($userLogin), QuotedStr($userLogin),
QuotedStr($userMatricula), QuotedStr($userMatricula),
1, 1,
$userAdm == "checked" ? 'true' : 'false', $userAdm == "checked" ? 'TRUE' : 'FALSE',
QuotedStr($userPassword), QuotedStr($userPassword),
$userSuper == "checked" ? 'true' : 'false', $userSuper,
$userAgente == "checked" ? 'true' : 'false', $userAgente,
QuotedStr($userEmail), QuotedStr($userEmail),
$userStatus == "checked" ? 'true' : 'false', $userStatus == "checked" ? 'TRUE' : 'FALSE',
$penalidade, $penalidade,
QuotedStr($dacPadraoSel), QuotedStr($dacPadraoSel),
QuotedStr($userEmail), QuotedStr($userEmail),
$userExpiraSenha, $userExpiraSenha,
GetOrganizacao()
); );
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
@ -105,12 +107,9 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$ret = IncluiAgenteFile($dbcon); $ret = IncluiAgenteFile($dbcon);
$result = strtoupper($ret) == "OK"; $result = strtoupper($ret) == "OK";
} }
$query = sprintf("INSERT INTO pbx_organizacao_usuarios (id_usuario, id_organizacao, updated_at) VALUES (%s,%s,'%s')", $user['id'], $org_id, date('Y-m-d H:i:s')); $query = sprintf("INSERT INTO pbx_organizacao_usuarios (id_usuario, id_organizacao, updated_at) VALUES (%s,%s,'%s')", $user['id'], $org_id, date('Y-m-d H:i:s'));
$result1 = $result && pg_query($dbcon, $query); $result1 = $result && pg_query($dbcon, $query);
echo pg_last_error() . "<br>";
/* /*
* Inclui usuario como grupo. * Inclui usuario como grupo.
*/ */
@ -118,7 +117,6 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
SELECT apelido, 1, id, id, $org_id FROM pbx_usuarios WHERE apelido = %s", QuotedStr($userLogin)); SELECT apelido, 1, id, id, $org_id FROM pbx_usuarios WHERE apelido = %s", QuotedStr($userLogin));
$result2 = $result && pg_query($dbcon, $query); $result2 = $result && pg_query($dbcon, $query);
echo pg_last_error() . "<br>";
/* /*
* Insere o usuario no mesmo grupo criado com seu login. * Insere o usuario no mesmo grupo criado com seu login.
*/ */
@ -126,7 +124,6 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
SELECT user_id, gp_id, $org_id FROM pbx_grupo WHERE gp_nome = %s", QuotedStr($userLogin)); SELECT user_id, gp_id, $org_id FROM pbx_grupo WHERE gp_nome = %s", QuotedStr($userLogin));
$result3 = $result && pg_query($dbcon, $query); $result3 = $result && pg_query($dbcon, $query);
echo pg_last_error() . "<br>";
/* /*
* Se o dac for selecionado no cadastro do usuario, o mesmo sera atribuido para o proprio usuario. * Se o dac for selecionado no cadastro do usuario, o mesmo sera atribuido para o proprio usuario.
*/ */
@ -136,7 +133,6 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$result4 = $result && pg_query($dbcon, $query); $result4 = $result && pg_query($dbcon, $query);
} }
echo pg_last_error() . "<br>";
/* /*
* Finaliza a transacao. * Finaliza a transacao.
*/ */
@ -168,6 +164,8 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$userMatricula = $_POST["userMatriculaH"]; $userMatricula = $_POST["userMatriculaH"];
$userExpiraSenha = $_POST["userExpiraSenha"]; $userExpiraSenha = $_POST["userExpiraSenha"];
$updSenha = DEFAULT_MASC_PASSWORD !== $userPassword; $updSenha = DEFAULT_MASC_PASSWORD !== $userPassword;
$userAgente = (isset($_POST["tipoUsuario"]) && $_POST["tipoUsuario"] == 'agente') ? 'TRUE' : 'FALSE';
$userSuper = (isset($_POST["tipoUsuario"]) && $_POST["tipoUsuario"] == 'supervisor') ? 'TRUE' : 'FALSE';
$result = pg_query($dbcon, "begin"); $result = pg_query($dbcon, "begin");
$query = "UPDATE pbx_usuarios $query = "UPDATE pbx_usuarios
@ -178,8 +176,9 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
penalidade = %s, penalidade = %s,
dac_padrao = %s, dac_padrao = %s,
senha_dias_expira = %s, senha_dias_expira = %s,
org_padrao = %s supervisor = %s,
WHERE id = %s "; agente = %s
WHERE id = %s; ";
if ($updSenha) { if ($updSenha) {
$updSenha = sprintf(" senha = md5(%s), ", QuotedStr($userPassword)); $updSenha = sprintf(" senha = md5(%s), ", QuotedStr($userPassword));
@ -189,7 +188,7 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$updSenha = ''; $updSenha = '';
} }
$query = sprintf($query, QuotedStr($userNome), $updSenha, QuotedStr($userEmail), $userStatus == "checked" ? 'true' : 'false', $penalidade, $dacPadraoSel, $userExpiraSenha, $empPadrao, $idUser); $query = sprintf($query, QuotedStr($userNome), $updSenha, QuotedStr($userEmail), $userStatus == "checked" ? 'true' : 'false', $penalidade, $dacPadraoSel, $userExpiraSenha, $userSuper,$userAgente,$idUser);
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
/* /*

16
templates/seguranca/usuario.tpl

@ -36,12 +36,6 @@
<th align="left">Dac Padr&atilde;o</th> <th align="left">Dac Padr&atilde;o</th>
<td>{$dacPadrao} </td> <td>{$dacPadrao} </td>
</tr> </tr>
{if $empPadrao}
<tr>
<th align="left">Empresa Padrão</th>
<td>{$empPadrao}</td>
</tr>
{/if}
<tr> <tr>
<th align="left">Status</th> <th align="left">Status</th>
<td> <td>
@ -54,6 +48,16 @@
<input name="userStatus" type="checkbox" id="userStatus" value="1" {$userStatus}> <input name="userStatus" type="checkbox" id="userStatus" value="1" {$userStatus}>
</td> </td>
</tr> </tr>
<tr>
<th width="120" align="left">Tipo de usuário</th>
<td>
<label for="opSupervisor" style="font-size: 12px;">Supervisor</label>
<input type="radio" name="tipoUsuario" value="supervisor" id="opSupervisor">
<label for="opAgente" style="font-size: 12px;">Agente</label>
<input type="radio" name="tipoUsuario" value="agente" id="opAgente" checked>
</td>
</tr>
<tr> <tr>
<th align="left">Penalidade</th> <th align="left">Penalidade</th>
<td><input name="penalidade" type="text" id="penalidade" value="{$penalidade}" size="5" maxlength="2"></td> <td><input name="penalidade" type="text" id="penalidade" value="{$penalidade}" size="5" maxlength="2"></td>

Loading…
Cancel
Save