class Portmone::Transaction

Attributes

data[R]

Public Class Methods

new(data) click to toggle source
# File lib/portmone/transaction.rb, line 5
def initialize(data)
  raise Error, "Wrong data: Hash expected, got #{data.inspect}" unless data.is_a?(Hash)

  @timezone = data.delete(:timezone)
  @currency = data.delete(:currency)
  @data = data
end

Public Instance Methods

bill_amount() click to toggle source
# File lib/portmone/transaction.rb, line 25
def bill_amount
  Money.from_amount(data['bill_amount'].to_f, @currency)
end
bill_date() click to toggle source
# File lib/portmone/transaction.rb, line 13
def bill_date
  data['bill_date'] && Date.parse(data['bill_date'])
end
order_id() click to toggle source
# File lib/portmone/transaction.rb, line 29
def order_id
  data.dig('shop_bill_id')
end
paid?() click to toggle source
pay_order_time() click to toggle source
# File lib/portmone/transaction.rb, line 21
def pay_order_time
  data['pay_order_date'] && ActiveSupport::TimeZone[@timezone].parse(data['pay_order_date'])
end
pay_time() click to toggle source
# File lib/portmone/transaction.rb, line 17
def pay_time
  data['pay_date'] && ActiveSupport::TimeZone[@timezone].parse(data['pay_date'])
end
reversed?() click to toggle source
# File lib/portmone/transaction.rb, line 37
def reversed?
  status == 'RETURN'
end