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 incluir as 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 se utilizar o CNPJ para identificar qual a carta de serviç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.

Foi verificado que o campo "CodigoDaUnidadeGestoraDoDepartamento" não é utilizado para 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 implementar uma das duas soluções:

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

Esta solução requer 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 servidor 5


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ços 3

Campo obrigatório


Alpha

API

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

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 WEB 3


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


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


Alpha API
Portais



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


Portal do servidor
Alpha Solicitacoes



Alterar campo unidadeOrcamentaria para CNPJ na tabela solicitacoes de servidores



Alterar rota ObterAvaliacoesPorUnidadeOrcamentaria 3

Alterar para ObterAvaliacoesPorCNPJ

Alpha Solicitações API
Alpha Solicitacoes WEB



Alterar consulta de avaliações por CNPJ 3

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? Pontos Regras Produto
Criação do campo CNPJ na tabela Carta de serviços 3

Deixar o campo CodigoDaUnidadeGestoraDoDepartamento como nullable


Alpha

API

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
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
Total 19



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.