Class: Merge::Accounting::BankFeedAccount

Inherits:
Object
  • Object
show all
Defined in:
lib/merge_ruby_client/accounting/types/bank_feed_account.rb

Overview

# The BankFeedAccount Object

### Description
The `BankFeedAccount` object represents a bank feed , detailing various
attributes including  identifiers, names, currency, and balance
information. This object is central to managing and tracking bank feed accounts
within the system.
### Usage Example
Fetch from the `GET BankFeedAccount` endpoint to view details of a bank feed
.

Constant Summary collapse

OMIT =
Object.new

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(id: OMIT, remote_id: OMIT, created_at: OMIT, modified_at: OMIT, source_account_id: OMIT, target_account_id: OMIT, source_account_name: OMIT, source_account_number: OMIT, target_account_name: OMIT, currency: OMIT, feed_status: OMIT, feed_start_date: OMIT, source_account_balance: OMIT, account_type: OMIT, remote_was_deleted: OMIT, field_mappings: OMIT, remote_data: OMIT, additional_properties: nil) ⇒ Merge::Accounting::BankFeedAccount



711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 711

def initialize(id: OMIT, remote_id: OMIT, created_at: OMIT, modified_at: OMIT, source_account_id: OMIT,
               target_account_id: OMIT, source_account_name: OMIT, source_account_number: OMIT, target_account_name: OMIT, currency: OMIT, feed_status: OMIT, feed_start_date: OMIT, source_account_balance: OMIT, account_type: OMIT, remote_was_deleted: OMIT, field_mappings: OMIT, remote_data: OMIT, additional_properties: nil)
  @id = id if id != OMIT
  @remote_id = remote_id if remote_id != OMIT
  @created_at = created_at if created_at != OMIT
  @modified_at = modified_at if modified_at != OMIT
   =  if  != OMIT
   =  if  != OMIT
   =  if  != OMIT
   =  if  != OMIT
   =  if  != OMIT
  @currency = currency if currency != OMIT
  @feed_status = feed_status if feed_status != OMIT
  @feed_start_date = feed_start_date if feed_start_date != OMIT
   =  if  != OMIT
  @account_type =  if  != OMIT
  @remote_was_deleted = remote_was_deleted if remote_was_deleted != OMIT
  @field_mappings = field_mappings if field_mappings != OMIT
  @remote_data = remote_data if remote_data != OMIT
  @additional_properties = additional_properties
  @_field_set = {
    "id": id,
    "remote_id": remote_id,
    "created_at": created_at,
    "modified_at": modified_at,
    "source_account_id": ,
    "target_account_id": ,
    "source_account_name": ,
    "source_account_number": ,
    "target_account_name": ,
    "currency": currency,
    "feed_status": feed_status,
    "feed_start_date": feed_start_date,
    "source_account_balance": ,
    "account_type": ,
    "remote_was_deleted": remote_was_deleted,
    "field_mappings": field_mappings,
    "remote_data": remote_data
  }.reject do |_k, v|
    v == OMIT
  end
end

Instance Attribute Details

#account_typeMerge::Accounting::BankFeedAccountAccountTypeEnum (readonly)



360
361
362
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 360

def 
  @account_type
end

#additional_propertiesOpenStruct (readonly)



371
372
373
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 371

def additional_properties
  @additional_properties
end

#created_atDateTime (readonly)



27
28
29
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 27

def created_at
  @created_at
end

#currencyMerge::Accounting::TransactionCurrencyEnum (readonly)



348
349
350
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 348

def currency
  @currency
end

#feed_start_dateDateTime (readonly)



354
355
356
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 354

def feed_start_date
  @feed_start_date
end

#feed_statusMerge::Accounting::FeedStatusEnum (readonly)



352
353
354
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 352

def feed_status
  @feed_status
end

#field_mappingsHash{String => Object} (readonly)



367
368
369
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 367

def field_mappings
  @field_mappings
end

#idString (readonly)



23
24
25
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 23

def id
  @id
end

#modified_atDateTime (readonly)



29
30
31
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 29

def modified_at
  @modified_at
end

#remote_dataArray<Hash{String => Object}> (readonly)



369
370
371
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 369

def remote_data
  @remote_data
end

#remote_idString (readonly)



25
26
27
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 25

def remote_id
  @remote_id
end

#remote_was_deletedBoolean (readonly)



365
366
367
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 365

def remote_was_deleted
  @remote_was_deleted
end

#source_account_balanceFloat (readonly)



356
357
358
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 356

def 
  
end

#source_account_idString (readonly)



31
32
33
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 31

def 
  
end

#source_account_nameString (readonly)



35
36
37
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 35

def 
  
end

#source_account_numberString (readonly)



38
39
40
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 38

def 
  
end

#target_account_idString (readonly)



33
34
35
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 33

def 
  
end

#target_account_nameString (readonly)



40
41
42
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 40

def 
  
end

Class Method Details

.from_json(json_object:) ⇒ Merge::Accounting::BankFeedAccount

Deserialize a JSON object to an instance of BankFeedAccount



758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 758

def self.from_json(json_object:)
  struct = JSON.parse(json_object, object_class: OpenStruct)
  parsed_json = JSON.parse(json_object)
  id = parsed_json["id"]
  remote_id = parsed_json["remote_id"]
  created_at = (DateTime.parse(parsed_json["created_at"]) unless parsed_json["created_at"].nil?)
  modified_at = (DateTime.parse(parsed_json["modified_at"]) unless parsed_json["modified_at"].nil?)
   = parsed_json["source_account_id"]
   = parsed_json["target_account_id"]
   = parsed_json["source_account_name"]
   = parsed_json["source_account_number"]
   = parsed_json["target_account_name"]
  currency = parsed_json["currency"]
  feed_status = parsed_json["feed_status"]
  feed_start_date = (DateTime.parse(parsed_json["feed_start_date"]) unless parsed_json["feed_start_date"].nil?)
   = parsed_json["source_account_balance"]
   = parsed_json["account_type"]
  remote_was_deleted = parsed_json["remote_was_deleted"]
  field_mappings = parsed_json["field_mappings"]
  remote_data = parsed_json["remote_data"]
  new(
    id: id,
    remote_id: remote_id,
    created_at: created_at,
    modified_at: modified_at,
    source_account_id: ,
    target_account_id: ,
    source_account_name: ,
    source_account_number: ,
    target_account_name: ,
    currency: currency,
    feed_status: feed_status,
    feed_start_date: feed_start_date,
    source_account_balance: ,
    account_type: ,
    remote_was_deleted: remote_was_deleted,
    field_mappings: field_mappings,
    remote_data: remote_data,
    additional_properties: struct
  )
end

.validate_raw(obj:) ⇒ Void

Leveraged for Union-type generation, validate_raw attempts to parse the given

hash and check each fields type against the current object's property
definitions.


813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 813

def self.validate_raw(obj:)
  obj.id&.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
  obj.remote_id&.is_a?(String) != false || raise("Passed value for field obj.remote_id is not the expected type, validation failed.")
  obj.created_at&.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
  obj.modified_at&.is_a?(DateTime) != false || raise("Passed value for field obj.modified_at is not the expected type, validation failed.")
  obj.&.is_a?(String) != false || raise("Passed value for field obj.source_account_id is not the expected type, validation failed.")
  obj.&.is_a?(String) != false || raise("Passed value for field obj.target_account_id is not the expected type, validation failed.")
  obj.&.is_a?(String) != false || raise("Passed value for field obj.source_account_name is not the expected type, validation failed.")
  obj.&.is_a?(String) != false || raise("Passed value for field obj.source_account_number is not the expected type, validation failed.")
  obj.&.is_a?(String) != false || raise("Passed value for field obj.target_account_name is not the expected type, validation failed.")
  obj.currency&.is_a?(Merge::Accounting::TransactionCurrencyEnum) != false || raise("Passed value for field obj.currency is not the expected type, validation failed.")
  obj.feed_status&.is_a?(Merge::Accounting::FeedStatusEnum) != false || raise("Passed value for field obj.feed_status is not the expected type, validation failed.")
  obj.feed_start_date&.is_a?(DateTime) != false || raise("Passed value for field obj.feed_start_date is not the expected type, validation failed.")
  obj.&.is_a?(Float) != false || raise("Passed value for field obj.source_account_balance is not the expected type, validation failed.")
  obj.&.is_a?(Merge::Accounting::BankFeedAccountAccountTypeEnum) != false || raise("Passed value for field obj.account_type is not the expected type, validation failed.")
  obj.remote_was_deleted&.is_a?(Boolean) != false || raise("Passed value for field obj.remote_was_deleted is not the expected type, validation failed.")
  obj.field_mappings&.is_a?(Hash) != false || raise("Passed value for field obj.field_mappings is not the expected type, validation failed.")
  obj.remote_data&.is_a?(Array) != false || raise("Passed value for field obj.remote_data is not the expected type, validation failed.")
end

Instance Method Details

#to_json(*_args) ⇒ String

Serialize an instance of BankFeedAccount to a JSON object



803
804
805
# File 'lib/merge_ruby_client/accounting/types/bank_feed_account.rb', line 803

def to_json(*_args)
  @_field_set&.to_json
end