Files
sure/app/models/plaid_account/importer.rb
2025-05-24 17:41:14 -04:00

33 lines
972 B
Ruby

class PlaidAccount::Importer
def initialize(plaid_account, account_snapshot:)
@plaid_account = plaid_account
@account_snapshot = account_snapshot
end
def import
import_account_info
import_transactions if account_snapshot.transactions_data.present?
import_investments if account_snapshot.investments_data.present?
import_liabilities if account_snapshot.liabilities_data.present?
end
private
attr_reader :plaid_account, :account_snapshot
def import_account_info
plaid_account.upsert_plaid_snapshot!(account_snapshot.account_data)
end
def import_transactions
plaid_account.upsert_plaid_transactions_snapshot!(account_snapshot.transactions_data)
end
def import_investments
plaid_account.upsert_plaid_investments_snapshot!(account_snapshot.investments_data)
end
def import_liabilities
plaid_account.upsert_plaid_liabilities_snapshot!(account_snapshot.liabilities_data)
end
end