Ir para o conteúdo principal

Autenticação de Regulados Jurídicos através do CPF do representante no VisaOn


Data de elaboração 01/09/2021
Responsável pelo estudo
  1. Rafael Passos dos Santos (Assessor)
Equipe do estudo
  1. Gustavo Felix Gomes (Assessor)
  2. Rafael Passos dos Santos (Assessor)
  3. Lucas de Souza e Sousa (Estagiario)
  4. André Honório de Andrade Silva (Tecnico)
  5. Emanuel Rufino Alcantara de Lima (Analista)
  6. Euriane Nogueira (Product Owner)
Alvo VisaOn
Origem

Implementação: Necessidade de autenticar o regulado jurídico através de um CPF

Objetivo
  • Vincular o CPF ao CNPJ do regulado jurídico
  • Verificar quais mudanças ocorrerão nos fluxos de criação de cadastro do regulado jurídico, criação de solicitação de licença sanitária, criação de solicitação de análise de projeto arquitetônico
  • Levantar quantas histórias e complexidade necessitará
Documentação correlata
Observações O presente estudo pretende também pretende levantar as Historias dos cards para a Sprint 
 
1. Objetivo
  • Vincular o CPF ao CNPJ do regulado jurídico
  • Verificar quais mudanças ocorrerão nos fluxos de criação de cadastro do regulado jurídico, criação de solicitação de licença sanitária, criação de solicitação de análise de projeto arquitetônico
  • Levantar quantas histórias e complexidade necessitará

2. Introdução

Houve a necessidade através da história: "Eu como vingadores, preciso realizar um estudo de caso, para atender a necessidade dos regulados CNPJ realizarem a autenticação através do CPF." presente na Sprint número 77 do time Vingadores, para analisar quais impactos haveria no sistema VisaOn para essa implementação.


3. Desenvolvimento - Autenticação de Regulados Jurídicos através do CPF do representante no VisaOn

3.1 Complexidade do projeto

O projeto VisaOn é bastante complexo em que várias camadas e contextos são utilizados. Há ainda o fato que o sistema está em produção, por isso, uma alteração na arquitetura atual teria um alto impacto no banco de dados.

3.2 Parecer Técnico

As funcionalidades atualmente utilizam o campo usuarioId para identificar de qual regulado é aquele cadastro. O campo usuarioId identifica o regulado que está logado. Esse campo é um campo chave que se relaciona com várias tabelas. 

image-1625746952226.png

Tabelas relacionadas com a tabela de regulados

  • Solicitacao

  • AnexoDoTipoDeDocumentoDaUltimaLicencaSanitaria

  • AnexoDoTipoDeDocumentoDaResposta

  • CnaeDoRegulado

  • CnaeDoReguladoComPerguntasERespostas

  • Diretor

  • RepresentanteReguladoCnes

  • CertidaoDeDispensa

  • EnderecoDoRegulado

Tabelas relacionadas com a solicitação que também utilizam o campo usuarioId

  • AnexoDoTipoDeDocumentoMunicipalDoCnae

  • AnexoDoTipoDeDocumentoEstadualDoCnae

  • Dare


3.3 Histórias previstas para a mudança

História Pontuação Detalhes
Criar tela de cadastro inicial do representante 3 pontos Deve ser criada uma tela onde o representante do regulado jurídico possa se cadastrar no sauron
Criar menu 3 pontos É necessário a criação do menu para este representante
Criar tela com o restante dos dados 5 pontos

Após o cadastro no sauron, deve ser apresentada uma tela onde o representante adiciona mais dados: telefone, rg, endereço. Para isso, o cadastro do representante que veio do sauron deve ser persistido em banco de dados.

Contemplado os seguintes steps:

Step 1: Dados básicos

Step 2: Tela de finalização de cadastro

Alterações no cadastro (Adicionar novo regulado jurídico) 21 pontos

Essa mudança envolve bastante risco, pois todo o cadastro foi realizado em cima do usuarioId, ou seja, o campo que identifica qual usuário está logado. Como quem realizava o cadastro era o próprio CNPJ, esse dado era buscado pela user service. O risco acentua-se, pois a forma que o projeto foi concebido há várias camadas e validações para se realizar alterações.

Também há a situação de se criar várias versões de cadastro do regulado. Essa foi a forma de se guardar o histórico do cadastro do regulado.

O cadastro do regulado conta com 6 telas: 

  1. Step 1: Dados Básicos
  2. Step 2: Endereço
  3. Step 3: Cnaes
  4. Step 4: Perguntas Dos Cnaes
  5. Step 5: Anexos
  6. Step 6: Finalizar

Para cada tela, é necessário alterar as consultas para o usuarioId do regulado que o representante está adicionando. Verificar também se é necessário dizer qual representante cadastrou ou atualizou determinado campo do regulado jurídico.

Também deve ser realizado um ajuste na funcionalidade, que mostra em que step o cadastro do regulado está.

Vincular representante ao Regulado Jurídico 13 pontos

É necessário criar uma tela onde o representante possa cadastrar ou se vincular à um regulado jurídico da seguinte forma:

  1. Caso o regulado jurídico não exista, cadastrar um novo regulado jurídico.
  2. Caso o regulado jurídico já exista, pode ser adotada uma das formas: 
    1. O próprio representante se vincula ao regulado jurídico.
    2. Algum representante anterior vincula o novo representante ao regulado jurídico;

Obs: Deve-se atentar a versão do regulado. Sempre buscar a última.

Necessária mudança de modelagem e verificar como tratar os regulados jurídicos já cadastrados no sistema.

Criar nova solicitação de regularização de licença sanitária 13 pontos

Antes de iniciar a solicitação, deve-se apresentar uma tela que mostra todos os regulados que o representante está vinculado. Após isso, é preciso que na criação da solicitação seja cadastrada a informação do regulado (reguladoId).

Este procedimento é formado por vários steps que devem realizar ser alterados:

  1. Step 1: Escolha dos cnaes
  2. Step 2: Inclusão dos anexos dos cnaes
  3. Step 3: Tela de finalização onde mostra os detalhes da solicitação e faz o envio.

Também há a mesma problemática do cadastro que busca o usuarioId da UserService. 

É necessário verificar como tratar as solicitações que já estão em produção em que foram feitas pelo próprio CNPJ.

Criar nova solicitação de análise de projeto arquitetônico 13 pontos

Antes de iniciar a solicitação, deve-se apresentar uma tela que mostra todos os regulados que o representante está vinculado.  Após isso, é preciso que na criação da solicitação seja cadastrada a informação do regulado (reguladoId).

Este procedimento é formado por vários steps que devem realizar ser alterados:

  1. Step 1: Inclusão de dados da solicitação
  2. Step 2: Inclusão dos anexos da solicitação
  3. Step 3: Tela de finalização onde mostra os detalhes da solicitação e faz o envio.

Também há a mesma problemática do cadastro que busca o usuarioId da UserService.

É necessário verificar como tratar as solicitações que já estão em produção em que foram feitas pelo próprio CNPJ.

Também deve ser realizado um ajuste na funcionalidade que mostra em que step o cadastro da solicitação está.

Painel do Representante 13 pontos

No painel do representante é necessário criar uma tela para visualizar os itens abaixo dos regulados que o representante está vinculado:

  1. Solicitações
    1. Solicitações de projeto arquitetônico
    2. Solicitações de regularização de licença sanitária
  2. Dares
  3. Licenças Sanitárias
  4. Certificados de dispensa
  5. Pareceres do Projeto arquitetônico

É necessário recriar as consultas por causa do relacionamento entre representantes e regulados.

Notificação que há Roteiros disponíveis para preencher 8 pontos

No painel, na parte de solicitações, deve-se mostrar uma informação que há roteiros disponíveis para preenchimento e direcionar para a tela de preenchimento de roteiro. Envolve uma complexidade adicional por se tratar de dois contextos diferentes: o contexo de cadastro de regulados e o contexto de planejamento de inspeção

Após preencher o roteiro, deve-se coletar a assinatura do representante 13 pontos

Atualmente, após o preenchimento do roteiro, o sistema solicita que o regulado jurídico realize a assinatura. Deve ser alterado para que o representante assine.

Deve mostrar a assinatura em visualização posterior.

Envolve modelagem entre representante e assinatura.

É necessário verificar como tratar as solicitações que já estão em produção em que foram feitas pelo próprio CNPJ.

Desativar os cadastros de regulado jurídico e mostrar mensagem para se cadastrar como cpf 5 pontos

Ao tentar logar como CNPJ, mostrar mensagem para se cadastrar como CPF.

Detalhes e Análise da solicitação 8 pontos

Mostrar os dados do representante que cadastrou a solicitação

É necessário verificar como tratar as solicitações que já estão em produção em que foram feitas pelo próprio CNPJ.

Total 118 pontos


4. Conclusão

O estudo levantou as necessidades e histórias para implementação das funcionalidades em futuras sprints.