Class: IdentityToolbox::UserAccountEntity

Inherits:
Object
  • Object
show all
Defined in:
lib/identity_toolbox/user_account_entity.rb

Constant Summary collapse

ACCESS_LISTS =
%i[account_ids client_ids documents
sinacor_advisor_ids].freeze
ATTRS =
%i[id username created_at].freeze

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ UserAccountEntity

Returns a new instance of UserAccountEntity.



12
13
14
15
16
17
# File 'lib/identity_toolbox/user_account_entity.rb', line 12

def initialize(**args)
  ATTRS.each { |key| instance_variable_set("@#{key}", args[key]) }
  ACCESS_LISTS.each do |key|
    instance_variable_set("@#{key}", args[key].map(&:to_s).uniq)
  end
end

Class Method Details

.from_user_account_views(user_account_views) ⇒ Object



29
30
31
32
33
34
35
36
# File 'lib/identity_toolbox/user_account_entity.rb', line 29

def self.()
  new(id: .try(:first).try(:user),
      documents: .map(&:document),
      client_ids: .map(&:client_id),
      account_ids: .map(&:account_id),
      sinacor_advisor_ids:
        .map(&:sinacor_advisor_id))
end

Instance Method Details

#created_atObject



23
24
25
26
27
# File 'lib/identity_toolbox/user_account_entity.rb', line 23

def created_at
  return unless @created_at

  Time.parse(@created_at)
end

#identification_documentsObject



19
20
21
# File 'lib/identity_toolbox/user_account_entity.rb', line 19

def identification_documents
  documents
end