-- 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);