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']) {
$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;";
$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);
$res = pg_fetch_assoc($result);
@ -230,6 +230,7 @@
global $dbcon;
$regfail = 0;
$regsuccess = 0;
$org_id = $_SESSION['SSEmpresaPadrao'];
try {
__transaction('BEGIN;');
@ -239,7 +240,7 @@
* Table: pbx_campanha_lista
* 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);
if (!$result) {
@ -265,8 +266,8 @@
/** LOCAL PARA CRIAR REGRAS DE ENVIOS */
/** FIM DA REGRA */
/** @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) "
. "VALUES(%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING cont_id; ",
$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, %d) RETURNING cont_id; ",
QuotedStr($cmp_id),
QuotedStr($lstCamp['list_id']),
QuotedStr($value['client_id']),
@ -275,7 +276,8 @@
QuotedStr($value['client_documento']),
QuotedStr($telefone),
QuotedStr(0),
QuotedStr($value['client_user_contato']));
QuotedStr($value['client_user_contato']),
$org_id);
$result = pg_query($dbcon, $query1);
if (!$result) {
@ -285,7 +287,7 @@
$cont_id = pg_fetch_assoc($result)['cont_id'];
/** @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;",
QuotedStr($cmp_id),
QuotedStr($lstCamp['list_id']),
@ -293,7 +295,8 @@
QuotedStr($value['client_email']),
QuotedStr(0),
QuotedStr(1),
QuotedStr(0)
QuotedStr(0),
$org_id
);
$result = pg_query($dbcon, $query2);
@ -305,7 +308,7 @@
$conf_id = pg_fetch_assoc($result)['conf_id'];
/** @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,
QuotedStr($lstCamp['list_id']),
QuotedStr($cont_id),
@ -315,7 +318,8 @@
QuotedStr($value['client_email']),
'0',
QuotedStr(date('Y-m-d H:i:s')),
QuotedStr($user['id']));
QuotedStr($user['id']),
$org_id);
$result = pg_query($dbcon, $query);
if (!$result) {
@ -333,7 +337,7 @@
if ($regsuccess) {
flash("A campanha foi registrado com sucesso! Criados: {$regsuccess} Regeitados: {$regfail}.", 'green');
} 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);
flash("Nenhum registro foi adicionado a campanha! Criados: {$regsuccess} Regeitados: {$regfail}", 'red');
}
@ -343,7 +347,9 @@
}
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);
$resp = pg_fetch_assoc($result);
return $resp;
@ -362,14 +368,16 @@
function __GetParam() {
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);
return pg_fetch_assoc($result);
}
function __SetFinalizarLista($listId) {
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);
if (!$result) {
throw new Exception('Não foi possível para a campanha em execução!');
@ -378,17 +386,18 @@
function __GetCampanhaList() {
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
FROM pbx_campanha a
INNER JOIN pbx_campanha_lista b ON b.cmp_id = a.cmp_id
INNER JOIN pbx_campanha_contato c ON b.list_id = c.list_id
INNER JOIN pbx_campanha_contato_fone d ON c.cont_id = d.cont_id
INNER JOIN pbx_cliente e ON e.client_id = c.cont_identificador::INT
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 AND b.org_id = c.org_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 AND e.org_id = c.org_id
LEFT JOIN pbx_usuarios f ON f.matricula = e.client_user_contato
WHERE list_id_tpl IS NOT NULL
AND conf_status_lista = '1'
AND cmp_tipo_campanha = 3
AND a.org_id = $org_id
%s
GROUP BY b.list_id, b.data_reg, list_status
ORDER BY list_id DESC", (!IsAdmin() ? "AND b.id_usuario = " . GetIdUser() : ''));

Loading…
Cancel
Save