Class: BlaBla::CPF

Inherits:
Object
  • Object
show all
Defined in:
lib/generators/cpf.rb

Class Method Summary collapse

Class Method Details

.formatadoString

Gera um número válido de CPF no formato ###.###.###-##

Returns:

  • (String)

    o número de CPF formatado



35
36
37
38
# File 'lib/generators/cpf.rb', line 35

def self.formatado
  numeros = numero.split ''
  [numeros[0..2], ".", numeros[3..5], ".", numeros[6..8], "-", numeros[9..10]].join
end

.numeroString

Gera um número válido de CPF

Returns:

  • (String)

    o número de CPF



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/generators/cpf.rb', line 6

def self.numero
  numeros = []

  1.upto(9) do
    numeros << rand(0..9)
  end

  d1 = 0
  
  8.downto(0) do |n|
    d1 += numeros[n] * (10 - (n))
  end
  
  d1 = 11 - (d1 % 11)
  d1 = 0 if d1 >= 10

  d2 = d1 * 2
  8.downto(0) do |n|
    d2 += numeros[n] * (11 - (n))
  end
  
  d2 = 11 - (d2 % 11)
  d2 = 0 if d2 >= 10

  numeros.join + d1.to_s + d2.to_s
end