Browse Source

insercao do org_id nas campanhas email

1.9
Matheo Bonucia 2 months ago
parent
commit
b23b3696d6
  1. 45
      cadastros/cliente/clienteMail.php

45
cadastros/cliente/clienteMail.php

@ -193,7 +193,7 @@
if (!$res['cmp_id']) { if (!$res['cmp_id']) {
$query = "INSERT INTO pbx_campanha(cmp_descricao, cmp_ramal, id_dac, cmp_aguarda_agente, cmp_numero_ligacoes_agente, ident_proc, cmp_status, cmp_tipo_campanha, cmp_seletiva, org_id) $query = "INSERT INTO pbx_campanha(cmp_descricao, cmp_ramal, id_dac, cmp_aguarda_agente, cmp_numero_ligacoes_agente, ident_proc, cmp_status, cmp_tipo_campanha, cmp_seletiva, org_id)
VALUES(%s,'-1',%s,'1','1',%s,'2','3','1', %d) RETURNING cmp_id;"; VALUES(%s,'-1',%s,'1','1',%s,'2','3','1', %d) RETURNING cmp_id;";
$query = sprintf($query, QuotedStr('CAMPANHA_SERVICE_MAIL'), QuotedStr('00'), QuotedStr('Inserido: listacampanhaemail Data: ' . date('Y-m-d H:i:s'), $org_id)); $query = sprintf($query, QuotedStr('CAMPANHA_SERVICE_MAIL'), QuotedStr('00'), QuotedStr('Inserido: listacampanhaemail Data: ' . date('Y-m-d H:i:s')), $org_id);
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
$res = pg_fetch_assoc($result); $res = pg_fetch_assoc($result);
@ -230,6 +230,7 @@
global $dbcon; global $dbcon;
$regfail = 0; $regfail = 0;
$regsuccess = 0; $regsuccess = 0;
$org_id = $_SESSION['SSEmpresaPadrao'];
try { try {
__transaction('BEGIN;'); __transaction('BEGIN;');
@ -239,7 +240,7 @@
* Table: pbx_campanha_lista * Table: pbx_campanha_lista
* CRIA UM LISTA PARA A CAMPANHA * CRIA UM LISTA PARA A CAMPANHA
*/ */
$sql = "INSERT INTO pbx_campanha_lista(cmp_id, list_nome, list_file, list_status, id_usuario, list_id_tpl) VALUES('{$cmp_id}', '{$nomelist}', '{$nomelist}', '1', '{$user['id']}', {$temp}) RETURNING list_id;"; $sql = "INSERT INTO pbx_campanha_lista(cmp_id, list_nome, list_file, list_status, id_usuario, list_id_tpl, org_id) VALUES('{$cmp_id}', '{$nomelist}', '{$nomelist}', '1', '{$user['id']}', {$temp}, {$org_id}) RETURNING list_id;";
$result = pg_query($dbcon, $sql); $result = pg_query($dbcon, $sql);
if (!$result) { if (!$result) {
@ -265,8 +266,8 @@
/** LOCAL PARA CRIAR REGRAS DE ENVIOS */ /** LOCAL PARA CRIAR REGRAS DE ENVIOS */
/** FIM DA REGRA */ /** FIM DA REGRA */
/** @pbx_campanha_contato */ /** @pbx_campanha_contato */
$query1 = sprintf(" INSERT INTO pbx_campanha_contato(cmp_id, list_id, cont_identificador, cont_param1, cont_param2, cont_param3, cont_param4, cont_status, conf_matricula_exclusiva) " $query1 = sprintf(" INSERT INTO pbx_campanha_contato(cmp_id, list_id, cont_identificador, cont_param1, cont_param2, cont_param3, cont_param4, cont_status, conf_matricula_exclusiva, org_id) "
. "VALUES(%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING cont_id; ", . "VALUES(%s, %s, %s, %s, %s, %s, %s, %s, %s, %d) RETURNING cont_id; ",
QuotedStr($cmp_id), QuotedStr($cmp_id),
QuotedStr($lstCamp['list_id']), QuotedStr($lstCamp['list_id']),
QuotedStr($value['client_id']), QuotedStr($value['client_id']),
@ -275,7 +276,8 @@
QuotedStr($value['client_documento']), QuotedStr($value['client_documento']),
QuotedStr($telefone), QuotedStr($telefone),
QuotedStr(0), QuotedStr(0),
QuotedStr($value['client_user_contato'])); QuotedStr($value['client_user_contato']),
$org_id);
$result = pg_query($dbcon, $query1); $result = pg_query($dbcon, $query1);
if (!$result) { if (!$result) {
@ -285,7 +287,7 @@
$cont_id = pg_fetch_assoc($result)['cont_id']; $cont_id = pg_fetch_assoc($result)['cont_id'];
/** @pbx_campanha_contato_fone */ /** @pbx_campanha_contato_fone */
$query2 = sprintf(" INSERT INTO pbx_campanha_contato_fone(cmp_id, list_id, cont_id, conf_fone, conf_status, conf_status_lista, conf_discado) " $query2 = sprintf(" INSERT INTO pbx_campanha_contato_fone(cmp_id, list_id, cont_id, conf_fone, conf_status, conf_status_lista, conf_discado, org_id) "
. "VALUES(%s, %s, %s, %s, %s, %s, %s) RETURNING conf_id;", . "VALUES(%s, %s, %s, %s, %s, %s, %s) RETURNING conf_id;",
QuotedStr($cmp_id), QuotedStr($cmp_id),
QuotedStr($lstCamp['list_id']), QuotedStr($lstCamp['list_id']),
@ -293,7 +295,8 @@
QuotedStr($value['client_email']), QuotedStr($value['client_email']),
QuotedStr(0), QuotedStr(0),
QuotedStr(1), QuotedStr(1),
QuotedStr(0) QuotedStr(0),
$org_id
); );
$result = pg_query($dbcon, $query2); $result = pg_query($dbcon, $query2);
@ -305,7 +308,7 @@
$conf_id = pg_fetch_assoc($result)['conf_id']; $conf_id = pg_fetch_assoc($result)['conf_id'];
/** @pbx_campanha_registro */ /** @pbx_campanha_registro */
$query3 = "INSERT INTO pbx_campanha_registro (list_id, cont_id, conf_id, ctp_id, matricula_exclusiva, contato_cmpr, status_cmpr, inicio_cmpr, user_reg) VALUES(%s, %s, %s, %s, %s, %s, %s, %s, %s)"; $query3 = "INSERT INTO pbx_campanha_registro (list_id, cont_id, conf_id, ctp_id, matricula_exclusiva, contato_cmpr, status_cmpr, inicio_cmpr, user_reg, org_id) VALUES(%s, %s, %s, %s, %s, %s, %s, %s, %s, %d)";
$query = sprintf($query3, $query = sprintf($query3,
QuotedStr($lstCamp['list_id']), QuotedStr($lstCamp['list_id']),
QuotedStr($cont_id), QuotedStr($cont_id),
@ -315,7 +318,8 @@
QuotedStr($value['client_email']), QuotedStr($value['client_email']),
'0', '0',
QuotedStr(date('Y-m-d H:i:s')), QuotedStr(date('Y-m-d H:i:s')),
QuotedStr($user['id'])); QuotedStr($user['id']),
$org_id);
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
if (!$result) { if (!$result) {
@ -333,7 +337,7 @@
if ($regsuccess) { if ($regsuccess) {
flash("A campanha foi registrado com sucesso! Criados: {$regsuccess} Regeitados: {$regfail}.", 'green'); flash("A campanha foi registrado com sucesso! Criados: {$regsuccess} Regeitados: {$regfail}.", 'green');
} else { } else {
$query = "DELETE FROM pbx_campanha_lista WHERE list_id = {$lstCamp['list_id']};"; $query = "DELETE FROM pbx_campanha_lista WHERE list_id = {$lstCamp['list_id']} AND org_id = $org_id;";
pg_query($dbcon, $query); pg_query($dbcon, $query);
flash("Nenhum registro foi adicionado a campanha! Criados: {$regsuccess} Regeitados: {$regfail}", 'red'); flash("Nenhum registro foi adicionado a campanha! Criados: {$regsuccess} Regeitados: {$regfail}", 'red');
} }
@ -343,7 +347,9 @@
} }
function __GetAdminCampanha($matricula) { function __GetAdminCampanha($matricula) {
$query = "SELECT * FROM pbx_fornecedor_permissao WHERE matricula_permissao = '$matricula'"; $org_id = $_SESSION['SSEmpresaPadrao'];
$query = "SELECT * FROM pbx_fornecedor_permissao WHERE matricula_permissao = '$matricula' AND org_id = $org_id";
$result = pg_query($query); $result = pg_query($query);
$resp = pg_fetch_assoc($result); $resp = pg_fetch_assoc($result);
return $resp; return $resp;
@ -362,14 +368,16 @@
function __GetParam() { function __GetParam() {
global $dbcon; global $dbcon;
$query = "SELECT * FROM pbx_campanha_parametros"; $org_id = $_SESSION['SSEmpresaPadrao'];
$query = "SELECT * FROM pbx_campanha_parametros WHERE org_id = $org_id";
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
return pg_fetch_assoc($result); return pg_fetch_assoc($result);
} }
function __SetFinalizarLista($listId) { function __SetFinalizarLista($listId) {
global $dbcon; global $dbcon;
$query = "UPDATE pbx_campanha_lista SET list_status = 2 WHERE list_id = {$listId};"; $org_id = $_SESSION['SSEmpresaPadrao'];
$query = "UPDATE pbx_campanha_lista SET list_status = 2 WHERE list_id = {$listId} AND org_id = $org_id;";
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
if (!$result) { if (!$result) {
throw new Exception('Não foi possível para a campanha em execução!'); throw new Exception('Não foi possível para a campanha em execução!');
@ -378,17 +386,18 @@
function __GetCampanhaList() { function __GetCampanhaList() {
global $dbcon; global $dbcon;
$org_id = $_SESSION['SSEmpresaPadrao'];
$query = sprintf("SELECT b.list_id, b.data_reg, list_status, SUM(CASE WHEN(conf_discado = 1)THEN 1 ELSE 0 END) AS enviados, count(*) AS total $query = sprintf("SELECT b.list_id, b.data_reg, list_status, SUM(CASE WHEN(conf_discado = 1)THEN 1 ELSE 0 END) AS enviados, count(*) AS total
FROM pbx_campanha a FROM pbx_campanha a
INNER JOIN pbx_campanha_lista b ON b.cmp_id = a.cmp_id INNER JOIN pbx_campanha_lista b ON b.cmp_id = a.cmp_id AND b.org_id = a.org_id
INNER JOIN pbx_campanha_contato c ON b.list_id = c.list_id INNER JOIN pbx_campanha_contato c ON b.list_id = c.list_id AND b.org_id = c.org_id
INNER JOIN pbx_campanha_contato_fone d ON c.cont_id = d.cont_id INNER JOIN pbx_campanha_contato_fone d ON c.cont_id = d.cont_id AND c.org_id = d.org_id
INNER JOIN pbx_cliente e ON e.client_id = c.cont_identificador::INT INNER JOIN pbx_cliente e ON e.client_id = c.cont_identificador::INT AND e.org_id = c.org_id
LEFT JOIN pbx_usuarios f ON f.matricula = e.client_user_contato LEFT JOIN pbx_usuarios f ON f.matricula = e.client_user_contato
WHERE list_id_tpl IS NOT NULL WHERE list_id_tpl IS NOT NULL
AND conf_status_lista = '1' AND conf_status_lista = '1'
AND cmp_tipo_campanha = 3 AND cmp_tipo_campanha = 3
AND a.org_id = $org_id
%s %s
GROUP BY b.list_id, b.data_reg, list_status GROUP BY b.list_id, b.data_reg, list_status
ORDER BY list_id DESC", (!IsAdmin() ? "AND b.id_usuario = " . GetIdUser() : '')); ORDER BY list_id DESC", (!IsAdmin() ? "AND b.id_usuario = " . GetIdUser() : ''));

Loading…
Cancel
Save