-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A validação de dígitos iniciais é realmente necessária? #11
Comments
Opa @neilvilela tudo bom? Desculpa a demora pra responder aqui, final de ano é fogo! Mas então, eu não sei exatamente se isso é uma boa ideia, pois a documentação do Sintegra é muito ruim, eles mesmos não deixam claras as regras (e elas parecem existir). Quando estava desenvolvendo a versão inicial, lembro de ter lido alguns posts em foruns para poder entender melhor, e é realmente muito precária essas direções que o Sintegra tem, embora na maioria das páginas eles tenham essas informações dos digitos iniciais; Mas eu acho que se tivermos uma POC para analizar, podemos decidir melhor, agradeço seu interesse a ajuda no projeto @neilvilela, sempre existem melhorias possiveis e a gente vai descobrindo como melhorar. PS: Eu pensava na epoca em uma feature tipo puts BRDocuments::IE.scan("24.885944-7")
# { state: "AL", document_number: "24.885944-7", is_valid: true } Algo assim, mas na prático não creio que isso seja realmente utilizado, já que IE está sempre associada com um estado, porém seria possivel "descobrir" qual estado determinada IE pertence caso você não saiba o estado, o que parece bacana, mas inutil na pratica hahaha! |
É... Acho que esse scan seria bem bacana, mas cada vez menos praticável, já que tem muito overlap entre esses dígitos iniciais (quando não documentados). Só os que começam com o código do estado têm mais chances de acertar :( |
Sim, mas sempre há formas de melhorar, se tu tiver alguma sugestão ou quiser discutir implementações pode enviar, minha ideia é manter a lib atualizada e usavel, realmente não cobre 100% dos casos do Brasil mas acredito que agora é ir expandindo esses casos (Você já encontrou alguma documentação super clara sobre esses códigos em algum lugar?) |
Opa, Rafael, beleza?
Notei que todos os PRs que eu submeti aqui foram depois que encontrei algum caso real em que os dígitos iniciais fugiam dos definidos no código. Esses casos possuem condicionais nos testes compartilhados entre todos os estados, pois a maioria tem definido uma única sequência de dígitos.
Isso faz sentido em alguns estados que usam os primeiros dígitos como o código do estado. AL, por exemplo, define que todos começam com 24: http://www.sintegra.gov.br/Cad_Estados/cad_AL.html. Sergipe, no entanto, apesar de todos os exemplos que encontrei começarem com 27 (que pode ser o código do estado, não sei), não explicita isso nas regras: http://www.sintegra.gov.br/Cad_Estados/cad_AL.html
Daí pergunto: faz sentido a gem limitar a dígitos específicos, se a documentação do site do Sintegra não explicita isso? E tenho minhas dúvidas até sobre os que explicitam, já que, eventualmente, eles passam a usar outros dígitos, conforme novas empresas são abertas.
The text was updated successfully, but these errors were encountered: