feat: add migracoes_ibexpert.sql para execucao direta no IBExpert
This commit is contained in:
@@ -0,0 +1,308 @@
|
||||
-- ============================================================
|
||||
-- CHATC2 - SCRIPT DE CRIAÇÃO DO BANCO (IBExpert)
|
||||
-- ============================================================
|
||||
-- Execute cada bloco separadamente no IBExpert SQL Editor.
|
||||
-- Se algum comando falhar com "already exists", ignore e continue.
|
||||
-- ============================================================
|
||||
|
||||
-- ============================================================
|
||||
-- TABELA DE CONTROLE DE MIGRAÇÕES
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_CONTROLE_MIGRACOES (
|
||||
MIG_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
MIG_DESCRICAO VARCHAR(200),
|
||||
MIG_DATA_EXECUCAO TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
MIG_STATUS CHAR(1) DEFAULT 'A'
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 1. USU_TIPO_CHAT em USUARIOS
|
||||
-- ============================================================
|
||||
ALTER TABLE USUARIOS ADD USU_TIPO_CHAT CHAR(1) DEFAULT 'A';
|
||||
|
||||
-- ============================================================
|
||||
-- 2. Tabela CHATC2_INSTANCIAS
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_INSTANCIAS (
|
||||
INS_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
INS_EMPRESA_ID INTEGER NOT NULL,
|
||||
INS_NOME VARCHAR(100),
|
||||
INS_URL VARCHAR(500),
|
||||
INS_API_KEY VARCHAR(500),
|
||||
INS_INSTANCE_NAME VARCHAR(100),
|
||||
INS_STATUS CHAR(1) DEFAULT 'D',
|
||||
INS_QR_CODE BLOB SUB_TYPE 0,
|
||||
INS_DT_CONEXAO TIMESTAMP,
|
||||
INS_DT_CADASTRO TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
INS_SITUACAO CHAR(1) DEFAULT 'A'
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 3. Tabela CHATC2_EQUIPES
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_EQUIPES (
|
||||
EQU_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
EQU_EMPRESA_ID INTEGER NOT NULL,
|
||||
EQU_NOME VARCHAR(100),
|
||||
EQU_ORDEM INTEGER DEFAULT 0,
|
||||
EQU_SITUACAO CHAR(1) DEFAULT 'A'
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 4. Tabela CHATC2_USU_EQUIPES
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_USU_EQUIPES (
|
||||
EQU_EQUIPE_ID INTEGER NOT NULL,
|
||||
EQU_USUARIO_ID INTEGER NOT NULL,
|
||||
PRIMARY KEY (EQU_EQUIPE_ID, EQU_USUARIO_ID)
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 5. Tabela CHATC2_ETIQUETAS
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_ETIQUETAS (
|
||||
ETI_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
ETI_EMPRESA_ID INTEGER NOT NULL,
|
||||
ETI_NOME VARCHAR(50),
|
||||
ETI_COR VARCHAR(7) DEFAULT '#667eea',
|
||||
ETI_SITUACAO CHAR(1) DEFAULT 'A'
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 6. Tabela CHATC2_CONVERSAS
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_CONVERSAS (
|
||||
CON_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
CON_EMPRESA_ID INTEGER NOT NULL,
|
||||
CON_INSTANCIA_ID INTEGER,
|
||||
CON_CLIENTE_ID INTEGER,
|
||||
CON_NUMERO VARCHAR(20),
|
||||
CON_NOME_CONTATO VARCHAR(100),
|
||||
CON_STATUS CHAR(1) DEFAULT 'E',
|
||||
CON_USUARIO_ID INTEGER,
|
||||
CON_EQUIPE_ID INTEGER,
|
||||
CON_DT_INICIO TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
CON_DT_FINAL TIMESTAMP,
|
||||
CON_DT_ULTIMA_MSG TIMESTAMP,
|
||||
CON_SAUDACAO_ENVIADA CHAR(1) DEFAULT 'N',
|
||||
CON_CSAT_ENVIADO CHAR(1) DEFAULT 'N',
|
||||
CON_PRIMEIRA_MSG TIMESTAMP,
|
||||
CON_ORIGEM VARCHAR(20) DEFAULT 'whatsapp',
|
||||
CON_SITUACAO CHAR(1) DEFAULT 'A'
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 7. Tabela CHATC2_CONVERSAS_MENSAGENS
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_CONVERSAS_MENSAGENS (
|
||||
CME_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
CME_CONVERSA_ID INTEGER NOT NULL,
|
||||
CME_REMETENTE CHAR(1) DEFAULT 'C',
|
||||
CME_USUARIO_ID INTEGER,
|
||||
CME_MENSAGEM BLOB SUB_TYPE 1,
|
||||
CME_TEXTO VARCHAR(4000),
|
||||
CME_TIPO VARCHAR(20) DEFAULT 'text',
|
||||
CME_DT_ENVIO TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
CME_PRIVADA CHAR(1) DEFAULT 'N',
|
||||
CME_LIDA CHAR(1) DEFAULT 'N',
|
||||
CME_MIDIA_ID INTEGER,
|
||||
CME_SITUACAO CHAR(1) DEFAULT 'A'
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 8. Tabela CHATC2_MENSAGENS_ATENDIMENTOS
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_MENSAGENS_ATENDIMENTOS (
|
||||
MAT_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
MAT_CONVERSA_ID INTEGER,
|
||||
MAT_MENSAGEM_ID INTEGER,
|
||||
MAT_NOME_ARQUIVO VARCHAR(255),
|
||||
MAT_TIPO_ARQUIVO VARCHAR(50),
|
||||
MAT_ARQUIVO BLOB SUB_TYPE 0,
|
||||
MAT_DT_CADASTRO TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
MAT_SITUACAO CHAR(1) DEFAULT 'A'
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 9. Tabela CHATC2_CONVERSAS_ETIQUETAS
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_CONVERSAS_ETIQUETAS (
|
||||
CET_CONVERSA_ID INTEGER NOT NULL,
|
||||
CET_ETIQUETA_ID INTEGER NOT NULL,
|
||||
PRIMARY KEY (CET_CONVERSA_ID, CET_ETIQUETA_ID)
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 10. Tabela CHATC2_CSAT_AVALIACOES
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_CSAT_AVALIACOES (
|
||||
CSA_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
CSA_CONVERSA_ID INTEGER,
|
||||
CSA_EMPRESA_ID INTEGER,
|
||||
CSA_CLIENTE_ID INTEGER,
|
||||
CSA_NOTA INTEGER,
|
||||
CSA_COMENTARIO VARCHAR(500),
|
||||
CSA_DT_AVALIACAO TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 11. Tabela CHATC2_CONFIGURACOES_EMPRESA
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_CONFIGURACOES_EMPRESA (
|
||||
CFE_EMPRESA_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
CFE_INSTANCIA_PADRAO_ID INTEGER,
|
||||
CFE_FOTO_CELULAR CHAR(1) DEFAULT 'N',
|
||||
CFE_SAUDACAO_ATIVA CHAR(1) DEFAULT 'S',
|
||||
CFE_SAUDACAO_MENSAGEM VARCHAR(500),
|
||||
CFE_CSAT_ATIVO CHAR(1) DEFAULT 'N',
|
||||
CFE_CSAT_MENSAGEM VARCHAR(500) DEFAULT 'Avalie seu atendimento de 1 a 5 estrelas'
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 12. EQU_ORDEM em CHATC2_EQUIPES
|
||||
-- ============================================================
|
||||
ALTER TABLE CHATC2_EQUIPES ADD EQU_ORDEM INTEGER DEFAULT 0;
|
||||
|
||||
-- ============================================================
|
||||
-- 13. Campos de triagem
|
||||
-- ============================================================
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_ENVIAR_NOME_USUARIO CHAR(1) DEFAULT 'N';
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_TRIAGEM_ATIVA CHAR(1) DEFAULT 'N';
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_TRIAGEM_MSG_WELCOME VARCHAR(500);
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_TRIAGEM_MSG_AFTER VARCHAR(500);
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_TRIAGEM_BOLETO_NUMERO VARCHAR(10) DEFAULT '0';
|
||||
|
||||
-- ============================================================
|
||||
-- 14. CON_MENU_ESTADO em conversas
|
||||
-- ============================================================
|
||||
ALTER TABLE CHATC2_CONVERSAS ADD CON_MENU_ESTADO VARCHAR(100);
|
||||
|
||||
-- ============================================================
|
||||
-- 15. CON_ETIQUETAS_DESC em conversas
|
||||
-- ============================================================
|
||||
ALTER TABLE CHATC2_CONVERSAS ADD CON_ETIQUETAS_DESC VARCHAR(500);
|
||||
|
||||
-- ============================================================
|
||||
-- 16. Tabela CHATC2_MENUS_EMPRESA
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_MENUS_EMPRESA (
|
||||
MNE_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
MNE_EMPRESA_ID INTEGER,
|
||||
MNE_EQUIPE_ID INTEGER,
|
||||
MNE_MENU_PAI_ID INTEGER,
|
||||
MNE_ORDEM INTEGER DEFAULT 0,
|
||||
MNE_TITULO VARCHAR(100),
|
||||
MNE_TIPO CHAR(1) DEFAULT 'M',
|
||||
MNE_TEXTO BLOB SUB_TYPE TEXT,
|
||||
MNE_ACAO_ROTA VARCHAR(100),
|
||||
MNE_ACAO_METODO VARCHAR(10),
|
||||
MNE_ACAO_PROMPT VARCHAR(300),
|
||||
MNE_SITUACAO CHAR(1) DEFAULT 'A'
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 17. Novos campos em conversas
|
||||
-- ============================================================
|
||||
ALTER TABLE CHATC2_CONVERSAS ADD CON_USUARIO_NOME VARCHAR(100);
|
||||
ALTER TABLE CHATC2_CONVERSAS ADD CON_EQUIPE_NOME VARCHAR(100);
|
||||
|
||||
-- ============================================================
|
||||
-- 18. Etiquetas nos menus
|
||||
-- ============================================================
|
||||
ALTER TABLE CHATC2_MENUS_EMPRESA ADD MNE_ETIQUETA_IDS VARCHAR(200);
|
||||
|
||||
-- ============================================================
|
||||
-- 19. Transcrição de áudio
|
||||
-- ============================================================
|
||||
ALTER TABLE CHATC2_MENSAGENS_ATENDIMENTOS ADD MAT_TRANSCRICAO BLOB SUB_TYPE TEXT;
|
||||
|
||||
-- ============================================================
|
||||
-- 20. Generators (sequences)
|
||||
-- ============================================================
|
||||
CREATE GENERATOR GEN_CHATC2_CONVERSAS;
|
||||
CREATE GENERATOR GEN_CONVERSAS_MENSAGENS;
|
||||
CREATE GENERATOR GEN_MENSAGENS_ATENDIMENTOS;
|
||||
CREATE GENERATOR GEN_CHATC2_EQUIPES;
|
||||
CREATE GENERATOR GEN_CHATC2_ETIQUETAS;
|
||||
CREATE GENERATOR GEN_CHATC2_INSTANCIAS;
|
||||
CREATE GENERATOR GEN_CHATC2_MENUS_EMPRESA;
|
||||
CREATE GENERATOR GEN_CHATC2_CSAT_AVALIACOES;
|
||||
CREATE GENERATOR GEN_CHATC2_MOTIVOS_ATENDIMENTO;
|
||||
CREATE GENERATOR GEN_CHATC2_AGENDAMENTOS;
|
||||
|
||||
-- ============================================================
|
||||
-- 21. Índices
|
||||
-- ============================================================
|
||||
CREATE INDEX IDX_CLIENTES_CELULAR ON CLIENTES (CLI_CELULAR);
|
||||
CREATE INDEX IDX_CLIENTES_FONE1 ON CLIENTES (CLI_FONE1);
|
||||
CREATE INDEX IDX_CLIENTES_FONE2 ON CLIENTES (CLI_FONE2);
|
||||
CREATE INDEX IDX_CLIENTES_EMPRESA ON CLIENTES (CLI_EMPRESA_ID);
|
||||
CREATE INDEX IDX_CONV_NUMERO_EMPRESA ON CHATC2_CONVERSAS (CON_NUMERO, CON_EMPRESA_ID);
|
||||
CREATE INDEX IDX_CONV_STATUS ON CHATC2_CONVERSAS (CON_STATUS);
|
||||
|
||||
-- ============================================================
|
||||
-- 22. Mensagem e etiqueta por equipe
|
||||
-- ============================================================
|
||||
ALTER TABLE CHATC2_EQUIPES ADD EQU_MENSAGEM VARCHAR(500);
|
||||
ALTER TABLE CHATC2_EQUIPES ADD EQU_ETIQUETA_ID INTEGER;
|
||||
|
||||
-- ============================================================
|
||||
-- 23. Tabela de agendamentos
|
||||
-- ============================================================
|
||||
CREATE TABLE CHATC2_CONVERSAS_AGENDAMENTOS (
|
||||
CAG_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
CAG_CONVERSA_ID INTEGER NOT NULL,
|
||||
CAG_EMPRESA_ID INTEGER,
|
||||
CAG_DATA DATE NOT NULL,
|
||||
CAG_HORA TIME,
|
||||
CAG_NOTA VARCHAR(300),
|
||||
CAG_STATUS CHAR(1) DEFAULT 'P',
|
||||
CAG_USUARIO_ID INTEGER,
|
||||
CAG_DT_CRIACAO TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- ============================================================
|
||||
-- 24. Fluxo de resolução
|
||||
-- ============================================================
|
||||
CREATE TABLE "CHATC2_MOTIVOS_ATENDIMENTO" (
|
||||
MOT_CODIGO_ID INTEGER NOT NULL PRIMARY KEY,
|
||||
MOT_EMPRESA_ID INTEGER,
|
||||
MOT_DESCRICAO VARCHAR(150),
|
||||
MOT_SITUACAO CHAR(1) DEFAULT 'A'
|
||||
);
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_MOTIVO_VISUALIZAR CHAR(1) DEFAULT 'N';
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_MOTIVO_OBRIGATORIO CHAR(1) DEFAULT 'N';
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_RESOLUCAO_VISUALIZAR CHAR(1) DEFAULT 'N';
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_RESOLUCAO_OBRIGATORIO CHAR(1) DEFAULT 'N';
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_ENVIAR_BOLETO CHAR(1) DEFAULT 'N';
|
||||
ALTER TABLE CHATC2_CONFIGURACOES_EMPRESA ADD CFE_RESOLUCAO_SALVAR_MSC CHAR(1) DEFAULT 'N';
|
||||
ALTER TABLE CHATC2_CONVERSAS ADD CON_MOTIVO_ID INTEGER;
|
||||
ALTER TABLE CHATC2_CONVERSAS ADD CON_RESOLUCAO VARCHAR(4000);
|
||||
|
||||
-- ============================================================
|
||||
-- REGISTRA MIGRAÇÕES COMO EXECUTADAS
|
||||
-- ============================================================
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (1, 'USU_TIPO_CHAT');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (2, 'Tabela CHATC2_INSTANCIAS');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (3, 'Tabela CHATC2_EQUIPES');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (4, 'Tabela CHATC2_USU_EQUIPES');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (5, 'Tabela CHATC2_ETIQUETAS');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (6, 'Tabela CHATC2_CONVERSAS');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (7, 'Tabela CHATC2_CONVERSAS_MENSAGENS');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (8, 'Tabela CHATC2_MENSAGENS_ATENDIMENTOS');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (9, 'Tabela CHATC2_CONVERSAS_ETIQUETAS');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (10, 'Tabela CHATC2_CSAT_AVALIACOES');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (11, 'Tabela CHATC2_CONFIGURACOES_EMPRESA');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (12, 'EQU_ORDEM');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (13, 'Campos de triagem');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (14, 'CON_MENU_ESTADO');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (15, 'CON_ETIQUETAS_DESC');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (16, 'Tabela CHATC2_MENUS_EMPRESA');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (17, 'CON_USUARIO_NOME e CON_EQUIPE_NOME');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (18, 'MNE_ETIQUETA_IDS');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (19, 'MAT_TRANSCRICAO');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (20, 'Generators');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (21, 'Índices');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (22, 'Mensagem/etiqueta por equipe');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (23, 'Agendamentos');
|
||||
INSERT INTO CHATC2_CONTROLE_MIGRACOES (MIG_ID, MIG_DESCRICAO) VALUES (24, 'Fluxo de resolução');
|
||||
Reference in New Issue
Block a user