class PayuLatam::InvoiceService

Attributes

current_user[R]
end_date[RW]
invoices[R]
start_date[RW]

Public Class Methods

new(current_user) click to toggle source
# File lib/easy_pay_u_latam/r_api/invoice_service.rb, line 6
def initialize(current_user)
  @current_user = current_user
end

Public Instance Methods

current() click to toggle source
# File lib/easy_pay_u_latam/r_api/invoice_service.rb, line 10
def current
  if @invoices.nil?
    @start_date.nil? && @end_date.nil? ? historical : range_dates
  end
  @invoices['recurringBillList'].last
end

Private Instance Methods

historical() click to toggle source
# File lib/easy_pay_u_latam/r_api/invoice_service.rb, line 19
def historical
  @invoices = PayuLatam::Invoice.new(customerId: @current_user.payu_customer_id).resource
end
range_dates() click to toggle source
# File lib/easy_pay_u_latam/r_api/invoice_service.rb, line 23
def range_dates
  raise ArgumentError, 'dates are nil' if @start_date.nil? && @end_date.nil?

  @invoices = PayuLatam::Invoice.new(customerId: @current_user.payu_customer_id,
    start_date: @start_date, end_date: @end_date).resource
end