Ir para o conteúdo principal

[Gov.Doc] Alterações necessárias para descontinuar o uso do contexto

Data de elaboração 04/11/2022
Responsável pelo estudo

Nara Carolina Galvão Feitosa

Raissa de Sousa Stodulski
Taillon Miguel Gonçalves

Vinicius da Rosa Pereira
Ádelle Camarão Monteiro

Equipe do estudo Tambakiss
Alvo Gov.Doc
Origem

Melhorar implementação já feita pois o contexto é para ser usado somente na API

Objetivo Se o contexto e regras de negócios centralizarem no Gov.Doc API, irá parar de gerar trabalho dobrado. Hoje, se alterar algo no Gov.Doc, precisa alterar no Gov.Doc API também.
Documentação correlata (opcional)
Observações


1. Introdução

Para cessar implementações duplicadas no Gov.Doc e Gov.Doc API, se deixarmos o contexto e toda a regra de negócio na API, podemos implementar novas funcionalidades ou corrigir as já existentes somente na API. 

2. Alterações necessárias

 2.1 BlocosDeAssinaturas

  • Index
    • [API] Criar endpoint BlocosDeAssinaturas/Cpf/{cpf} - nome do método BuscarPorCpf
    • [Sistema] Chamar novo endpoint BuscarPorCpf
  • Recebidos
    • [API] Criar endpoint BlocosDeAssinaturas/Recebidos/{cpf} - nome do método Recebidos
      • Filtrar: CPF, justificativa de recusa nula e status diferente de assinado
    • [Sistema] Chamar novo endpoint Recebidos
  • Criar
    • [API] Criar endpoint Documentos/Cpf/{cpf} - nome do método BuscarPorCpf
      • Parâmetros 
        • IdBlocoDeAssinatura, opcional
        • PodeAdicionarNoBloco, opcional
      • Filtrar: CPF, não excluído.
        • Se PodeAdicionarNoBloco for true, filtrar os sem bloco ou onde IdBlocoDeAssinatura = IdBlocoDeAssinatura (se for informado por parâmetro)
    • [Sistema] Chamar novo endpoint BuscarPorCpf
  • Editar
    • [Sistema] Chamar endpoint existente BlocosDeAssinaturas/{id}
  • DetalhesBlocoRecebido
    • [Sistema] Chamar endpoint existente BlocosDeAssinaturas/{id}
  • Detalhes
    • [Sistema] Chamar endpoint existente BlocosDeAssinaturas/{id}
  • Recusar
    • [Sistema] Chamar endpoint existente BlocosDeAssinaturas/{id}
    • [API] Criar endpoint BlocosDeAssinaturas/Recusar - nome do método Recusar
    • [Sistema] Chamar novo endpoint Recusar

2.2 Documentos

  • Index
    • [Sistema] Chamar novos endpoints: BuscarPorId, Buscar e BuscarPorCpf
    • [API] Criar endpoint Modelos/{id} - nome do método BuscarPorId
    • [API] Criar endpoint Modelos - nome do método Buscar
    • [API] Alterar endpoint criado Documentos/Cpf/{cpf} - nome do método BuscarPorCpf
      • Parâmetros novos:
        • IncluirDocumentosCompartilhados, opcional
        • IncluirArquivados, opcional
      • Filtrar:
        • Se IncluirDocumentosCompartilhados for true, trazer documentos compartilhados com o cpf
        • Se IncluirArquivados for false, filtrar os documentos nãos arquivados.
  • Autenticidade
    • [API] Criar endpoint Documentos/Numeracao/{numeracao} - nome do método BuscarPorNumeracao
    • [Sistema] Chamar novo endpoint BuscarPorNumeracao
  • Arquivados
    • [API] Criar endpoint Documentos/Arquivados/{cpf} - nome do método Arquivados
      • Filtrar: não excluídos, daquele cpf e arquivados
    • [Sistema] Chamar novo endpoint Arquivados
  • Criar
    • [API] Chamar novos endpoints: BuscarPorId e Buscar (modelos)
  • Editar
    • [Sistema] Chamar endpoint existente Documentos/{id}
  • Restringir
    • [API] Criar endpoint Documentos/{id}/Restringir - nome do método Restringir
    • [Sistema] Chamar novo endpoint Restringir
  • Remover restrição
    • [API] Criar endpoint Documentos/{id}/RemoverRestrição - nome do método RemoverRestricao
    • [Sistema] Chamar novo endpoint RemoverRestricao
  • Excluir
    • [API] Criar endpoint Documentos/{id} (DELETE) - nome do método Excluir
    • [Sistema] Chamar novo endpoint Excluir
  • Historico
    • [Sistema] Chamar endpoint existente Documentos/{id}
  • Visualizar
    • [Sistema] Chamar endpoint existente Documentos/{id}
    • [API] Criar endpoint Documentos/{id}/AtualizarCodigoVerificador - nome do método AtualizarCodigoVerificador
    • [Sistema] Chamar novo endpoint AtualizarCodigoVerificador
  • Compartilhar
    • [Sistema] Chamar endpoint existente Documentos/{id}
  • Assinar
    • [Sistema] Chamar endpoint existente Documentos/{id}
    • [Sistema] Chamar novo endpoint AtualizarCodigoVerificador
  • Desarquivar
    • [API] Criar endpoint Documentos/{id}/Desarquivar - nome do método Desarquivar
    • [Sistema] Chamar novo endpoint Desarquivar
  • GerarLog
    • [Sistema] Chamar endpoint existente Documentos/{id}
    • [API] Criar endpoint Documentos/{id}/Historico (POST) - nome do método RegistrarNoHistorico
    • [Sistema] Chamar novo endpoint RegistrarNoHistorico

2.3 Editor

  • Todas as actions
    • [API] Criar endpoint Editor/FontsFamilies - nome do método Fontes
    • [API] Criar endpoint Editor/FontsSizes - nome do método TamanhosFontes
    • [API] Criar endpoint Editor/Tools - nome do método Ferramentas
    • [Sistema] Chamar novos endpoints: Fontes, TamanhosFontes e Ferramentas

2.4 Erros

Não possui acesso ao contexto.

2.5 Home

  • Painel
    • [API] Criar controller/endpoint Painel (GET) - nome do método Buscar
    • [Sistema] Chamar novo endpoint Buscar

2.6 Imagens

Não possui acesso ao contexto.

2.7 Modelos

  • Index
    •  [API] Alterar endpoint criado Modelos - nome do método Buscar
      • Parâmetros novos:
        • IncluirNumeracaoDoUltimoDocumento, opcional
      • Filtrar:
        • Se IncluirNumeracaoDoUltimoDocumento for true, pegar numeração do último documento do modelo
    • [Sistema] Chamar novo endpoint: Buscar
  • Criar
    • [API] Criar endpoint Modelos (POST) - nome do método Criar
    • [Sistema] Chamar novo endpoint Criar
  • Editar
    • [API] Criar endpoint Modelos/{id} (PUT) - nome do método Editar
    • [Sistema] Chamar novo endpoint Editar
  • Ativar
    • [API] Criar endpoint Modelos/{id}/Ativar - nome do método Ativar
    • [Sistema] Chamar novo endpoint Ativar
  • Desativar
    • [API] Criar endpoint Modelos/{id}/Ativar - nome do método Desativar
    • [Sistema] Chamar novo endpoint Desativar

2.8 PatchNotes

Não possui acesso ao contexto.

2.9 Sistemas

  • Index
    • [API] Criar controller/endpoint Sistemas (GET) - nome do método Buscar
    • [Sistema] Chamar novo endpoint Buscar
  • Criar
    • [API] Criar controller/endpoint Sistemas (POST) - nome do método Criar
    • [Sistema] Chamar novo endpoint Criar
  • Detalhes
    • [API] Criar endpoint Sistemas/{id} (GET) - nome do método BuscarPorId
    • [Sistema] Chamar novo endpoint BuscarPorId

2.10 UsuariosExterno

  • SolicitarAssinatura
    • [API] Criar endpoint Documentos/{id}/SolicitarAssinatura - nome do método SolicitarAssinatura
    • [Sistema] Chamar novo endpoint SolicitarAssinatura
3.Conclusão

Concluímos que essas alterações necessárias para descontinuar o uso do contexto. O projeto ainda é passível de outras melhorias como padrão de API Restful.