class EasyPayULatam::RApi::Card

Attributes

customer[R]
customer_url[R]
params[RW]
resource[RW]
url[R]

Public Class Methods

new(customer={}) click to toggle source

creación de instancia de la clase recibe un customer(cliente en payu) para asociar una tarjeta de crédito customer = PayuLatam::Client.new

# File lib/easy_pay_u_latam/r_api/card.rb, line 10
def initialize(customer={})
  @params   = empty_object # inicializa los params de card con datos de prueba
  @customer = customer.response if !customer.nil?
  customer_url # llenar la @url con la de la api de cards
  return if @customer.nil?
  load("") # si llega id buscarlo
end

Public Instance Methods

create!() click to toggle source

se sobreescribe el metodo crear de request el metodo crear necesita en la url información del customer por eso se llena la @url con la url necesaria luego que continue con su flujo llamando super

Calls superclass method
# File lib/easy_pay_u_latam/r_api/card.rb, line 36
def create!
  customer_url
  super
end
delete(token) click to toggle source

se sobreescribe el metodo delete de request eliminar tarjeta, para esto, para esto usar la url con la info del customer continuar con el flujo normal llamando super

Calls superclass method
# File lib/easy_pay_u_latam/r_api/card.rb, line 52
def delete(token)
  customer_url
  super
end
id() click to toggle source

override from request

# File lib/easy_pay_u_latam/r_api/card.rb, line 69
def id
  raise ArgumentError, 'Card is nil' if @resource.nil?
  @resource['token'] if @resource
end
load(id) click to toggle source

se sobreescribe el metodo load de request obtener detalle de una tarjeta, para esto reestablecemos la url simple continuar con el flujo normal llamando super

Calls superclass method
# File lib/easy_pay_u_latam/r_api/card.rb, line 44
def load(id)
  customer_url
  super
end
update(params={}) click to toggle source

se sobreescribe el metodo update de request recibe los parametros a editar y el id objetivo a editar

# File lib/easy_pay_u_latam/r_api/card.rb, line 59
def update(params={})
  reset_url
  @http_verb = 'Put'
  @url += id.to_s
  @params = params if !params.empty?
  http
  @response
end

Private Instance Methods

empty_object() click to toggle source

ejemplo de parametro

# File lib/easy_pay_u_latam/r_api/card.rb, line 82
def empty_object
  {
    "name": "Sample User Name",
    "document": "1020304050",
    "number": "4242424242424242",
    "expMonth": "01",
    "expYear": "2020",
    "type": "VISA",
    "address": {
      "line1": "Address Name",
      "postalCode": "00000",
      "city": "City Name",
      "state": "State Name",
      "country": "CO",
      "phone": "300300300"
    }
  }
end
reset_url() click to toggle source

restablece url a su estado base

# File lib/easy_pay_u_latam/r_api/card.rb, line 77
def reset_url
  @url = RApi.base_url + "/rest/v4.9/creditCards/"
end