Classe para integração com o SEI.

Sei

A biblioteca do Sei permite incluir, por meio do SEI Administrar, procedimentos/processos e documentos no SEI.

Para isso, você deve utilizar uma conexão com o Aria da seguinte forma para obter o objeto sei.

Para fins de documentação, os processos no SEI aqui significam procedimentos. Portanto, saiba que processo e procedimento são sinônimos.

const aria = await ariaConnect({username: "username", password: "password"});
const sei = aria.getSei();

Se desejar utilizar em ambiente de Desenvolvimento, utilizar:

const aria = await ariaConnect({username: "username", password: "password", baseUrl: "http://ms-aria.appsdev.ocp.tesouro.gov.br/"});
const sei = aria.getSei();

E, em ambiente de Homologação, usar:

const aria = await ariaConnect({username: "username", password: "password", baseUrl: "http://ms-aria.appshom.ocp.tesouro.gov.br/"});
const sei = aria.getSei();

Como criar um Processo/Procedimento e adicionar documentos nele

Para criar um processo/procedimento no SEI, é necessário utilizar o método sei.gerarProcedimento abaixo. No caso, passo como parâmetro o tipo do processo, que, no caso, é "100000206", que corresponde a "Licença por acidente em serviço".

const novoProcedimento = await sei.gerarProcedimento("100000206"); // Licença por acidente em serviço

Depois, eu posso inserir documentos neste procedimento/processo, utilizando o código do procedimento gerado na linha anterior, que pode ser obtido por novoProcedimento.codigoProcedimentoSei.

Assim, usamos o método sei.gravarDocumentoHtml abaixo para incluir um documento HTML:

const codigoDocumentoNovo = await sei.gravarDocumentoHtml({
codigoProcedimentoSei: novoProcedimento.codigoProcedimentoSei,
descricao: "Meu novo documento",
idSerieSei: 1247,
payloadHtml: "<p>HTML do meu documento</p>"
});

Esse método retorna um código de documento do SEI, que pode ser utilizado para objetivos diversos.

Para adicionar outros tipos de documentos, tais como PDF, é necessário utilizar a função sei.gravarDocumentoArquivo.

const arquivoTeste = fs.readFileSync("Teste1.pdf");

const codigoDocumentoNovoArquivo = await sei.gravarDocumentoArquivo({
codigoProcedimentoSei: novoProcedimento.codigoProcedimentoSei,
descricao: "Meu novo documento",
idSerieSei: 263,
nomeArquivo: "Teste1.pdf",
dataArquivo: new Date(),
arquivo: arquivoTeste
});

Assim, temos um processo com dois documentos, um HTML (nativo do SEI), e outro PDF (externo).

Obter um documento pelo código

Para obter dados de um documento SEI pelo seu código, utilizar o método sei.getDocumentoPorCodigo.

const documentoNovo = await sei.getDocumentoPorCodigo(codigoDocumentoNovo);

Obter os documentos de um Processo/Procedimento

Para obter a lista de documentos de um procedimento/processo, basta utilizar o método sei.getDocumentosPorCodigoProcedimento, e passar o código do procedimento desejado. Importante: Somente é possível obter os documentos de procedimentos/processo que tenham sido criado por essa API.

const documentosProcedimento = await sei.getDocumentosPorCodigoProcedimento("17944.100037/2023-84");

for(const doc of documentosProcedimento) {
console.log(doc);
}

Obter dados de todas as Séries existentes

Para obter dados referentes a todas as séries existentes no SEI, utilizar o método sei.getSeries.

const series = await sei.getSeries()

for(const serie of series) {
console.log(serie.idSerie);
console.log(serie.nome);
console.log(serie.aplicabilidade);
}

Obter uma Série pelo nome

Para obter uma série pelo seu nome, utilizar o método sei.getSeriePorNome.

const serie = await sei.getSeriePorNome("Volume de Processo");
console.log(serie.idSerie);
console.log(serie.nome);
console.log(serie.aplicabilidade);

Obter todos os Modelos HTML do SEI Administrar

Para obter todos os modelos HTML cadastrados no SEI Administrar, utilizar o método sei.getModelosHtml.

const modelosHtml = await sei.getModelosHtml();

for(const modeloHtml of modelosHtml) {
console.log(modeloHtml.idModeloHtml);
console.log(modeloHtml.nome);
console.log(modeloHtml.html);
console.log(modeloHtml.idUnidadeStn);
}

Obter os Modelos HTML de uma unidade

Para obter todos os Modelos HTML específicos de uma determinada unidade no SEI Administrar, por meio do ID da unidade, utilizar o método sei.getModelosHtmlPorIdUnidade.

const modelosHtmlUnidade = await sei.getModelosHtmlPorIdUnidade(1);

for(const modeloHtml of modelosHtmlUnidade) {
console.log(modeloHtml.idModeloHtml);
console.log(modeloHtml.nome);
console.log(modeloHtml.html);
console.log(modeloHtml.idUnidadeStn);
}

Obter um Modelo HTML por seu ID

Para obter um Modelo HTML do Sei Administrar pelo seu ID, utilizar o método sei.getModeloHtmlPorId.

const modeloHtml = await sei.getModeloHtmlPorId(1);
console.log(modeloHtml.idModeloHtml);
console.log(modeloHtml.nome);
console.log(modeloHtml.html);
console.log(modeloHtml.idUnidadeStn);

Obter a lista de Processos/Procedimentos

Para obter a lista de processos/procedimentos gerados por meio da API, utilizar o método sei.getProcedimentos.

const procedimentos = await sei.getProcedimentos();

for(const procedimento of procedimentos) {
console.log(procedimento.idProcedimento);
console.log(procedimento.codigoProcedimentoSei);
}

Obter um Processo/Procedimento por ID

Para obter um processo/procedimento pelo seu ID, utilizar o método sei.getProcedimentoPorId.

const procedimentoPorId = await sei.getProcedimentoPorId(1);
console.log(procedimentoPorId.idProcedimento);
console.log(procedimentoPorId.codigoProcedimentoSei);

Obter um Processo/Procedimento por Código

Para obter um processo/procedimento pelo seu código, utilizar o método sei.getProcedimentoPorCodigo.

const procedimentoPorCodigo = await sei.getProcedimentoPorCodigo("17944.100005/2022-06");
console.log(procedimentoPorCodigo.idProcedimento);
console.log(procedimentoPorCodigo.codigoProcedimentoSei);

Author

Igor Augusto de Faria Costa

Hierarchy

  • default

Constructors

Methods

  • Gera um procedimento/processo vazio no SEI. Retorna informações sobre o procedimento.

    Example

    Para criar um processo/procedimento no SEI, é necessário utilizar o método sei.gerarProcedimento abaixo. No caso, passo como parâmetro o tipo do processo, que, no caso, é "100000206", que corresponde a "Licença por acidente em serviço".

    const novoProcedimento = await sei.gerarProcedimento("100000206"); // Licença por acidente em serviço
    

    Returns

    Parameters

    • idTipoProcedimento: string

      ID do tipo do Procedimento.

    Returns Promise<default>

  • Obtém um documento pelo seu código do SEI.

    Example

    Para obter dados de um documento SEI pelo seu código, utilizar o método sei.getDocumentoPorCodigo.

    const documentoNovo = await sei.getDocumentoPorCodigo(codigoDocumentoNovo);
    

    Returns

    Parameters

    • codigo: number

      código do documento no SEI.

    Returns Promise<default>

  • Obtém uma lista de documentos de um determindo procedimento/processo. Procedimento é o mesmo que processo.

    Somente vai trazer se o processo tiver sido feito pela API.

    Example

    Para obter a lista de documentos de um procedimento/processo, basta utilizar o método sei.getDocumentosPorCodigoProcedimento, e passar o código do procedimento desejado. Importante: Somente é possível obter os documentos de procedimentos/processo que tenham sido criado por essa API.

    const documentosProcedimento = await sei.getDocumentosPorCodigoProcedimento("17944.100037/2023-84");

    for(const doc of documentosProcedimento) {
    console.log(doc);
    }

    Returns

    Parameters

    • codigoProcedimentoSei: string

      Código do procedimento/processo no SEI.

    Returns Promise<default[]>

  • Obtém um modelo HTML com base em seu id.

    Example

    Para obter um Modelo HTML do Sei Administrar pelo seu ID, utilizar o método sei.getModeloHtmlPorId.

    const modeloHtml = await sei.getModeloHtmlPorId(1);
    console.log(modeloHtml.idModeloHtml);
    console.log(modeloHtml.nome);
    console.log(modeloHtml.html);
    console.log(modeloHtml.idUnidadeStn);

    Returns

    Parameters

    • id: number

      ID do modelo HTML cadastrado no SEI Administrar

    Returns Promise<default>

  • Obtém uma lista de modelos HTML do SEI Administrar.

    Example

    Para obter todos os modelos HTML cadastrados no SEI Administrar, utilizar o método sei.getModelosHtml.

    const modelosHtml = await sei.getModelosHtml();

    for(const modeloHtml of modelosHtml) {
    console.log(modeloHtml.idModeloHtml);
    console.log(modeloHtml.nome);
    console.log(modeloHtml.html);
    console.log(modeloHtml.idUnidadeStn);
    }

    Returns

    Parameters

    • Optional options: default

      Opções de busca de modelos HTML. Podem ser: - idModeloHtml: o ID do Modelo HTML. - idUnidadeStn: o ID da Unidade STN a que pertencem os modelos.

    Returns Promise<default[]>

  • Obtém um modelo HTML pertencente a uma determinda unidade da STN.

    Example

    Para obter todos os Modelos HTML específicos de uma determinada unidade no SEI Administrar, por meio do ID da unidade, utilizar o método sei.getModelosHtmlPorIdUnidade.

    const modelosHtmlUnidade = await sei.getModelosHtmlPorIdUnidade(1);

    for(const modeloHtml of modelosHtmlUnidade) {
    console.log(modeloHtml.idModeloHtml);
    console.log(modeloHtml.nome);
    console.log(modeloHtml.html);
    console.log(modeloHtml.idUnidadeStn);
    }

    Returns

    Parameters

    • idUnidade: number

      ID da unidade a que pertencem os modelos HTML

    Returns Promise<default[]>

  • Obtém um procedimento/processo específico pelo seu código.

    Example

    Para obter um processo/procedimento pelo seu código, utilizar o método sei.getProcedimentoPorCodigo.

    const procedimentoPorCodigo = await sei.getProcedimentoPorCodigo("17944.100005/2022-06");
    console.log(procedimentoPorCodigo.idProcedimento);
    console.log(procedimentoPorCodigo.codigoProcedimentoSei);

    Returns

    Parameters

    • codigo: string

      Código do procedimento/processo no SEI.

    Returns Promise<default>

  • Obtém um procedimento/processo específico pelo seu id ou pelo seu código.

    Example

    Para obter um processo/procedimento pelo seu ID, utilizar o método sei.getProcedimentoPorId.

    const procedimentoPorId = await sei.getProcedimentoPorId(1);
    console.log(procedimentoPorId.idProcedimento);
    console.log(procedimentoPorId.codigoProcedimentoSei);

    Returns

    Parameters

    • id: number

      ID do procedimento/processo no SEI Administrar.

    Returns Promise<default>

  • Obtém a lista de Processos/Procedimentos no SEI Administrar. Basicamente, esta função irá trazer todos os Processos/Procedimentos que foram criados utilizando esta API.

    Example

    Para obter a lista de processos/procedimentos gerados por meio da API, utilizar o método sei.getProcedimentos.

    const procedimentos = await sei.getProcedimentos();

    for(const procedimento of procedimentos) {
    console.log(procedimento.idProcedimento);
    console.log(procedimento.codigoProcedimentoSei);
    }

    Returns

    Parameters

    • Optional options: default

      Opções para obter dados dos procedimentos. Se não informar, traz todos. Podem ser: - idProcedimentoSei: ID do Procedimento no SEI. - codigoProcedimentoSei: Código do Procedimento no SEI.

    Returns Promise<default[]>

  • Obtém uma série do SEI pelo seu nome.

    Example

    Para obter uma série pelo seu nome, utilizar o método sei.getSeriePorNome.

    const serie = await sei.getSeriePorNome("Volume de Processo");
    console.log(serie.idSerie);
    console.log(serie.nome);
    console.log(serie.aplicabilidade);

    Returns

    Parameters

    • nome: string

      Nome exato da série.

    Returns Promise<default>

  • Obtém a lista de séries do SEI.

    Example

    Para obter dados referentes a todas as séries existentes no SEI, utilizar o método sei.getSeries.

    const series = await sei.getSeries()

    for(const serie of series) {
    console.log(serie.idSerie);
    console.log(serie.nome);
    console.log(serie.aplicabilidade);
    }

    Returns

    Parameters

    • Optional options: default

      Opções de filtro para séries. Se não informar, traz todas. Podem ser: - nomeSerie: nome da Série.

    Returns Promise<default[]>

  • Grava um documento qualquer (ex.: PDF) em um procedimento/processo SEI.

    Example

    Para adicionar outros tipos de documentos, tais como PDF, é necessário utilizar a função sei.gravarDocumentoArquivo.

    const arquivoTeste = fs.readFileSync("Teste1.pdf");

    const codigoDocumentoNovoArquivo = await sei.gravarDocumentoArquivo({
    codigoProcedimentoSei: novoProcedimento.codigoProcedimentoSei,
    descricao: "Meu novo documento",
    idSerieSei: 263,
    nomeArquivo: "Teste1.pdf",
    dataArquivo: new Date(),
    arquivo: arquivoTeste
    });

    Returns

    Parameters

    • options: default

      As opções para gravar o documento. É um objeto com os seguintes valores: - codigoProcedimentoSei - descricao - idSerieSei - nomeArquivo - dataArquivo - arquivo

    Returns Promise<number>

  • Grava um documento HTML em um procedimento/processo SEI.

    Example

    Usamos o método sei.gravarDocumentoHtml abaixo para incluir um documento HTML:

    const codigoDocumentoNovo = await sei.gravarDocumentoHtml({
    codigoProcedimentoSei: novoProcedimento.codigoProcedimentoSei,
    descricao: "Meu novo documento",
    idSerieSei: 1247,
    payloadHtml: "<p>HTML do meu documento</p>"
    });

    Returns

    Parameters

    • options: default

      As opções para gravar o documento. É um objeto com os seguintes valores: - codigoProcedimentoSei

    Returns Promise<number>

Generated using TypeDoc