Class: LoyaltyApIs::TransactionDetailType

Inherits:
Object
  • Object
show all
Defined in:
lib/loyalty_ap_is/models/transaction_detail_type.rb

Overview

Indicates the Type of the transaction detail row (award, redemption, transfer, voucher, refund or central award).

Constant Summary collapse

TRANSACTION_DETAIL_TYPE =
[
  # TODO: Write general description for AWARD
  AWARD = 'AWARD'.freeze,

  # TODO: Write general description for REDEMPTION
  REDEMPTION = 'REDEMPTION'.freeze,

  # TODO: Write general description for TRANSFER
  TRANSFER = 'TRANSFER'.freeze,

  # TODO: Write general description for REFUND
  REFUND = 'REFUND'.freeze,

  # TODO: Write general description for CENTRAL_AWARD
  CENTRAL_AWARD = 'CENTRAL_AWARD'.freeze,

  # TODO: Write general description for VOUCHER
  VOUCHER = 'VOUCHER'.freeze
].freeze

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = AWARD) ⇒ Object



36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/loyalty_ap_is/models/transaction_detail_type.rb', line 36

def self.from_value(value, default_value = AWARD)
  return default_value if value.nil?

  str = value.to_s.strip

  case str.downcase
  when 'award' then AWARD
  when 'redemption' then REDEMPTION
  when 'transfer' then TRANSFER
  when 'refund' then REFUND
  when 'central_award' then CENTRAL_AWARD
  when 'voucher' then VOUCHER
  else
    default_value
  end
end

.validate(value) ⇒ Object



30
31
32
33
34
# File 'lib/loyalty_ap_is/models/transaction_detail_type.rb', line 30

def self.validate(value)
  return false if value.nil?

  TRANSACTION_DETAIL_TYPE.include?(value)
end