CREATE TABLE regra_negocios (
    id                bigint NOT NULL,
    sistema_id        bigint NOT NULL,
    nome              VARCHAR2(255) NOT NULL,
    slug              VARCHAR2(255) NOT NULL,
    situacao          SMALLINT DEFAULT 1 NOT NULL,
    template          text,
    monitora_execucao SMALLINT DEFAULT 0 NOT NULL,
    descricao         VARCHAR2(500),
    padrao_sistema    SMALLINT DEFAULT 0 NOT NULL,
    config            json
);

ALTER TABLE regra_negocios
    ADD CHECK ( situacao IN ( 0, 1 ) );

ALTER TABLE regra_negocios
    ADD CHECK ( monitora_execucao IN ( 0, 1 ) );

ALTER TABLE regra_negocios
    ADD CHECK ( padrao_sistema IN ( 0, 1 ) );

COMMENT ON COLUMN regra_negocios.slug IS
    'Slug do campo';

COMMENT ON COLUMN regra_negocios.config IS
    'Demais configurações da regra de negócio';

CREATE INDEX regra_negocios_slug ON
    regra_negocios (
        slug
    ASC );