31 lines
1.2 KiB
SQL
31 lines
1.2 KiB
SQL
-- e-li.nps: tabelas globais do painel (comentários e status de análise)
|
|
--
|
|
-- Importante:
|
|
-- - o app também cria essas tabelas de forma defensiva em runtime (EnsurePainelTables)
|
|
-- - este arquivo é um backup/documentação para ambientes que preferem rodar SQL manual
|
|
|
|
CREATE TABLE IF NOT EXISTS painel_resposta_status (
|
|
produto text NOT NULL,
|
|
resposta_id text NOT NULL,
|
|
status text NOT NULL CHECK (status IN ('pendente','concluida')),
|
|
concluida_em timestamptz NULL,
|
|
atualizado_em timestamptz NOT NULL DEFAULT now(),
|
|
PRIMARY KEY (produto, resposta_id)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS painel_resposta_comentario (
|
|
id uuid PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
produto text NOT NULL,
|
|
resposta_id text NOT NULL,
|
|
-- Operador logado no painel no momento da criação do comentário.
|
|
pessoa_nome text NOT NULL,
|
|
-- ID de sessão do login para aplicar regra: só edita/deleta na mesma sessão.
|
|
sessao_id uuid NOT NULL,
|
|
comentario text NOT NULL,
|
|
criado_em timestamptz NOT NULL DEFAULT now(),
|
|
atualizado_em timestamptz NOT NULL DEFAULT now()
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_painel_resp_comentario
|
|
ON painel_resposta_comentario (produto, resposta_id, criado_em ASC);
|
|
|