Module: CpfUtilsDio
- Defined in:
- lib/cpf_utils_dio.rb,
lib/cpf_utils_dio/version.rb
Defined Under Namespace
Classes: Error
Constant Summary collapse
- VERSION =
"0.1.0"
Class Method Summary collapse
Class Method Details
.cpf_valido?(cpf) ⇒ Boolean
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/cpf_utils_dio.rb', line 12 def self.cpf_valido?(cpf) cpf = cpf.to_s.scan(/\d/).map(&:to_i) return false unless cpf.length == 11 return false if cpf.uniq.length == 1 sum1 = (0..8).inject(0) { |sum, i| sum + cpf[i] * (10 - i) } sum2 = (0..9).inject(0) { |sum, i| sum + cpf[i] * (11 - i) } dv1 = sum1 % 11 dv1 = dv1 < 2 ? 0 : 11 - dv1 dv2 = sum2 % 11 dv2 = dv2 < 2 ? 0 : 11 - dv2 cpf[9] == dv1 && cpf[10] == dv2 end |
.formatar(cpf) ⇒ Object
8 9 10 |
# File 'lib/cpf_utils_dio.rb', line 8 def self.formatar(cpf) cpf.gsub(/(\d{3})(\d{3})(\d{3})(\d{2})/, '\1.\2.\3-\4') end |