brazilian-utils / brutils-python

Utils library for specific Brazilian businesses 🇧🇷

Home Page:https://pypi.python.org/pypi/brutils

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gerar um número Válido e Aleatório de Título Eleitoral

antoniamaia opened this issue · comments

Seu pedido de recurso está relacionado a um problema? Por favor, descreva.
Desejamos adicionar um novo utilitário à nossa biblioteca que permita aos usuários gerar números de Títulos Eleitorais válidos e aleatórios, onde eles possam escolher o estado da emissão.

Descreva a solução que você gostaria

  • Chamar um novo utilitário passando opções para o estado de emissão e receber um número de Título Eleitoral válido e aleatório.
- O número de Inscrição do Título Eleitoral, em geral, possui doze dígitos.
- Os oito primeiros dígitos correspondem ao número sequencial.
- O nono e o décimo dígitos correspondem à Unidade Federativa (UF) à qual o eleitor pertence. Se o título não for expedido no Brasil, considera-se que a sigla da UF é 28 (ZZ).
- Os dois últimos dígitos correspondem aos Dígitos Verificadores (DV’s).

Descreva alternativas que você considerou

  • O utilitário deve aceitar as seguintes opções:

  • Estado: correspondente ao Estado de emissão desejado. O padrão é 28 (estrangeiro) se não for especificado.

  • Criar um novo utilitário generate_titulo_eleitoral:

def generate_titulo_eleitoral(estado):
 ...

Exemplo de uso

from brutils import generate_titulo_eleitoral

>>> generate_titulo_eleitoral()
"630227662877"  # Estado não identificado = Estrangeiro (28)
>>> generate_titulo_eleitoral(estado=SP)
"307801530159"  # Estado SP = 01
>>> generate_titulo_eleitoral(estado=BA)
"438286340507"  # Estado BA =  05
>>> generate_titulo_eleitoral(estado=MT)
"220130701813"  # Estado MT =  18

Contexto adicional
-https://pt.wikipedia.org/wiki/T%C3%ADtulo_de_eleitor#:~:text=C%C3%A1lculo%20do%20d%C3%ADgito%20verificador,-Para%20realizar%20o&text=Se%20o%20t%C3%ADtulo%20eleitoral%20n%C3%A3o,d%C3%ADgitos%20correspondem%20ao%20n%C3%BAmero%20sequencial.

Posso pegar essa issue?

@patricia-salles Pode sim!! acabei de te dar o assign :)