class Biro::Bacen::Response

Public Class Methods

new(response) click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 6
def initialize(response)
  @body = response.body
end

Public Instance Methods

assumed_co_obligation() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 18
def assumed_co_obligation
  result.dig(:coobrigacao_assumida)&.to_f&.round(2)
end
base_date() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 26
def base_date
  result.dig(:data_base_consultada)
end
cnpj_if() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 10
def cnpj_if
  result.dig(:cnpj_da_if_solicitante)
end
cpf() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 14
def cpf
  result.dig(:codigo_do_cliente)
end
customer_type() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 91
def customer_type
  result.dig(:tipo_do_cliente).to_i
end
indirect_risk() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 87
def indirect_risk
  result.dig(:risco_indireto_vendor).to_i
end
institutions_amount() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 63
def institutions_amount
  result.dig(:quantidade_de_instituicoes).to_i
end
invoice_list() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 34
def invoice_list
  return if operation_list.blank?

  Array.wrap(result.dig(:lista_de_resumo_das_operacoes)).map do |item|
  {
    :tax_variation => item[:variacao_cambial],
    :modality =>  item[:modalidade],
    :dues_list =>  invoice_list_item(item[:lista_de_vencimentos])
  }
  end
end
invoice_list_item(items) click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 46
def invoice_list_item(items)
  Array.wrap(items).map do |item|
  {
    :code => item[:codigo_vencimento],
    :value  => item[:valor_vencimento]
  }
  end
end
operation_amount() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 67
def operation_amount
  result.dig(:quantidade_de_operacoes).to_i
end
processed_documents_percentage() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 55
def processed_documents_percentage
  result.dig(:percentual_documentos_processados)&.to_f&.round(2)
end
processed_volume_percentage() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 59
def processed_volume_percentage
  result.dig(:percentual_volume_processado)&.to_f&.round(2)
end
received_co_obligation() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 22
def received_co_obligation
  result.dig(:coobrigacao_recebida)&.to_f&.round(2)
end
relationship_initial_date() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 30
def relationship_initial_date
  result.dig(:data_inicio_relacionamento)&.to_date
end
result_validation() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 95
def result_validation
  validation_content = result.dig(:lista_de_mensagens_de_validacao)

  return { } if validation_content.blank?

  validation_content
end
sub_judice_operation_amount() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 75
def sub_judice_operation_amount
  result.dig(:quantidade_operacoes_sub_judice).to_i
end
sub_judice_total_responsibility() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 83
def sub_judice_total_responsibility
  result.dig(:responsabilidade_total_sub_judice).to_i
end
unconformity_operation_amount() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 71
def unconformity_operation_amount
  result.dig(:quantidade_operacoes_discordancia).to_i
end
unconformity_total_responsibility() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 79
def unconformity_total_responsibility
  result.dig(:responsabilidade_total_discordancia).to_i
end

Private Instance Methods

operation_list() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 109
def operation_list
  result.dig(:lista_de_resumo_das_operacoes)
end
result() click to toggle source
# File lib/biro/gateways/bacen/response.rb, line 105
def result
  @body.dig(:get_resumo_do_cliente_response, :return)
end