Query Disparos

De Wiki NBS
Revisão de 18h54min de 18 de agosto de 2020 por Orione (discussão | contribs)
Ir para navegação Ir para pesquisar
Agendamento - Lê as  Agendas programadas que ainda não foram para a fila 

Job_LEADZAP_disparo_AGENDAMENTO

Select ev.cod_empresa, ev.cod_evento,    cli.prefixo_cel DDD,cli.telefone_cel Celular

from crm_eventos ev,      clientes cli  ,   cliente_diverso div,     crm_programacao prog     

  

where ev.cod_cliente    = cli.cod_cliente 

and  ev.cod_programacao = prog.cod_programacao

and  cli.cod_cliente    = div.cod_cliente

-- eventos pendentes

and   ev.status = 'P' 

-- nao pode estar na tabela de disparo, pois se ja esta, ja chegou onde queriamos

and ev.cod_evento not in (select cod_evento from crm_disparo_fila)

-- nao pode ter flags marcado

and nvl(div.crm_sms,'N') = 'N'

-- so pega valido celular

and length(trim(cli.prefixo_cel)) = 2 and length(trim(cli.telefone_cel)) in (8,9) 

-- pega os agendados para hoje (ou seja,ligaria hoje para agendar)

and ev.data_novo_contato >= trunc(sysdate) and ev.data_novo_contato <  trunc(sysdate+1)

Query que lê a fila TODOS os tipos de disparos e envia mensagem

SELECT   disparo.template,         fila.ddd,         fila.celular,         fila.cod_empresa,         fila.cod_evento,

         disparo.id_disparo,         disparo.template,         fila.id_disparo_fila,         Nvl(fila.cod_os_agenda, ag.cod_os_agenda) cod_os_agenda

FROM     crm_disparo disparo,         crm_disparo_fila fila,         os_agenda ag

WHERE    disparo.id_disparo = fila.id_disparo

         AND fila.cod_empresa = ag.crm_cod_empresa(+)

         AND fila.cod_evento = ag.crm_cod_evento(+)

-- tem que existir dados no template

         AND EXISTS (SELECT a.cod_evento        FROM   vw_crm_template_agendamento a            WHERE  a.cod_empresa = fila.cod_empresa                       AND a.cod_evento = fila.cod_evento)

-- disparos com data menor que agora

         AND fila.data_disparo <= SYSDATE

-- Celular valido

         AND Length(fila.ddd) = 2         AND Length(celular) >= 8

--Eventos ativos

         AND fila.status = 'P'

-- parâmetro de Ativar LEADZAP OK

         AND EXISTS (SELECT 1                FROM   crm_parm_fluxo p              WHERE  p.cod_empresa = fila.cod_empresa                 AND Nvl(p.ativar_leadzap, 'N') = 'S')

- Empresa tem que estar cruzada com algum número de LEADZAP

         AND EXISTS (SELECT 1         FROM   crm_whatsapp_empresa a         WHERE  a.cod_empresa = fila.cod_empresa)

ORDER BY fila.cod_empresa