Class: Merge::Accounting::JournalEntryRequest
- Inherits:
-
Object
- Object
- Merge::Accounting::JournalEntryRequest
- Defined in:
- lib/merge_ruby_client/accounting/types/journal_entry_request.rb
Overview
# The JournalEntry Object
### Description
The `JournalEntry` object is used to get a record of all manually created
entries made in a company
Constant Summary collapse
- OMIT =
Object.new
Instance Attribute Summary collapse
-
#additional_properties ⇒ OpenStruct
readonly
Additional properties unmapped to the current class definition.
-
#company ⇒ Merge::Accounting::JournalEntryRequestCompany
readonly
The company the journal entry belongs to.
-
#currency ⇒ Merge::Accounting::TransactionCurrencyEnum
readonly
The journal’s currency.
-
#exchange_rate ⇒ String
readonly
The journal entry’s exchange rate.
-
#inclusive_of_tax ⇒ Boolean
readonly
If the transaction is inclusive or exclusive of tax.
- #integration_params ⇒ Hash{String => Object} readonly
-
#journal_number ⇒ String
readonly
Reference number for identifying journal entries.
- #lines ⇒ Array<Merge::Accounting::JournalLineRequest> readonly
- #linked_account_params ⇒ Hash{String => Object} readonly
-
#memo ⇒ String
readonly
The journal entry’s private note.
-
#payments ⇒ Array<Merge::Accounting::JournalEntryRequestPaymentsItem>
readonly
Array of ‘Payment` object IDs.
-
#posting_status ⇒ Merge::Accounting::PostingStatusEnum
readonly
The journal’s posting status.
- #remote_fields ⇒ Array<Merge::Accounting::RemoteFieldRequest> readonly
- #tracking_categories ⇒ Array<Merge::Accounting::JournalEntryRequestTrackingCategoriesItem> readonly
-
#transaction_date ⇒ DateTime
readonly
The journal entry’s transaction date.
Class Method Summary collapse
-
.from_json(json_object:) ⇒ Merge::Accounting::JournalEntryRequest
Deserialize a JSON object to an instance of JournalEntryRequest.
-
.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.
Instance Method Summary collapse
- #initialize(transaction_date: OMIT, payments: OMIT, memo: OMIT, currency: OMIT, exchange_rate: OMIT, company: OMIT, tracking_categories: OMIT, inclusive_of_tax: OMIT, lines: OMIT, journal_number: OMIT, posting_status: OMIT, integration_params: OMIT, linked_account_params: OMIT, remote_fields: OMIT, additional_properties: nil) ⇒ Merge::Accounting::JournalEntryRequest constructor
-
#to_json(*_args) ⇒ String
Serialize an instance of JournalEntryRequest to a JSON object.
Constructor Details
#initialize(transaction_date: OMIT, payments: OMIT, memo: OMIT, currency: OMIT, exchange_rate: OMIT, company: OMIT, tracking_categories: OMIT, inclusive_of_tax: OMIT, lines: OMIT, journal_number: OMIT, posting_status: OMIT, integration_params: OMIT, linked_account_params: OMIT, remote_fields: OMIT, additional_properties: nil) ⇒ Merge::Accounting::JournalEntryRequest
694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 694 def initialize(transaction_date: OMIT, payments: OMIT, memo: OMIT, currency: OMIT, exchange_rate: OMIT, company: OMIT, tracking_categories: OMIT, inclusive_of_tax: OMIT, lines: OMIT, journal_number: OMIT, posting_status: OMIT, integration_params: OMIT, linked_account_params: OMIT, remote_fields: OMIT, additional_properties: nil) @transaction_date = transaction_date if transaction_date != OMIT @payments = payments if payments != OMIT @memo = memo if memo != OMIT @currency = currency if currency != OMIT @exchange_rate = exchange_rate if exchange_rate != OMIT @company = company if company != OMIT @tracking_categories = tracking_categories if tracking_categories != OMIT @inclusive_of_tax = inclusive_of_tax if inclusive_of_tax != OMIT @lines = lines if lines != OMIT @journal_number = journal_number if journal_number != OMIT @posting_status = posting_status if posting_status != OMIT @integration_params = integration_params if integration_params != OMIT @linked_account_params = linked_account_params if linked_account_params != OMIT @remote_fields = remote_fields if remote_fields != OMIT @additional_properties = additional_properties @_field_set = { "transaction_date": transaction_date, "payments": payments, "memo": memo, "currency": currency, "exchange_rate": exchange_rate, "company": company, "tracking_categories": tracking_categories, "inclusive_of_tax": inclusive_of_tax, "lines": lines, "journal_number": journal_number, "posting_status": posting_status, "integration_params": integration_params, "linked_account_params": linked_account_params, "remote_fields": remote_fields }.reject do |_k, v| v == OMIT end end |
Instance Attribute Details
#additional_properties ⇒ OpenStruct (readonly)
362 363 364 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 362 def additional_properties @additional_properties end |
#company ⇒ Merge::Accounting::JournalEntryRequestCompany (readonly)
341 342 343 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 341 def company @company end |
#currency ⇒ Merge::Accounting::TransactionCurrencyEnum (readonly)
337 338 339 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 337 def currency @currency end |
#exchange_rate ⇒ String (readonly)
339 340 341 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 339 def exchange_rate @exchange_rate end |
#inclusive_of_tax ⇒ Boolean (readonly)
346 347 348 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 346 def inclusive_of_tax @inclusive_of_tax end |
#integration_params ⇒ Hash{String => Object} (readonly)
356 357 358 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 356 def integration_params @integration_params end |
#journal_number ⇒ String (readonly)
350 351 352 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 350 def journal_number @journal_number end |
#lines ⇒ Array<Merge::Accounting::JournalLineRequest> (readonly)
348 349 350 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 348 def lines @lines end |
#linked_account_params ⇒ Hash{String => Object} (readonly)
358 359 360 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 358 def linked_account_params @linked_account_params end |
#memo ⇒ String (readonly)
29 30 31 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 29 def memo @memo end |
#payments ⇒ Array<Merge::Accounting::JournalEntryRequestPaymentsItem> (readonly)
27 28 29 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 27 def payments @payments end |
#posting_status ⇒ Merge::Accounting::PostingStatusEnum (readonly)
354 355 356 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 354 def posting_status @posting_status end |
#remote_fields ⇒ Array<Merge::Accounting::RemoteFieldRequest> (readonly)
360 361 362 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 360 def remote_fields @remote_fields end |
#tracking_categories ⇒ Array<Merge::Accounting::JournalEntryRequestTrackingCategoriesItem> (readonly)
343 344 345 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 343 def tracking_categories @tracking_categories end |
#transaction_date ⇒ DateTime (readonly)
25 26 27 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 25 def transaction_date @transaction_date end |
Class Method Details
.from_json(json_object:) ⇒ Merge::Accounting::JournalEntryRequest
Deserialize a JSON object to an instance of JournalEntryRequest
735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 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 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 735 def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) transaction_date = (DateTime.parse(parsed_json["transaction_date"]) unless parsed_json["transaction_date"].nil?) payments = parsed_json["payments"]&.map do |item| item = item.to_json Merge::Accounting::JournalEntryRequestPaymentsItem.from_json(json_object: item) end memo = parsed_json["memo"] currency = parsed_json["currency"] exchange_rate = parsed_json["exchange_rate"] if parsed_json["company"].nil? company = nil else company = parsed_json["company"].to_json company = Merge::Accounting::JournalEntryRequestCompany.from_json(json_object: company) end tracking_categories = parsed_json["tracking_categories"]&.map do |item| item = item.to_json Merge::Accounting::JournalEntryRequestTrackingCategoriesItem.from_json(json_object: item) end inclusive_of_tax = parsed_json["inclusive_of_tax"] lines = parsed_json["lines"]&.map do |item| item = item.to_json Merge::Accounting::JournalLineRequest.from_json(json_object: item) end journal_number = parsed_json["journal_number"] posting_status = parsed_json["posting_status"] integration_params = parsed_json["integration_params"] linked_account_params = parsed_json["linked_account_params"] remote_fields = parsed_json["remote_fields"]&.map do |item| item = item.to_json Merge::Accounting::RemoteFieldRequest.from_json(json_object: item) end new( transaction_date: transaction_date, payments: payments, memo: memo, currency: currency, exchange_rate: exchange_rate, company: company, tracking_categories: tracking_categories, inclusive_of_tax: inclusive_of_tax, lines: lines, journal_number: journal_number, posting_status: posting_status, integration_params: integration_params, linked_account_params: linked_account_params, remote_fields: remote_fields, 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.
801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 801 def self.validate_raw(obj:) obj.transaction_date&.is_a?(DateTime) != false || raise("Passed value for field obj.transaction_date is not the expected type, validation failed.") obj.payments&.is_a?(Array) != false || raise("Passed value for field obj.payments is not the expected type, validation failed.") obj.memo&.is_a?(String) != false || raise("Passed value for field obj.memo 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.exchange_rate&.is_a?(String) != false || raise("Passed value for field obj.exchange_rate is not the expected type, validation failed.") obj.company.nil? || Merge::Accounting::JournalEntryRequestCompany.validate_raw(obj: obj.company) obj.tracking_categories&.is_a?(Array) != false || raise("Passed value for field obj.tracking_categories is not the expected type, validation failed.") obj.inclusive_of_tax&.is_a?(Boolean) != false || raise("Passed value for field obj.inclusive_of_tax is not the expected type, validation failed.") obj.lines&.is_a?(Array) != false || raise("Passed value for field obj.lines is not the expected type, validation failed.") obj.journal_number&.is_a?(String) != false || raise("Passed value for field obj.journal_number is not the expected type, validation failed.") obj.posting_status&.is_a?(Merge::Accounting::PostingStatusEnum) != false || raise("Passed value for field obj.posting_status is not the expected type, validation failed.") obj.integration_params&.is_a?(Hash) != false || raise("Passed value for field obj.integration_params is not the expected type, validation failed.") obj.linked_account_params&.is_a?(Hash) != false || raise("Passed value for field obj.linked_account_params is not the expected type, validation failed.") obj.remote_fields&.is_a?(Array) != false || raise("Passed value for field obj.remote_fields is not the expected type, validation failed.") end |
Instance Method Details
#to_json(*_args) ⇒ String
Serialize an instance of JournalEntryRequest to a JSON object
791 792 793 |
# File 'lib/merge_ruby_client/accounting/types/journal_entry_request.rb', line 791 def to_json(*_args) @_field_set&.to_json end |