CREATE TABLE IF NOT EXISTS ramos_atividade (
    id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
    empresa_id BIGINT NOT NULL REFERENCES empresas(id),
    codigo VARCHAR(20) NOT NULL,
    descricao VARCHAR(160) NOT NULL,
    ativo BOOLEAN NOT NULL DEFAULT TRUE,
    criado_em TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    atualizado_em TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    excluido_em TIMESTAMP NULL,
    CONSTRAINT uq_ramos_atividade_empresa_codigo UNIQUE (empresa_id, codigo)
);
CREATE INDEX IF NOT EXISTS idx_ramos_atividade_empresa_ativo ON ramos_atividade (empresa_id, ativo);

ALTER TABLE pessoa_clientes ADD COLUMN ramo_atividade_id BIGINT NULL REFERENCES ramos_atividade(id);
CREATE INDEX IF NOT EXISTS idx_pessoa_clientes_ramo_atividade ON pessoa_clientes (empresa_id, ramo_atividade_id);
