forked from SimplesIP/pabx-app
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
261 lines
8.5 KiB
261 lines
8.5 KiB
2 years ago
|
-- select * from pbx_funcoes_internas where id_prog in(112, 113, 115, 116);
|
||
|
|
||
|
/**
|
||
|
* @author Amarildo Pereira
|
||
|
* @copyright (c) 2020, Simples IP.
|
||
|
* @data 2020-08-11
|
||
|
* Descricao: Modificar campanha do discador para suportar multiplos tipos de campanha,
|
||
|
* com e-mail, sms, app, ura, power dial.
|
||
|
* O arquivo da campanha sofrera alteracoes para suportar os multiplos tipos de registro,
|
||
|
* o primeiro campo do registro indicara o tipo de campanha, sendo:
|
||
|
* 1 -> Campanha discador semi-automatico;
|
||
|
* 3 -> Campanha de e-mail;
|
||
|
* 4 -> Campanha de SMS;
|
||
|
* 5 -> Campanha de discador URA;
|
||
|
* 6 -> Campanha de discador Power Dial;
|
||
|
* 7 -> Campanha de discador Preditivo;
|
||
|
* 8 -> Campanha para App, um campo indicara o tipo do app e a API de envio devera fazer o tratamento;
|
||
|
* 2 -> Indica registros da campanha, ou alvos com as devidas configuracoes para cada tipo de envio.
|
||
|
*/
|
||
|
|
||
|
--select * from pbx_dacs;
|
||
|
Select * from pbx_campanha;
|
||
|
Select * from pbx_campanha_contato;
|
||
|
Select * from pbx_campanha_contato_display;
|
||
|
Select * from pbx_campanha_contato_fone;
|
||
|
Select * from pbx_campanha_contato_status;
|
||
|
Select * from pbx_campanha_lista;
|
||
|
select * from pbx_campanha_operacao;
|
||
|
Select * from pbx_campanha_status;
|
||
|
Select * from pbx_campanha_usuarios;
|
||
|
|
||
|
delete from pbx_campanha where cmp_id = 72;
|
||
|
delete from pbx_campanha_contato where cmp_id = 72;
|
||
|
delete from pbx_campanha_contato_display where cmp_id = 72;
|
||
|
delete from pbx_campanha_contato_fone where cmp_id = 72;
|
||
|
delete from pbx_campanha_lista where cmp_id = 72;
|
||
|
delete from pbx_campanha_operacao where cmp_id = 72;
|
||
|
delete from pbx_campanha_usuarios where cmp_id = 72;
|
||
|
|
||
|
|
||
|
-- Configuracao do status da campanha.
|
||
|
/**
|
||
|
* Status da campanha.
|
||
|
* 0 -> Excluida
|
||
|
* 1 -> Ativa
|
||
|
* 2 -> Inativa
|
||
|
* 3 -> Cocluida
|
||
|
* A tabela "pbx_campanha_status armazena" estes status.
|
||
|
* select cpst_id, cpst_nome, cpst_status from pbx_campanha_status;
|
||
|
* Valores iniciais:
|
||
|
insert into pbx_campanha_status values(0,'Excluida', 1);
|
||
|
insert into pbx_campanha_status values(1,'ATIVA', 1);
|
||
|
insert into pbx_campanha_status values(2,'INATIVA',1);
|
||
|
insert into pbx_campanha_status values(3,'CONCLUIDA',1);
|
||
|
*
|
||
|
* Metadata da tabela:
|
||
|
* -- DROP TABLE pbx_campanha_status;
|
||
|
CREATE TABLE pbx_campanha_status(
|
||
|
cpst_id integer NOT NULL,
|
||
|
cpst_nome character varying(60),
|
||
|
cpst_status integer NOT NULL DEFAULT 1,
|
||
|
CONSTRAINT pbx_campanha_status_pkey PRIMARY KEY (cpst_id)
|
||
|
);
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
-----------------------------------------------------------------------------------------------------------------------------------------
|
||
|
| ID | DESCRICAO | ARQUIVO |
|
||
|
-----------------------------------------------------------------------------------------------------------------------------------------
|
||
|
|112 | Lista campanhas e seus status | discador/campanha/campanha.php; |
|
||
|
-----------------------------------------------------------------------------------------------------------------------------------------
|
||
|
|113 | Insere nova campanha ou adciona listas a campanha existente | discador/campanha/campanhaLista.php |
|
||
|
-----------------------------------------------------------------------------------------------------------------------------------------
|
||
|
|115 | Permite associar usuários as campanhas | discador/campanha/campanhaUsuario.php |
|
||
|
-----------------------------------------------------------------------------------------------------------------------------------------
|
||
|
|116 | Alterar os status das campanhas | discador/campanha/campanhaAtivacao.php |
|
||
|
-----------------------------------------------------------------------------------------------------------------------------------------
|
||
|
||||
|
||
|
||||
|
||
|
||||
|
||
|
||||
|
||
|
||||
|
||
|
-----------------------------------------------------------------------------------------------------------------------------------------
|
||
|
|
||
|
-----------------------------------------------------------------------------------------------------------------------------------------
|
||
|
|
||
|
/*
|
||
|
* Alteracoes necessarias
|
||
|
*/
|
||
|
alter table pbx_campanha_contato_fone alter column conf_fone type varchar(128);
|
||
|
alter table pbx_campanha add cmp_dados_envio text;
|
||
|
alter table pbx_campanha_lista add list_dados_envio text;
|
||
|
|
||
|
|
||
|
/*
|
||
|
* Tabelas removidas do projeto CAMPANHAS.
|
||
|
* Tabelas:
|
||
|
* pbx_campanha_agendamento;
|
||
|
* pbx_campanha_audio;
|
||
|
* pbx_chamadas_internas;
|
||
|
* pbx_campanha_canais_discando;
|
||
|
* pbx_campanha_complemento;
|
||
|
* pbx_campanha_modelos;
|
||
|
* pbx_campanha_troncos;
|
||
|
* pbx_campanha_grupos;
|
||
|
|
||
|
|
||
|
-- DROP TABLE pbx_campanha_agendamento;
|
||
|
CREATE TABLE pbx_campanha_agendamento
|
||
|
(
|
||
|
agd_matricula character varying(4) NOT NULL,
|
||
|
agd_data timestamp without time zone NOT NULL,
|
||
|
agd_fone character varying(30) NOT NULL,
|
||
|
agd_tipo integer,
|
||
|
agd_status character varying(50),
|
||
|
conf_id integer NOT NULL,
|
||
|
cmp_id integer NOT NULL,
|
||
|
list_id integer NOT NULL,
|
||
|
cont_id integer NOT NULL,
|
||
|
data_reg timestamp without time zone NOT NULL DEFAULT now(),
|
||
|
agd_agendado integer NOT NULL DEFAULT 0,
|
||
|
agd_id serial NOT NULL,
|
||
|
agd_callfile character varying(255),
|
||
|
CONSTRAINT "pkCampanhaComplemento" PRIMARY KEY (agd_matricula, agd_fone, agd_data, agd_id)
|
||
|
);
|
||
|
|
||
|
-- DROP TABLE pbx_campanha_audio;
|
||
|
|
||
|
CREATE TABLE pbx_campanha_audio
|
||
|
(
|
||
|
uniqueid character varying(32) NOT NULL,
|
||
|
aud_nome character varying(100),
|
||
|
matricula character varying(4),
|
||
|
aud_data date,
|
||
|
data_inicio timestamp without time zone NOT NULL DEFAULT now(),
|
||
|
data_fim timestamp without time zone,
|
||
|
cmp_id integer
|
||
|
);
|
||
|
|
||
|
-- DROP VIEW pbx_chamadas_internas;
|
||
|
|
||
|
CREATE OR REPLACE VIEW pbx_chamadas_internas AS
|
||
|
SELECT 'interna'::character varying AS tipo, 0 AS iddac, '-'::character varying AS fila, '-'::character varying AS apelido, '0'::character varying AS matricula, a.calldate, a.src, b.destino, a.billsec AS duration, COALESCE(a.userfield::text, c.aud_nome::text) AS userfield, 0 AS protocolo
|
||
|
FROM pbx_bilhetes a
|
||
|
JOIN pbx_bilhetes_complemento b ON b.uniqueid2::text = a.uniqueid::text
|
||
|
LEFT JOIN pbx_campanha_audio c ON c.uniqueid::text = a.uniqueid::text
|
||
|
WHERE rtrim(a.userfield::text) <> ''::text AND b.direcao::text = 'interna'::text AND a.billsec > 0;
|
||
|
|
||
|
|
||
|
-- DROP TABLE pbx_campanha_canais_discando;
|
||
|
|
||
|
CREATE TABLE pbx_campanha_canais_discando
|
||
|
(
|
||
|
id_canais serial NOT NULL,
|
||
|
id_cliente integer,
|
||
|
canal character varying(200),
|
||
|
data timestamp without time zone,
|
||
|
status integer NOT NULL DEFAULT 0,
|
||
|
CONSTRAINT pbx_campanha_canais_discando_pkey PRIMARY KEY (id_canais)
|
||
|
);
|
||
|
|
||
|
-- DROP TABLE pbx_campanha_complemento;
|
||
|
CREATE TABLE pbx_campanha_complemento
|
||
|
(
|
||
|
id bigserial NOT NULL,
|
||
|
uniqueid character varying(32) NOT NULL,
|
||
|
matricula character varying(10) NOT NULL,
|
||
|
login_id integer,
|
||
|
ramal character varying(10),
|
||
|
cmp_id bigint,
|
||
|
list_id bigint,
|
||
|
cont_id bigint,
|
||
|
conf_id bigint,
|
||
|
data_reg timestamp without time zone NOT NULL DEFAULT now(),
|
||
|
CONSTRAINT pbx_campanha_complemento_pkey PRIMARY KEY (id)
|
||
|
);;
|
||
|
|
||
|
-- Index: "idxCmpCompConfId"
|
||
|
|
||
|
-- DROP INDEX "idxCmpCompConfId";
|
||
|
|
||
|
CREATE INDEX "idxCmpCompConfId"
|
||
|
ON pbx_campanha_complemento
|
||
|
USING btree
|
||
|
(conf_id);
|
||
|
|
||
|
-- Index: "idxCmpCompMatricula"
|
||
|
|
||
|
-- DROP INDEX "idxCmpCompMatricula";
|
||
|
|
||
|
CREATE INDEX "idxCmpCompMatricula"
|
||
|
ON pbx_campanha_complemento
|
||
|
USING btree
|
||
|
(matricula);
|
||
|
|
||
|
-- Index: "idxCmpComplLoginId"
|
||
|
|
||
|
-- DROP INDEX "idxCmpComplLoginId";
|
||
|
|
||
|
CREATE INDEX "idxCmpComplLoginId"
|
||
|
ON pbx_campanha_complemento
|
||
|
USING btree
|
||
|
(login_id);
|
||
|
|
||
|
-- Index: "idxCmpComplUnqid"
|
||
|
|
||
|
-- DROP INDEX "idxCmpComplUnqid";
|
||
|
|
||
|
CREATE INDEX "idxCmpComplUnqid"
|
||
|
ON pbx_campanha_complemento
|
||
|
USING btree
|
||
|
(uniqueid);
|
||
|
|
||
|
-- DROP TABLE pbx_campanha_modelos;
|
||
|
-- select * from pbx_campanha_modelos
|
||
|
CREATE TABLE pbx_campanha_modelos
|
||
|
(
|
||
|
cpmd_id serial NOT NULL,
|
||
|
cmp_id integer NOT NULL,
|
||
|
cpmd_modelo character varying(100),
|
||
|
cpmd_nome_modelo character varying(100),
|
||
|
cpmd_recorte character varying(10),
|
||
|
cpmd_acrescenta character varying(10),
|
||
|
id_usuario integer,
|
||
|
data_registro timestamp without time zone NOT NULL DEFAULT now(),
|
||
|
ident_proc character varying(255),
|
||
|
CONSTRAINT pbx_campanha_modelos_pkey PRIMARY KEY (cpmd_id)
|
||
|
);
|
||
|
|
||
|
-- DROP TABLE pbx_campanha_troncos;
|
||
|
CREATE TABLE pbx_campanha_troncos
|
||
|
(
|
||
|
cptr_id serial NOT NULL,
|
||
|
cmp_id integer,
|
||
|
cpmd_id integer,
|
||
|
cptr_tronco integer,
|
||
|
cptr_nome_tronco character varying(100),
|
||
|
id_usuario integer,
|
||
|
data_registro timestamp without time zone NOT NULL DEFAULT now(),
|
||
|
ident_proc character varying(255),
|
||
|
cpmd_modelo character varying(100),
|
||
|
CONSTRAINT pbx_campanha_troncos_pkey PRIMARY KEY (cptr_id)
|
||
|
);
|
||
|
|
||
|
-- DROP TABLE pbx_campanha_grupos;
|
||
|
|
||
|
CREATE TABLE pbx_campanha_grupos
|
||
|
(
|
||
|
cmp_id integer NOT NULL,
|
||
|
gp_id integer NOT NULL,
|
||
|
CONSTRAINT pbx_campanha_grupos_pkey PRIMARY KEY (cmp_id, gp_id)
|
||
|
);
|
||
|
|
||
|
*/
|