Class: Bipbop::Client::NameByCpfCnpj

Inherits:
Object
  • Object
show all
Defined in:
lib/bipbop/name_by_cpf_cnpj.rb

Class Method Summary collapse

Class Method Details

.evaluate(cpf_cnpj, birtyday = nil) ⇒ Object

birtyday Time



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/bipbop/name_by_cpf_cnpj.rb', line 5

def self.evaluate(cpf_cnpj, birtyday = nil)
  cpf = Bipbop::Client::CpfCnpjValidation::Cpf.new
  cnpj = Bipbop::Client::CpfCnpjValidation::Cnpj.new

  if (cpf.is_valid?(cpf_cnpj)) 
    if (!birtyday.instance_of? Time)
      raise raise Bipbop::Client::Exception.new("É necessário informar a data de nascimento para consultar um CPF.")
    end
  elsif (!cnpj.is_valid?(cpf_cnpj)) 
    raise Bipbop::Client::Exception.new("O documento informado não é um CPF ou CNPJ válido.")
  end
  
  if (birtyday.instance_of? Time)
    birtyday = birtyday.strftime('%d-%m-%Y')
  end 
  
  Bipbop::Client::Webservice.new.post("SELECT FROM 'BIPBOPJS'.'CPFCNPJ'", {
      "documento" => cpf_cnpj,
      "nascimento" => birtyday
    }).xpath('string(//BPQL//body//nome//.)')
end