Class: Kaui::Account

Inherits:
KillBillClient::Model::Account
  • Object
show all
Defined in:
app/models/kaui/account.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#bill_cycle_day_localObject

Returns the value of attribute bill_cycle_day_local.



5
6
7
# File 'app/models/kaui/account.rb', line 5

def bill_cycle_day_local
  @bill_cycle_day_local
end

#phoneObject

Returns the value of attribute phone.



5
6
7
# File 'app/models/kaui/account.rb', line 5

def phone
  @phone
end

Class Method Details

.find_by_id_or_key(account_id_or_key, with_balance, with_balance_and_cba, options = {}) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'app/models/kaui/account.rb', line 19

def self.find_by_id_or_key(, with_balance, with_balance_and_cba, options = {})
  if  =~ /[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}/
    begin
      find_by_id(, with_balance, with_balance_and_cba, options)
    rescue StandardError => e
      begin
        # account_id_or_key looked like an id, but maybe it's an external key (this will happen in tests)?
        find_by_external_key(, with_balance, with_balance_and_cba, options)
      rescue StandardError => _
        # Nope - raise the initial exception
        raise e
      end
    end
  else
    find_by_external_key(, with_balance, with_balance_and_cba, options)
  end
end

.list_or_search(search_key = nil, offset = 0, limit = 10, options = {}) ⇒ Object



37
38
39
40
41
42
43
# File 'app/models/kaui/account.rb', line 37

def self.list_or_search(search_key = nil, offset = 0, limit = 10, options = {})
  if search_key.present?
    find_in_batches_by_search_key(search_key, offset, limit, true, false, options)
  else
    find_in_batches(offset, limit, true, false, options)
  end
end

Instance Method Details

#balance_to_moneyObject



45
46
47
# File 'app/models/kaui/account.rb', line 45

def balance_to_money
  Kaui::Base.to_money(.abs, currency)
end

#cba_to_moneyObject



49
50
51
# File 'app/models/kaui/account.rb', line 49

def cba_to_money
  Kaui::Base.to_money(.abs, currency)
end

#check_account_details_bill_cycle_day_localObject



13
14
15
16
17
# File 'app/models/kaui/account.rb', line 13

def 
  return true if bill_cycle_day_local.to_i.between?(1, 31)

  false
end

#check_account_details_phoneObject



7
8
9
10
11
# File 'app/models/kaui/account.rb', line 7

def 
  return true if phone =~ /\A(?:\+?\d{1,3}\s*-?)?\(?(?:\d{3})?\)?[- ]?\d{3}[- ]?\d{4}\z/i

  false
end

#persisted?Boolean

Returns:

  • (Boolean)


53
54
55
# File 'app/models/kaui/account.rb', line 53

def persisted?
  !.blank?
end