Ir para o conteúdo principal

Vincular a carta de serviços a um CNPJ

Data de elaboração 20/10/2022
Responsável pelo estudo
  1. Rafael Passos dos Santos (Assessor)
  2. Lucas de Souza e Sousa (Assessor)
Equipe do estudo
  1. André Honório de Andrade Silva (Tecnico)
  2. Gezinéia Paula da Costa (Product Owner)
  3. Emanuel Rufino Alcantara de Lima (Analista)
  4. Lucas de Souza e Souza (Assessor)
  5. Rafael Passos dos Santos (Assessor)
Alvo Alpha - Carta de serviços
Origem

Implementação: Implementação de melhorias visuais e funcionais na tela inicial do Portal do Servidor.

Objetivo

O presente estudo tem como objetivo analisar o que terá que ser feito para alterar a vinculação da carta de serviços através do CNPJ e os possíveis impactos às aplicações dependentes da API da carta de serviços

Documentação correlata
Observações O presente estudo pretende também pretende levantar as Historias dos cards para a Sprint 
1. Objetivo

O presente estudo tem como objetivo analisar o que terá que ser feito para alterar a vinculação da carta de serviços através do CNPJ e os possíveis impactos às aplicações dependentes da API da carta de serviços

1.1 JUSTIFICATIVA

Há uma necessidade de integrarincluir cartaas cartas de serviços de outras instituições que também utilizarão o Alpha, porém não fazem parte da hierarquia interna do Governo. Para essas instituições foi levantada a hipótese de se realizar este estudo para verificar a possibilidade de tambémse utilizar o CNPJ para identificar asqual entidadesa do governo nas cartascarta de serviço.os é relacionada ao gestor de serviços ou ao atendente.

1.2 RESULTADOS ESPERADOS

Espera-se que, após este estudo, seja possível avaliar a possibilidade de se utilizar o CNPJ para criar e buscar a carta de serviços de instituições internas e externas do Governo

2. Introdução

O Alpha é uma aplicação desenvolvida pela SETIC - esta é utilizada pelos servidores gestores das cartas de serviços do Estado de Rondônia. 

3. Desenvolvimento - Melhorias na página inicial do Portal do Servidor

3.1 CENÁRIO ATUAL

3.1.1 Alpha Serviços API

A carta de serviços foi desenvolvida baseada em um identificador interno (unidadeOrcamentariaId), trata-se de um campo que identifica qual unidade orçamentária corresponde a determinada carta de serviços. 

image.png

1. Tabela da carta de serviços

Nesta tabela esse campo é identificado com CodigoDaUnidadeGestoraDoDepartamento.

Para identificar qual a unidade que o servidor está lotado, utilizamos a rota no e-estado API trazendo as movimentações com os seguintes campos:

  1.  codigoDaUnidadeOrcamentaria - código que identifica qual a unidade de origem do servidor
  2.  codigoDaUnidadeGestoraDoDepartamento - código que identifica a unidade em que o servidor está lotado
  3.  departamentoPadrao - flag que identifica que a movimentação é a padrão, ou seja, movimentação vigente do servidor.

Obs: Nesta rota, não existe a informação de qual é o CNPJ da unidade.

RELACIONAMENTO COM OUTRAS TABELAS

Foi verificado que o campo que relaciona com as outras tabelas (Serviços), trata-se do campo "Id", ou seja, o campo "CodigoDaUnidadeGestoraDoDepartamento" não é utilizado para relacionamento.relacionamento com a tabela de serviços.

 

3.1.2 Alpha Solicitações API

Solicitações do Servidor

Na tabela de solicitações do servidor há o campo unidade orçamentária, este campo identifica a unidade orçamentária que o servidor estiver lotado no momento da solicitação. Este campo é utilizado no filtro de solicitações.

Avaliações dos agendamentos

O campo de unidade orçamentária também é utilizado como parâmetro para se obter as avaliações por unidade orçamentária. Para isso, é utilizada a rota de obter todos os serviços da unidade orçamentária. Com base nesses serviços é realizado um filtro nas avaliações existentes.

Dashboard

O campo de unidade orçamentária também é utilizado para se obter o quantitivo de solicitações por unidade orçamentária.

 

3.2 SOLUÇÃO

É possível implementarmosimplementar uma das duas soluções:

3.2.1 SOLUÇÃO 1 - Utilizar o CNPJ como identificador único na busca da carta de serviços

IncluirEsta solução campo CNPJ na tabela de Carta de Serviços erequer incluir as informações dos CNPJs da Unidade Gestora do Departamento e da Unidade Orcamentaria do servidor na rota de movimentações. Dessa forma, será padronizada a busca por CNPJ, tanto para usuários do governo quanto usuários externos, retirando o campo de Unidade orçamentaria das buscas.

3.2.1.1 IMPLEMENTAÇÃO E HISTÓRIAS DE USUÁRIOS DA SOLUÇÃO 1

O que? Pontos Regras Produto
E-Estado



Incluir CNPJ das unidades orçamentária e gestora do servidor na rota de movimentações do servidor5


E-Estado
Criar rota para obter a unidade orçamentária pelo CNPJ

5

Mesmo retorno da rota: api/unidadeorcamentaria/id/

E-Estado
Alpha Servicos



Criação do campo CNPJ na tabela Carta de serviços3

Campo obrigatório


Alpha

API

Alterar o parâmetro para buscar por CNPJ nas rotas de ObterCartaDeServicos na Api5

Alterar o parâmetro das rotas para buscar por cnpj

Parâmetro:

cnpjDaUnidade - para as unidades externas

 

Rotas a serem alteradas:

  • CartaDeServicos/ObterCartaDeServicosPublicadosParaOPortalDoServidor/{cnpjDaUnidade}
  • CartaDeServicos/ObterCartaDeServicosPorCodigoDaUnidadeOrcamentaria/{cnpjDaUnidade}
  • Servico/ObterServicosPorUnidadeOrcamentaria{cnpjDaUnidade}
Alpha API
Alterar parâmetro de busca por unidade orçamentária e substituir por CNPJ nas rotas de ObterCartaDeServicos no Alpha WEB3


Alpha WEB
Criar rotina para atualizar o banco da carta de serviços, incluindo o cnpj de cada unidade orçamentária relacionada5


Alpha API
Retirar o campo unidadeOrcamentariaId da tabela carta de serviços2


Alpha API
Portais



Alterar parâmetro de busca por unidade orçamentária e substituir por CNPJ nas rotas de ObterCartaDeServicos no Portal do servidor3


Portal do servidor
Alpha Solicitacoes



Alterar campo unidadeOrcamentaria para CNPJ na tabela solicitacoes de servidores



Alterar rota ObterAvaliacoesPorUnidadeOrcamentaria3

Alterar para ObterAvaliacoesPorCNPJ

Alpha Solicitações API
Alpha Solicitacoes WEB



Alterar consulta de avaliações por CNPJ3

Alterar para ObterAvaliacoesPorCNPJ


Total




3.2.2 SOLUÇÃO 2 - Utilizar tanto unidade orçamentária (servidores) quanto CNPJ (externos) para identificar a carta de serviços

Adicionar o campo CNPJ nas buscas da carta de serviço. Dessa forma, a carta poderá ser buscada tanto por unidade orçamentária quanto por CNPJ, realizando a tratativa de acordo se um dos campos estiver nulo.

3.2.2.1 IMPLEMENTAÇÃO E HISTÓRIAS DE USUÁRIOS

Para aplicar a solução acima será necessário as seguintes histórias de usuários:

O que?PontosRegrasProduto
Criação do campo CNPJ na tabela Carta de serviços 3

Deixar o campo CodigoDaUnidadeGestoraDoDepartamento como nullable


Alpha

API

Incluir CNPJ das unidades orçamentária e gestora do servidor5


E-Estado
Adicionar parâmetro CNPJ nas rotas de ObterCartaDeServicos na API 5

As rotas receberão dois campos:

1) CodigoDaUnidadeOrcamentaria - para as unidades do governo

2) CNPJ - para as unidades externas

A rota deve ser alterara para que no caso do codigoDaUnidadeOrcamentaria vier nula, utilizar o CNPJ para obter a carta de serviços

Rotas a serem alteradas:

  • ObterCartaDeServicosPublicadosParaOPortalDoServidor/{codigoDaUnidadeOrcamentaria}
  • ObterCartaDeServicosPorCodigoDaUnidadeOrcamentaria/{codigoDaUnidadeOrcamentaria}
Alpha API
Alterar parâmetro de busca por unidade orçamentária e substituir por CNPJ nas rotas de ObterCartaDeServicos no Alpha WEB3


Alpha WEB
Alterar parâmetro de busca por unidade orçamentária e substituir por CNPJ nas rotas de ObterCartaDeServicos no Portal do servidor3


Portal do servidor
Criar rotina para atualizar o banco da carta de serviços, incluindo o cnpj de cada unidade orçamentária relacionada5


Alpha API
Retirar o campo unidadeOrcamentariaId da tabela carta de serviços2


Alpha API

 

3.2.2 SOLUÇÃO 2

Incluir o campo CNPJ na tabela de Carta de Serviços e adicionar o campo CNPJ nas buscas da carta de serviço. Dessa forma, a carta poderá ser buscada tanto por unidade orçamentária quanto por CNPJ, realizando a tratativa de acordo se um dos campos estiver nulo.

3.2.2.1 IMPLEMENTAÇÃO E HISTÓRIAS DE USUÁRIOS

Para aplicar a solução acima será necessário as seguintes histórias de usuários:

O que?PontosRegrasProduto
- Criação do campo CNPJ na tabela Carta de serviços3

Deixar o campo CodigoDaUnidadeGestoraDoDepartamento como nullable


Alpha

API

- Adicionar parâmetro CNPJ nas rotas de ObterCartaDeServicos na API5

As rotas receberão dois campos:

1) CodigoDaUnidadeOrcamentaria - para as unidades do governo

2) CNPJ - para as unidades externas

A rota deve ser alterara para que no caso do codigoDaUnidadeOrcamentaria vier nula, utilizar o CNPJ para obter a carta de serviços

Rotas a serem alteradas:

  • ObterCartaDeServicosPublicadosParaOPortalDoServidor/{codigoDaUnidadeOrcamentaria}
  • ObterCartaDeServicosPorCodigoDaUnidadeOrcamentaria/{codigoDaUnidadeOrcamentaria}
Alpha API
- Adicionar parâmetro CNPJ nas rotas de ObterCartaDeServicos no Alpha WEB 3


Alpha WEB
Alterar parâmetros de busca por unidade orçamentária e adicionar  CNPJ nas rotas de ObterCartaDeServicos no Portal do servidor 3


Portal do servidor
Criar rotina para atualizar o banco da carta de serviços, incluindo o cnpj de cada unidade orçamentária relacionada 5


Alpha API
Total19



3.4 POSSÍVEIS IMPEDIMENTOS

Não foram encontrados possíveis problemas de implementação.

4. Conclusão

Conclui-se que para a devida implementação destas melhorias, o time poderá, além consultar este documento, consultar a PO e os demais integrantes da SETIC, pois objetiva-se uma real melhora de usabilidade deste sistema.