Class: ThePlaidApi::AssetTransactionDetail

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/the_plaid_api/models/asset_transaction_detail.rb

Overview

Documentation not found in the MISMO model viewer and not provided by Freddie Mac.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(asset_transaction_unique_identifier:, asset_transaction_amount:, asset_transaction_date:, asset_transaction_post_date:, asset_transaction_type:, asset_transaction_paid_by_name:, asset_transaction_type_additional_description:, asset_investment_transaction_type_description:, asset_transaction_category_type:, financial_institution_transaction_identifier:, asset_investment_transaction_type: SKIP, asset_transaction_paid_to_name: SKIP, additional_properties: nil) ⇒ AssetTransactionDetail

Returns a new instance of AssetTransactionDetail.



108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 108

def initialize(asset_transaction_unique_identifier:,
               asset_transaction_amount:, asset_transaction_date:,
               asset_transaction_post_date:, asset_transaction_type:,
               asset_transaction_paid_by_name:,
               asset_transaction_type_additional_description:,
               asset_investment_transaction_type_description:,
               asset_transaction_category_type:,
               financial_institution_transaction_identifier:,
               asset_investment_transaction_type: SKIP,
               asset_transaction_paid_to_name: SKIP,
               additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @asset_transaction_unique_identifier = asset_transaction_unique_identifier
  @asset_transaction_amount = asset_transaction_amount
  @asset_transaction_date = asset_transaction_date
  @asset_transaction_post_date = 
  @asset_transaction_type = asset_transaction_type
  unless asset_investment_transaction_type == SKIP
    @asset_investment_transaction_type =
      asset_investment_transaction_type
  end
  @asset_transaction_paid_by_name = asset_transaction_paid_by_name
  unless asset_transaction_paid_to_name == SKIP
    @asset_transaction_paid_to_name =
      asset_transaction_paid_to_name
  end
  @asset_transaction_type_additional_description = asset_transaction_type_additional_description
  @asset_investment_transaction_type_description = asset_investment_transaction_type_description
  @asset_transaction_category_type = asset_transaction_category_type
  @financial_institution_transaction_identifier = financial_institution_transaction_identifier
  @additional_properties = additional_properties
end

Instance Attribute Details

#asset_investment_transaction_typeAssetInvestmentTransactionType

Asset Investment Transaction Type Enumerated derived by Vendor.



35
36
37
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 35

def asset_investment_transaction_type
  @asset_investment_transaction_type
end

#asset_investment_transaction_type_descriptionString

Asset Investment Transaction Type Description.

Returns:

  • (String)


53
54
55
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 53

def asset_investment_transaction_type_description
  @asset_investment_transaction_type_description
end

#asset_transaction_amountFloat

Asset Transaction Amount.

Returns:

  • (Float)


19
20
21
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 19

def asset_transaction_amount
  @asset_transaction_amount
end

#asset_transaction_category_typeAssetTransactionCategoryType

Asset Transaction Category Type Enumerated derived by Vendor.



57
58
59
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 57

def asset_transaction_category_type
  @asset_transaction_category_type
end

#asset_transaction_dateDate

Asset Transaction Date.

Returns:

  • (Date)


23
24
25
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 23

def asset_transaction_date
  @asset_transaction_date
end

#asset_transaction_paid_by_nameString

Populate with who did the transaction.

Returns:

  • (String)


39
40
41
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 39

def asset_transaction_paid_by_name
  @asset_transaction_paid_by_name
end

#asset_transaction_paid_to_nameString

Populate with for whom the transaction is done

Returns:

  • (String)


43
44
45
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 43

def asset_transaction_paid_to_name
  @asset_transaction_paid_to_name
end

#asset_transaction_post_dateDate

Asset Transaction Post Date.

Returns:

  • (Date)


27
28
29
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 27

def 
  @asset_transaction_post_date
end

#asset_transaction_typeAssetTransactionType

Asset Transaction Type.



31
32
33
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 31

def asset_transaction_type
  @asset_transaction_type
end

#asset_transaction_type_additional_descriptionString

FI Provided - examples are atm, cash, check, credit, debit, deposit, directDebit, directDeposit, dividend, fee, interest, other, payment, pointOfSale, repeatPayment, serviceCharge, transfer.

Returns:

  • (String)


49
50
51
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 49

def asset_transaction_type_additional_description
  @asset_transaction_type_additional_description
end

#asset_transaction_unique_identifierString

A vendor created unique Identifier.

Returns:

  • (String)


15
16
17
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 15

def asset_transaction_unique_identifier
  @asset_transaction_unique_identifier
end

#financial_institution_transaction_identifierString

FI provided Transaction Identifier.

Returns:

  • (String)


61
62
63
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 61

def financial_institution_transaction_identifier
  @financial_institution_transaction_identifier
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 144

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  asset_transaction_unique_identifier =
    hash.key?('AssetTransactionUniqueIdentifier') ? hash['AssetTransactionUniqueIdentifier'] : nil
  asset_transaction_amount =
    hash.key?('AssetTransactionAmount') ? hash['AssetTransactionAmount'] : nil
  asset_transaction_date =
    hash.key?('AssetTransactionDate') ? hash['AssetTransactionDate'] : nil
   =
    hash.key?('AssetTransactionPostDate') ? hash['AssetTransactionPostDate'] : nil
  asset_transaction_type =
    hash.key?('AssetTransactionType') ? hash['AssetTransactionType'] : nil
  asset_transaction_paid_by_name =
    hash.key?('AssetTransactionPaidByName') ? hash['AssetTransactionPaidByName'] : nil
  asset_transaction_type_additional_description =
    hash.key?('AssetTransactionTypeAdditionalDescription') ? hash['AssetTransactionTypeAdditionalDescription'] : nil
  asset_investment_transaction_type_description =
    hash.key?('AssetInvestmentTransactionTypeDescription') ? hash['AssetInvestmentTransactionTypeDescription'] : nil
  asset_transaction_category_type =
    hash.key?('AssetTransactionCategoryType') ? hash['AssetTransactionCategoryType'] : nil
  financial_institution_transaction_identifier =
    hash.key?('FinancialInstitutionTransactionIdentifier') ? hash['FinancialInstitutionTransactionIdentifier'] : nil
  asset_investment_transaction_type =
    hash.key?('AssetInvestmentTransactionType') ? hash['AssetInvestmentTransactionType'] : SKIP
  asset_transaction_paid_to_name =
    hash.key?('AssetTransactionPaidToName') ? hash['AssetTransactionPaidToName'] : SKIP

  # Create a new hash for additional properties, removing known properties.
  new_hash = hash.reject { |k, _| names.value?(k) }

  additional_properties = APIHelper.get_additional_properties(
    new_hash, proc { |value| value }
  )

  # Create object from extracted values.
  AssetTransactionDetail.new(asset_transaction_unique_identifier: asset_transaction_unique_identifier,
                             asset_transaction_amount: asset_transaction_amount,
                             asset_transaction_date: asset_transaction_date,
                             asset_transaction_post_date: ,
                             asset_transaction_type: asset_transaction_type,
                             asset_transaction_paid_by_name: asset_transaction_paid_by_name,
                             asset_transaction_type_additional_description: asset_transaction_type_additional_description,
                             asset_investment_transaction_type_description: asset_investment_transaction_type_description,
                             asset_transaction_category_type: asset_transaction_category_type,
                             financial_institution_transaction_identifier: financial_institution_transaction_identifier,
                             asset_investment_transaction_type: asset_investment_transaction_type,
                             asset_transaction_paid_to_name: asset_transaction_paid_to_name,
                             additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 64

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['asset_transaction_unique_identifier'] =
    'AssetTransactionUniqueIdentifier'
  @_hash['asset_transaction_amount'] = 'AssetTransactionAmount'
  @_hash['asset_transaction_date'] = 'AssetTransactionDate'
  @_hash['asset_transaction_post_date'] = 'AssetTransactionPostDate'
  @_hash['asset_transaction_type'] = 'AssetTransactionType'
  @_hash['asset_investment_transaction_type'] =
    'AssetInvestmentTransactionType'
  @_hash['asset_transaction_paid_by_name'] = 'AssetTransactionPaidByName'
  @_hash['asset_transaction_paid_to_name'] = 'AssetTransactionPaidToName'
  @_hash['asset_transaction_type_additional_description'] =
    'AssetTransactionTypeAdditionalDescription'
  @_hash['asset_investment_transaction_type_description'] =
    'AssetInvestmentTransactionTypeDescription'
  @_hash['asset_transaction_category_type'] =
    'AssetTransactionCategoryType'
  @_hash['financial_institution_transaction_identifier'] =
    'FinancialInstitutionTransactionIdentifier'
  @_hash
end

.nullablesObject

An array for nullable fields



96
97
98
99
100
101
102
103
104
105
106
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 96

def self.nullables
  %w[
    asset_investment_transaction_type
    asset_transaction_paid_by_name
    asset_transaction_paid_to_name
    asset_transaction_type_additional_description
    asset_investment_transaction_type_description
    asset_transaction_category_type
    financial_institution_transaction_identifier
  ]
end

.optionalsObject

An array for optional fields



88
89
90
91
92
93
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 88

def self.optionals
  %w[
    asset_investment_transaction_type
    asset_transaction_paid_to_name
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 216

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} asset_transaction_unique_identifier:"\
  " #{@asset_transaction_unique_identifier.inspect}, asset_transaction_amount:"\
  " #{@asset_transaction_amount.inspect}, asset_transaction_date:"\
  " #{@asset_transaction_date.inspect}, asset_transaction_post_date:"\
  " #{@asset_transaction_post_date.inspect}, asset_transaction_type:"\
  " #{@asset_transaction_type.inspect}, asset_investment_transaction_type:"\
  " #{@asset_investment_transaction_type.inspect}, asset_transaction_paid_by_name:"\
  " #{@asset_transaction_paid_by_name.inspect}, asset_transaction_paid_to_name:"\
  " #{@asset_transaction_paid_to_name.inspect}, asset_transaction_type_additional_description:"\
  " #{@asset_transaction_type_additional_description.inspect},"\
  ' asset_investment_transaction_type_description:'\
  " #{@asset_investment_transaction_type_description.inspect},"\
  " asset_transaction_category_type: #{@asset_transaction_category_type.inspect},"\
  ' financial_institution_transaction_identifier:'\
  " #{@financial_institution_transaction_identifier.inspect}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
# File 'lib/the_plaid_api/models/asset_transaction_detail.rb', line 197

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} asset_transaction_unique_identifier:"\
  " #{@asset_transaction_unique_identifier}, asset_transaction_amount:"\
  " #{@asset_transaction_amount}, asset_transaction_date: #{@asset_transaction_date},"\
  " asset_transaction_post_date: #{@asset_transaction_post_date}, asset_transaction_type:"\
  " #{@asset_transaction_type}, asset_investment_transaction_type:"\
  " #{@asset_investment_transaction_type}, asset_transaction_paid_by_name:"\
  " #{@asset_transaction_paid_by_name}, asset_transaction_paid_to_name:"\
  " #{@asset_transaction_paid_to_name}, asset_transaction_type_additional_description:"\
  " #{@asset_transaction_type_additional_description},"\
  ' asset_investment_transaction_type_description:'\
  " #{@asset_investment_transaction_type_description}, asset_transaction_category_type:"\
  " #{@asset_transaction_category_type}, financial_institution_transaction_identifier:"\
  " #{@financial_institution_transaction_identifier}, additional_properties:"\
  " #{@additional_properties}>"
end