PROC002 - Cadastro de Nova Empresa
| Projeto/Sistema: GERENCIEAQUI - MIGRAÇÃO CNPJ ALFANUMÉRICO (NT 2026.004) |
Versão do Template: 1.2 |
| Processo: PROC002 - Cadastro de Nova Empresa |
Versão do Documento: 1.0 |
| Responsável(eis): Luís Leite |
Data: 25/05/2026 |
1. Introdução
Este processo descreve a adaptação do fluxo de cadastro inicial e do cadastro adicional de empresa pelo usuário logado ao CNPJ Alfanumérico (NT 2026.004).
2. Processo
|
Processo |
Envolvidos |
Dados de Entrada |
Dados de Saída |
|
PROC002 - Cadastro de Nova Empresa |
Usuário |
CNPJ Alfanumérico |
CNPJ Alfanumérico validado e cadastrado em banco. |
Processos Relacionados
PROC001 — Núcleo de validação e formatação de CNP
Especificação Funcional
PROC002 - Cadastro de Nova Empresa:
Protótipo de Tela:
Descrição dos Campos:
|
Campo |
Tipo |
Tamanho |
Obrig. ? |
Máscara |
Observações |
|
CNPJ* |
Texto |
14 |
Sim |
- |
- |
Regras de Interface:
1.Ajuste de validação: Conferir validação do campo para aceitar alfanumérico. Reaproveitar validações do PROC001 - Núcleo de validação de formatação de CNPJ
2. Normalização: Deve ser tratado para deixar todas as letras em caixa maior (maiúsculo) visando a padronização da informação.
Regras de Negócio:
1. Validação tripla mantida: O fluxo atual valida o CNPJ em três pontos (ajax onChange, novaEmpresa, EmpresaService.salvarNovaEmpresa) via CnpjUtil.isCnpjValidoSalvar. Como o util legado já usa charAt-48 e substring (tolerantes a alfanumérico), a validação funciona após a correção do PROC001.
2. Unicidade global do CNPJ: isDBContainCnpj (CnpjUtil:400) verifica via EmpresaDao.existsByCnpj se já há empresa cadastrada com o mesmo CNPJ. Bloqueia o cadastro com mensagem "Já existe uma empresa com esse CNPJ!". A collation default do MariaDB é case-insensitive — a normalização para maiúsculas elimina ambiguidades em comparações externas.
3. Token A3 sensível à caixa: Empresa.gerarTokenA3 (Empresa.java:736) faz gerarHash(cnpj + email, "SHA-256"). Como SHA-256 é sensível a caixa, o CNPJ DEVE ser gravado em maiúsculas — caso contrário, "ABC..." e "abc..." gerariam tokens diferentes e quebrariam a integração com certificado A3.
Regras de Interface:
1. Mudança na base de dados: Sem alteração. Coluna 'empresa'.'cnpj' é varchar(20).
©SOFTEN SISTEMAS 2026