CREATE DATABASE IF NOT EXISTS pecnuvem_copilot CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE pecnuvem_copilot;

CREATE TABLE IF NOT EXISTS copilot_logs (
    id INT AUTO_INCREMENT PRIMARY KEY,
    perfil VARCHAR(80),
    pergunta TEXT,
    contexto MEDIUMTEXT,
    resposta MEDIUMTEXT,
    url TEXT,
    criado_em DATETIME DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE IF NOT EXISTS prompts_ia (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nome VARCHAR(255),
    conteudo LONGTEXT,
    ativo TINYINT DEFAULT 1,
    criado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE IF NOT EXISTS base_conhecimento (
    id INT AUTO_INCREMENT PRIMARY KEY,
    categoria VARCHAR(255),
    titulo VARCHAR(255),
    conteudo LONGTEXT,
    ativo TINYINT DEFAULT 1,
    criado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE IF NOT EXISTS aps_oportunidades (
    id INT AUTO_INCREMENT PRIMARY KEY,
    co_cidadao VARCHAR(100),
    nome_cidadao VARCHAR(255),
    equipe VARCHAR(255),
    unidade VARCHAR(255),
    indicador VARCHAR(255),
    prioridade VARCHAR(50),
    valor_estimado DECIMAL(10,2) DEFAULT 0,
    descricao TEXT,
    status VARCHAR(50) DEFAULT 'Aberta',
    atualizado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    UNIQUE KEY uk_cid_ind (co_cidadao, indicador)
);

INSERT INTO prompts_ia (nome, conteudo, ativo)
SELECT 'Prompt principal APS',
'Você é o PECNUVEM Copilot IA, assistente para e-SUS PEC, APS, Brasil 360, CIAP, CID, SOAP e boas práticas. Sugira, não determine diagnóstico. Não substitua decisão clínica.',
1
WHERE NOT EXISTS (SELECT 1 FROM prompts_ia WHERE nome='Prompt principal APS');

INSERT INTO base_conhecimento (categoria,titulo,conteudo,ativo)
SELECT 'APS','Orientação inicial',
'Use CIAP/CID apenas como apoio. O registro deve refletir a avaliação clínica real do profissional. Para indicadores, observar boas práticas, faixa etária, temporalidade e vínculo.',
1
WHERE NOT EXISTS (SELECT 1 FROM base_conhecimento WHERE titulo='Orientação inicial');
