Como identificar o perfil se é servidor ou um usuário externo e qual carta de serviço devo mostrar para esse usuário
Data de elaboração | 24/10/2022 |
---|---|
Responsável pelo estudo |
|
Equipe do estudo |
|
Alvo | Alpha - Carta de serviços |
Origem |
Implementação: Identificar se o perfil do servidor é interno ou de usuário externo |
Objetivo |
O presente estudo tem como objetivo identificar se o perfil do servidor é interno ou de usuário externo e qual carta de serviço devo mostrar para esse usuário |
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 identificar se o perfil do servidor é interno ou de usuário externo e qual carta de serviço devo mostrar para esse usuário
1.1 JUSTIFICATIVA
Existe a 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 - Vincular a carta de serviços a um CNPJ
3.1 CENÁRIO ATUAL
3.1.1 Alpha Serviços API
ASabe-se que o alpha terar que ser acessado por usuários externos, que não são servidores publicos, diante disso tornou-se necessario identificar se o perfil da pessoa usando o sistema é servidor ou um usuário externo e qual carta de serviçoso devemos mostrar para esse usuário.
Após reunião com o Desenvolvedor Anderson Soares do TIME ESQUADRÃO, foi desenvolvida baseada em um identificador interno (unidadeOrcamentariaId), trata-se de um campovisto que identificatal informação pode vim da Apis do E-ESTADO.
O qual unidade orçamentária corresponde a determinada carta de serviços.
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 comtem os seguintes campos:
codigoDaUnidadeOrcamentaria - código que identifica qual a unidadebancos deorigem do servidorcodigoDaUnidadeGestoraDoDepartamento - código que identifica a unidadedados emque o servidor está lotadodepartamentoPadrao - 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çãoTabela de qualservidores, é o CNPJ da unidade.
Foi verificado quecom o campo "CodigoDaUnidadeGestoraDoDepartamento"pessoa_id.
Tabela utilizadode parausuários, relacionamentotambém com ao campo pessoa_id
E tabela de serviços,usuario ouescopo, seja,onde emvincula termosuma unidade a pessoa
As informações da Pessoa, pode vim da api de relacionamentopessoas nãofisicas hádo impactosE-estado:
Já a de dados.servidores, pode ser pela nova api de Servidores
3.1.2Se Alphaa Solicitaçõespessoa APItiver dados nessa api, então ela é um servidor, se não, é um usuário externo.
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 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 | 5 |
Regras ao salvar
Integridade
Obs: a nível de aplicação, poderia ser criada herança para identificar carta de serviços internas e externas. |
Alpha API |
Adicionar parâmetro CNPJ nas rotas de ObterCartaDeServicos na API | 5 |
Alterar a rota para permitir receber dois campos: 1) CodigoDaUnidadeOrcamentaria - para as unidades do governo 2) CNPJ - para as unidades externas A action deve ser alterada para que no caso do codigoDaUnidadeOrcamentaria vier nula, utilizar o CNPJ para obter a carta de serviços Rotas a serem alteradas:
Sugestão: obter os parâmetros via fromQuery |
Alpha API |
(Opcional) Criar campo para identificar se a carta de serviços é de origem interna ou externa aos órgãos do governo | 3 |
Este campo facilitaria possíveis filtros e relatórios posteriores |
Alpha API |
Adicionar parâmetro CNPJ nas rotas de ObterCartaDeServicos no Alpha WEB | 3 |
Quando identificar que o usuário é de entidade externa |
Alpha WEB |
Adicionar CNPJ nas rotas de ObterCartaDeServicos no Portal do cidadão | 3 |
Quando identificar que é entidade externa |
Portal do cidadão |
|
|||
Total | 19 |
|
3.2.2 SOLUÇÃO 2 - 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.2.1 IMPLEMENTAÇÃO E HISTÓRIAS DE USUÁRIOS DA SOLUÇÃO 2
|
| ||
|
| ||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
3.4 POSSÍVEIS IMPEDIMENTOS
Não foram encontrados possíveis problemas de implementação.
4. Conclusão
Conclui-se que a solução que trará menos impacto ao sistema será a solução 1. Dessa forma conseguiremos obter a carta de serviços tanto através da unidade orçamentária quanto por CNPJ.