merge_ruby_client 1.1.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/merge_ruby_client/accounting/accounting_periods/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/accounts/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/attachments/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/accounting/balance_sheets/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/bank_feed_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/bank_feed_transactions/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/cash_flow_statements/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/client.rb +14 -0
- data/lib/merge_ruby_client/accounting/company_info/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/contacts/client.rb +187 -10
- data/lib/merge_ruby_client/accounting/credit_notes/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/employees/client.rb +35 -8
- data/lib/merge_ruby_client/accounting/expense_reports/client.rb +765 -0
- data/lib/merge_ruby_client/accounting/expense_reports/types/expense_reports_lines_list_request_expand.rb +73 -0
- data/lib/merge_ruby_client/accounting/expense_reports/types/expense_reports_list_request_expand.rb +25 -0
- data/lib/merge_ruby_client/accounting/expense_reports/types/expense_reports_retrieve_request_expand.rb +25 -0
- data/lib/merge_ruby_client/accounting/expenses/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/general_ledger_transactions/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/income_statements/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/invoices/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/issues/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/items/client.rb +334 -2
- data/lib/merge_ruby_client/accounting/journal_entries/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/payment_methods/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/payment_terms/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/payments/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/projects/client.rb +251 -0
- data/lib/merge_ruby_client/accounting/projects/types/projects_list_request_expand.rb +13 -0
- data/lib/merge_ruby_client/accounting/projects/types/projects_retrieve_request_expand.rb +13 -0
- data/lib/merge_ruby_client/accounting/purchase_orders/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/sync_status/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/tax_rates/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/tracking_categories/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/transactions/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/transactions/types/transactions_list_request_expand.rb +32 -0
- data/lib/merge_ruby_client/accounting/transactions/types/transactions_retrieve_request_expand.rb +32 -0
- data/lib/merge_ruby_client/accounting/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/accounting/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_request.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_request_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/accounting/types/expense_line.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/expense_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_line_request.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/expense_line_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report.rb +869 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line.rb +921 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_account.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_contact.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_employee.rb +57 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request.rb +899 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_account.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_contact.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_employee.rb +57 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_tax_rate.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_tax_rate.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_request.rb +819 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_request_accounting_period.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_request_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_request_employee.rb +57 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_response.rb +101 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_status_enum.rb +16 -0
- data/lib/merge_ruby_client/accounting/types/external_target_field_api_response.rb +23 -1
- data/lib/merge_ruby_client/accounting/types/field_mapping_api_instance_response.rb +23 -1
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_request.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_request_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/item.rb +18 -1
- data/lib/merge_ruby_client/accounting/types/item_request_request.rb +202 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_purchase_account.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_purchase_tax_rate.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_sales_account.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_sales_tax_rate.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_response.rb +101 -0
- data/lib/merge_ruby_client/accounting/types/journal_line.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/journal_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/journal_line_request.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/journal_line_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/paginated_expense_report_line_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/paginated_expense_report_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/paginated_project_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/patched_contact_request.rb +188 -0
- data/lib/merge_ruby_client/accounting/types/patched_contact_request_addresses_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/patched_item_request_request.rb +172 -0
- data/lib/merge_ruby_client/accounting/types/project.rb +162 -0
- data/lib/merge_ruby_client/accounting/types/project_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/project_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/remote_field_api_response.rb +12 -1
- data/lib/merge_ruby_client/accounting/types/remote_field_class.rb +9 -1
- data/lib/merge_ruby_client/accounting/types/type_2_bb_enum.rb +16 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_contact.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_request.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_request_contact.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/vendor_credits/client.rb +2 -2
- data/lib/merge_ruby_client/ats/activities/client.rb +2 -2
- data/lib/merge_ruby_client/ats/applications/client.rb +2 -2
- data/lib/merge_ruby_client/ats/attachments/client.rb +2 -2
- data/lib/merge_ruby_client/ats/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/ats/candidates/client.rb +2 -2
- data/lib/merge_ruby_client/ats/departments/client.rb +2 -2
- data/lib/merge_ruby_client/ats/eeocs/client.rb +2 -2
- data/lib/merge_ruby_client/ats/interviews/client.rb +2 -2
- data/lib/merge_ruby_client/ats/issues/client.rb +2 -2
- data/lib/merge_ruby_client/ats/job_interview_stages/client.rb +2 -2
- data/lib/merge_ruby_client/ats/job_postings/client.rb +2 -2
- data/lib/merge_ruby_client/ats/jobs/client.rb +4 -4
- data/lib/merge_ruby_client/ats/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/ats/offers/client.rb +2 -2
- data/lib/merge_ruby_client/ats/offices/client.rb +2 -2
- data/lib/merge_ruby_client/ats/reject_reasons/client.rb +2 -2
- data/lib/merge_ruby_client/ats/scorecards/client.rb +2 -2
- data/lib/merge_ruby_client/ats/sync_status/client.rb +2 -2
- data/lib/merge_ruby_client/ats/tags/client.rb +2 -2
- data/lib/merge_ruby_client/ats/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/ats/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/ats/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/ats/users/client.rb +2 -2
- data/lib/merge_ruby_client/crm/accounts/client.rb +10 -6
- data/lib/merge_ruby_client/crm/association_types/client.rb +2 -2
- data/lib/merge_ruby_client/crm/associations/client.rb +10 -2
- data/lib/merge_ruby_client/crm/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/crm/contacts/client.rb +10 -6
- data/lib/merge_ruby_client/crm/custom_object_classes/client.rb +2 -2
- data/lib/merge_ruby_client/crm/custom_objects/client.rb +14 -6
- data/lib/merge_ruby_client/crm/engagement_types/client.rb +10 -6
- data/lib/merge_ruby_client/crm/engagements/client.rb +10 -6
- data/lib/merge_ruby_client/crm/issues/client.rb +2 -2
- data/lib/merge_ruby_client/crm/leads/client.rb +10 -6
- data/lib/merge_ruby_client/crm/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/crm/notes/client.rb +10 -6
- data/lib/merge_ruby_client/crm/opportunities/client.rb +10 -6
- data/lib/merge_ruby_client/crm/stages/client.rb +10 -6
- data/lib/merge_ruby_client/crm/sync_status/client.rb +22 -8
- data/lib/merge_ruby_client/crm/tasks/client.rb +10 -6
- data/lib/merge_ruby_client/crm/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/crm/types/custom_object_request.rb +26 -3
- data/lib/merge_ruby_client/crm/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/crm/types/remote_field_class.rb +9 -1
- data/lib/merge_ruby_client/crm/users/client.rb +10 -6
- data/lib/merge_ruby_client/filestorage/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/filestorage/drives/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/files/client.rb +70 -16
- data/lib/merge_ruby_client/filestorage/files/types/files_download_request_meta_list_request_order_by.rb +14 -0
- data/lib/merge_ruby_client/filestorage/files/types/files_list_request_order_by.rb +14 -0
- data/lib/merge_ruby_client/filestorage/folders/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/groups/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/issues/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/sync_status/client.rb +22 -8
- data/lib/merge_ruby_client/filestorage/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/filestorage/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/filestorage/types/download_request_meta.rb +2 -9
- data/lib/merge_ruby_client/filestorage/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/filestorage/types/file.rb +13 -1
- data/lib/merge_ruby_client/filestorage/types/file_request.rb +13 -1
- data/lib/merge_ruby_client/filestorage/users/client.rb +2 -2
- data/lib/merge_ruby_client/hris/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/hris/bank_info/client.rb +2 -2
- data/lib/merge_ruby_client/hris/benefits/client.rb +2 -2
- data/lib/merge_ruby_client/hris/companies/client.rb +2 -2
- data/lib/merge_ruby_client/hris/dependents/client.rb +8 -4
- data/lib/merge_ruby_client/hris/employee_payroll_runs/client.rb +2 -2
- data/lib/merge_ruby_client/hris/employees/client.rb +8 -4
- data/lib/merge_ruby_client/hris/employer_benefits/client.rb +2 -2
- data/lib/merge_ruby_client/hris/employments/client.rb +2 -2
- data/lib/merge_ruby_client/hris/groups/client.rb +2 -2
- data/lib/merge_ruby_client/hris/issues/client.rb +2 -2
- data/lib/merge_ruby_client/hris/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/hris/locations/client.rb +2 -2
- data/lib/merge_ruby_client/hris/pay_groups/client.rb +2 -2
- data/lib/merge_ruby_client/hris/payroll_runs/client.rb +2 -2
- data/lib/merge_ruby_client/hris/sync_status/client.rb +2 -2
- data/lib/merge_ruby_client/hris/teams/client.rb +2 -2
- data/lib/merge_ruby_client/hris/time_off/client.rb +2 -2
- data/lib/merge_ruby_client/hris/time_off_balances/client.rb +2 -2
- data/lib/merge_ruby_client/hris/timesheet_entries/client.rb +2 -2
- data/lib/merge_ruby_client/hris/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/hris/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/hris/types/benefit.rb +9 -9
- data/lib/merge_ruby_client/hris/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/ticketing/accounts/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/attachments/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/ticketing/collections/client.rb +4 -4
- data/lib/merge_ruby_client/ticketing/comments/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/contacts/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/issues/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/projects/client.rb +4 -4
- data/lib/merge_ruby_client/ticketing/roles/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/sync_status/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/tags/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/teams/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/tickets/client.rb +40 -20
- data/lib/merge_ruby_client/ticketing/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/ticketing/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/ticketing/types/collection.rb +18 -16
- data/lib/merge_ruby_client/ticketing/types/{access_level_enum.rb → collection_access_level_enum.rb} +3 -1
- data/lib/merge_ruby_client/ticketing/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/ticketing/types/patched_ticket_request.rb +28 -9
- data/lib/merge_ruby_client/ticketing/types/remote_field_class.rb +9 -1
- data/lib/merge_ruby_client/ticketing/types/ticket.rb +20 -1
- data/lib/merge_ruby_client/ticketing/types/ticket_access_level_enum.rb +16 -0
- data/lib/merge_ruby_client/ticketing/types/ticket_request.rb +20 -1
- data/lib/merge_ruby_client/ticketing/users/client.rb +2 -2
- data/lib/merge_ruby_client.rb +14 -14
- data/lib/requests.rb +2 -2
- data/lib/types_export.rb +473 -409
- metadata +69 -3
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative "status_7_d_1_enum"
|
|
4
|
+
require_relative "type_2_bb_enum"
|
|
5
|
+
require "ostruct"
|
|
6
|
+
require "json"
|
|
7
|
+
|
|
8
|
+
module Merge
|
|
9
|
+
module Accounting
|
|
10
|
+
# # The Item Object
|
|
11
|
+
# ### Description
|
|
12
|
+
# The `Item` object refers to the goods involved in a transaction.
|
|
13
|
+
# ### Usage Example
|
|
14
|
+
# Fetch from the `LIST Items` endpoint and view a company's items.
|
|
15
|
+
class PatchedItemRequestRequest
|
|
16
|
+
# @return [String] The item's name.
|
|
17
|
+
attr_reader :name
|
|
18
|
+
# @return [Merge::Accounting::Status7D1Enum] The item's status.
|
|
19
|
+
# * `ACTIVE` - ACTIVE
|
|
20
|
+
# * `ARCHIVED` - ARCHIVED
|
|
21
|
+
attr_reader :status
|
|
22
|
+
# @return [Merge::Accounting::Type2BbEnum] The item's type.
|
|
23
|
+
# * `INVENTORY` - INVENTORY
|
|
24
|
+
# * `NON_INVENTORY` - NON_INVENTORY
|
|
25
|
+
# * `SERVICE` - SERVICE
|
|
26
|
+
# * `UNKNOWN` - UNKNOWN
|
|
27
|
+
attr_reader :type
|
|
28
|
+
# @return [Float] The item's unit price.
|
|
29
|
+
attr_reader :unit_price
|
|
30
|
+
# @return [Float] The price at which the item is purchased from a vendor.
|
|
31
|
+
attr_reader :purchase_price
|
|
32
|
+
# @return [String] References the default account used to record a purchase of the item.
|
|
33
|
+
attr_reader :purchase_account
|
|
34
|
+
# @return [String] References the default account used to record a sale.
|
|
35
|
+
attr_reader :sales_account
|
|
36
|
+
# @return [String] The company the item belongs to.
|
|
37
|
+
attr_reader :company
|
|
38
|
+
# @return [String] The default purchase tax rate for this item.
|
|
39
|
+
attr_reader :purchase_tax_rate
|
|
40
|
+
# @return [String] The default sales tax rate for this item.
|
|
41
|
+
attr_reader :sales_tax_rate
|
|
42
|
+
# @return [Hash{String => Object}]
|
|
43
|
+
attr_reader :integration_params
|
|
44
|
+
# @return [Hash{String => Object}]
|
|
45
|
+
attr_reader :linked_account_params
|
|
46
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
47
|
+
attr_reader :additional_properties
|
|
48
|
+
# @return [Object]
|
|
49
|
+
attr_reader :_field_set
|
|
50
|
+
protected :_field_set
|
|
51
|
+
|
|
52
|
+
OMIT = Object.new
|
|
53
|
+
|
|
54
|
+
# @param name [String] The item's name.
|
|
55
|
+
# @param status [Merge::Accounting::Status7D1Enum] The item's status.
|
|
56
|
+
# * `ACTIVE` - ACTIVE
|
|
57
|
+
# * `ARCHIVED` - ARCHIVED
|
|
58
|
+
# @param type [Merge::Accounting::Type2BbEnum] The item's type.
|
|
59
|
+
# * `INVENTORY` - INVENTORY
|
|
60
|
+
# * `NON_INVENTORY` - NON_INVENTORY
|
|
61
|
+
# * `SERVICE` - SERVICE
|
|
62
|
+
# * `UNKNOWN` - UNKNOWN
|
|
63
|
+
# @param unit_price [Float] The item's unit price.
|
|
64
|
+
# @param purchase_price [Float] The price at which the item is purchased from a vendor.
|
|
65
|
+
# @param purchase_account [String] References the default account used to record a purchase of the item.
|
|
66
|
+
# @param sales_account [String] References the default account used to record a sale.
|
|
67
|
+
# @param company [String] The company the item belongs to.
|
|
68
|
+
# @param purchase_tax_rate [String] The default purchase tax rate for this item.
|
|
69
|
+
# @param sales_tax_rate [String] The default sales tax rate for this item.
|
|
70
|
+
# @param integration_params [Hash{String => Object}]
|
|
71
|
+
# @param linked_account_params [Hash{String => Object}]
|
|
72
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
73
|
+
# @return [Merge::Accounting::PatchedItemRequestRequest]
|
|
74
|
+
def initialize(name: OMIT, status: OMIT, type: OMIT, unit_price: OMIT, purchase_price: OMIT,
|
|
75
|
+
purchase_account: OMIT, sales_account: OMIT, company: OMIT, purchase_tax_rate: OMIT, sales_tax_rate: OMIT, integration_params: OMIT, linked_account_params: OMIT, additional_properties: nil)
|
|
76
|
+
@name = name if name != OMIT
|
|
77
|
+
@status = status if status != OMIT
|
|
78
|
+
@type = type if type != OMIT
|
|
79
|
+
@unit_price = unit_price if unit_price != OMIT
|
|
80
|
+
@purchase_price = purchase_price if purchase_price != OMIT
|
|
81
|
+
@purchase_account = purchase_account if purchase_account != OMIT
|
|
82
|
+
@sales_account = sales_account if sales_account != OMIT
|
|
83
|
+
@company = company if company != OMIT
|
|
84
|
+
@purchase_tax_rate = purchase_tax_rate if purchase_tax_rate != OMIT
|
|
85
|
+
@sales_tax_rate = sales_tax_rate if sales_tax_rate != OMIT
|
|
86
|
+
@integration_params = integration_params if integration_params != OMIT
|
|
87
|
+
@linked_account_params = linked_account_params if linked_account_params != OMIT
|
|
88
|
+
@additional_properties = additional_properties
|
|
89
|
+
@_field_set = {
|
|
90
|
+
"name": name,
|
|
91
|
+
"status": status,
|
|
92
|
+
"type": type,
|
|
93
|
+
"unit_price": unit_price,
|
|
94
|
+
"purchase_price": purchase_price,
|
|
95
|
+
"purchase_account": purchase_account,
|
|
96
|
+
"sales_account": sales_account,
|
|
97
|
+
"company": company,
|
|
98
|
+
"purchase_tax_rate": purchase_tax_rate,
|
|
99
|
+
"sales_tax_rate": sales_tax_rate,
|
|
100
|
+
"integration_params": integration_params,
|
|
101
|
+
"linked_account_params": linked_account_params
|
|
102
|
+
}.reject do |_k, v|
|
|
103
|
+
v == OMIT
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
# Deserialize a JSON object to an instance of PatchedItemRequestRequest
|
|
108
|
+
#
|
|
109
|
+
# @param json_object [String]
|
|
110
|
+
# @return [Merge::Accounting::PatchedItemRequestRequest]
|
|
111
|
+
def self.from_json(json_object:)
|
|
112
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
113
|
+
parsed_json = JSON.parse(json_object)
|
|
114
|
+
name = parsed_json["name"]
|
|
115
|
+
status = parsed_json["status"]
|
|
116
|
+
type = parsed_json["type"]
|
|
117
|
+
unit_price = parsed_json["unit_price"]
|
|
118
|
+
purchase_price = parsed_json["purchase_price"]
|
|
119
|
+
purchase_account = parsed_json["purchase_account"]
|
|
120
|
+
sales_account = parsed_json["sales_account"]
|
|
121
|
+
company = parsed_json["company"]
|
|
122
|
+
purchase_tax_rate = parsed_json["purchase_tax_rate"]
|
|
123
|
+
sales_tax_rate = parsed_json["sales_tax_rate"]
|
|
124
|
+
integration_params = parsed_json["integration_params"]
|
|
125
|
+
linked_account_params = parsed_json["linked_account_params"]
|
|
126
|
+
new(
|
|
127
|
+
name: name,
|
|
128
|
+
status: status,
|
|
129
|
+
type: type,
|
|
130
|
+
unit_price: unit_price,
|
|
131
|
+
purchase_price: purchase_price,
|
|
132
|
+
purchase_account: purchase_account,
|
|
133
|
+
sales_account: sales_account,
|
|
134
|
+
company: company,
|
|
135
|
+
purchase_tax_rate: purchase_tax_rate,
|
|
136
|
+
sales_tax_rate: sales_tax_rate,
|
|
137
|
+
integration_params: integration_params,
|
|
138
|
+
linked_account_params: linked_account_params,
|
|
139
|
+
additional_properties: struct
|
|
140
|
+
)
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
# Serialize an instance of PatchedItemRequestRequest to a JSON object
|
|
144
|
+
#
|
|
145
|
+
# @return [String]
|
|
146
|
+
def to_json(*_args)
|
|
147
|
+
@_field_set&.to_json
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
151
|
+
# hash and check each fields type against the current object's property
|
|
152
|
+
# definitions.
|
|
153
|
+
#
|
|
154
|
+
# @param obj [Object]
|
|
155
|
+
# @return [Void]
|
|
156
|
+
def self.validate_raw(obj:)
|
|
157
|
+
obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
|
158
|
+
obj.status&.is_a?(Merge::Accounting::Status7D1Enum) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
|
159
|
+
obj.type&.is_a?(Merge::Accounting::Type2BbEnum) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
|
160
|
+
obj.unit_price&.is_a?(Float) != false || raise("Passed value for field obj.unit_price is not the expected type, validation failed.")
|
|
161
|
+
obj.purchase_price&.is_a?(Float) != false || raise("Passed value for field obj.purchase_price is not the expected type, validation failed.")
|
|
162
|
+
obj.purchase_account&.is_a?(String) != false || raise("Passed value for field obj.purchase_account is not the expected type, validation failed.")
|
|
163
|
+
obj.sales_account&.is_a?(String) != false || raise("Passed value for field obj.sales_account is not the expected type, validation failed.")
|
|
164
|
+
obj.company&.is_a?(String) != false || raise("Passed value for field obj.company is not the expected type, validation failed.")
|
|
165
|
+
obj.purchase_tax_rate&.is_a?(String) != false || raise("Passed value for field obj.purchase_tax_rate is not the expected type, validation failed.")
|
|
166
|
+
obj.sales_tax_rate&.is_a?(String) != false || raise("Passed value for field obj.sales_tax_rate is not the expected type, validation failed.")
|
|
167
|
+
obj.integration_params&.is_a?(Hash) != false || raise("Passed value for field obj.integration_params is not the expected type, validation failed.")
|
|
168
|
+
obj.linked_account_params&.is_a?(Hash) != false || raise("Passed value for field obj.linked_account_params is not the expected type, validation failed.")
|
|
169
|
+
end
|
|
170
|
+
end
|
|
171
|
+
end
|
|
172
|
+
end
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "date"
|
|
4
|
+
require_relative "project_company"
|
|
5
|
+
require_relative "project_contact"
|
|
6
|
+
require_relative "remote_data"
|
|
7
|
+
require "ostruct"
|
|
8
|
+
require "json"
|
|
9
|
+
|
|
10
|
+
module Merge
|
|
11
|
+
module Accounting
|
|
12
|
+
# # The Project Object
|
|
13
|
+
# ### Description
|
|
14
|
+
# The `Project` object is used to track and manage time, costs, resources, and
|
|
15
|
+
# revenue for specific initiatives or work efforts.
|
|
16
|
+
# It provides classification on transactions for allocating expenses, revenue, and
|
|
17
|
+
# activities to a specific project for financial reporting.
|
|
18
|
+
# ### Usage Example
|
|
19
|
+
# Fetch from the `GET Project` endpoint and view project information.
|
|
20
|
+
class Project
|
|
21
|
+
# @return [String]
|
|
22
|
+
attr_reader :id
|
|
23
|
+
# @return [String] The third-party API ID of the matching object.
|
|
24
|
+
attr_reader :remote_id
|
|
25
|
+
# @return [DateTime] The datetime that this object was created by Merge.
|
|
26
|
+
attr_reader :created_at
|
|
27
|
+
# @return [DateTime] The datetime that this object was modified by Merge.
|
|
28
|
+
attr_reader :modified_at
|
|
29
|
+
# @return [String] The project’s name
|
|
30
|
+
attr_reader :name
|
|
31
|
+
# @return [Boolean] `True` if the project is active, `False` if the project is not active.
|
|
32
|
+
attr_reader :is_active
|
|
33
|
+
# @return [Merge::Accounting::ProjectCompany] The subsidiary that the project belongs to.
|
|
34
|
+
attr_reader :company
|
|
35
|
+
# @return [Merge::Accounting::ProjectContact] The supplier, or customer involved in the project.
|
|
36
|
+
attr_reader :contact
|
|
37
|
+
# @return [Hash{String => Object}]
|
|
38
|
+
attr_reader :field_mappings
|
|
39
|
+
# @return [Array<Merge::Accounting::RemoteData>]
|
|
40
|
+
attr_reader :remote_data
|
|
41
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
42
|
+
attr_reader :additional_properties
|
|
43
|
+
# @return [Object]
|
|
44
|
+
attr_reader :_field_set
|
|
45
|
+
protected :_field_set
|
|
46
|
+
|
|
47
|
+
OMIT = Object.new
|
|
48
|
+
|
|
49
|
+
# @param id [String]
|
|
50
|
+
# @param remote_id [String] The third-party API ID of the matching object.
|
|
51
|
+
# @param created_at [DateTime] The datetime that this object was created by Merge.
|
|
52
|
+
# @param modified_at [DateTime] The datetime that this object was modified by Merge.
|
|
53
|
+
# @param name [String] The project’s name
|
|
54
|
+
# @param is_active [Boolean] `True` if the project is active, `False` if the project is not active.
|
|
55
|
+
# @param company [Merge::Accounting::ProjectCompany] The subsidiary that the project belongs to.
|
|
56
|
+
# @param contact [Merge::Accounting::ProjectContact] The supplier, or customer involved in the project.
|
|
57
|
+
# @param field_mappings [Hash{String => Object}]
|
|
58
|
+
# @param remote_data [Array<Merge::Accounting::RemoteData>]
|
|
59
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
60
|
+
# @return [Merge::Accounting::Project]
|
|
61
|
+
def initialize(name:, id: OMIT, remote_id: OMIT, created_at: OMIT, modified_at: OMIT, is_active: OMIT,
|
|
62
|
+
company: OMIT, contact: OMIT, field_mappings: OMIT, remote_data: OMIT, additional_properties: nil)
|
|
63
|
+
@id = id if id != OMIT
|
|
64
|
+
@remote_id = remote_id if remote_id != OMIT
|
|
65
|
+
@created_at = created_at if created_at != OMIT
|
|
66
|
+
@modified_at = modified_at if modified_at != OMIT
|
|
67
|
+
@name = name
|
|
68
|
+
@is_active = is_active if is_active != OMIT
|
|
69
|
+
@company = company if company != OMIT
|
|
70
|
+
@contact = contact if contact != OMIT
|
|
71
|
+
@field_mappings = field_mappings if field_mappings != OMIT
|
|
72
|
+
@remote_data = remote_data if remote_data != OMIT
|
|
73
|
+
@additional_properties = additional_properties
|
|
74
|
+
@_field_set = {
|
|
75
|
+
"id": id,
|
|
76
|
+
"remote_id": remote_id,
|
|
77
|
+
"created_at": created_at,
|
|
78
|
+
"modified_at": modified_at,
|
|
79
|
+
"name": name,
|
|
80
|
+
"is_active": is_active,
|
|
81
|
+
"company": company,
|
|
82
|
+
"contact": contact,
|
|
83
|
+
"field_mappings": field_mappings,
|
|
84
|
+
"remote_data": remote_data
|
|
85
|
+
}.reject do |_k, v|
|
|
86
|
+
v == OMIT
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
# Deserialize a JSON object to an instance of Project
|
|
91
|
+
#
|
|
92
|
+
# @param json_object [String]
|
|
93
|
+
# @return [Merge::Accounting::Project]
|
|
94
|
+
def self.from_json(json_object:)
|
|
95
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
96
|
+
parsed_json = JSON.parse(json_object)
|
|
97
|
+
id = parsed_json["id"]
|
|
98
|
+
remote_id = parsed_json["remote_id"]
|
|
99
|
+
created_at = (DateTime.parse(parsed_json["created_at"]) unless parsed_json["created_at"].nil?)
|
|
100
|
+
modified_at = (DateTime.parse(parsed_json["modified_at"]) unless parsed_json["modified_at"].nil?)
|
|
101
|
+
name = parsed_json["name"]
|
|
102
|
+
is_active = parsed_json["is_active"]
|
|
103
|
+
if parsed_json["company"].nil?
|
|
104
|
+
company = nil
|
|
105
|
+
else
|
|
106
|
+
company = parsed_json["company"].to_json
|
|
107
|
+
company = Merge::Accounting::ProjectCompany.from_json(json_object: company)
|
|
108
|
+
end
|
|
109
|
+
if parsed_json["contact"].nil?
|
|
110
|
+
contact = nil
|
|
111
|
+
else
|
|
112
|
+
contact = parsed_json["contact"].to_json
|
|
113
|
+
contact = Merge::Accounting::ProjectContact.from_json(json_object: contact)
|
|
114
|
+
end
|
|
115
|
+
field_mappings = parsed_json["field_mappings"]
|
|
116
|
+
remote_data = parsed_json["remote_data"]&.map do |item|
|
|
117
|
+
item = item.to_json
|
|
118
|
+
Merge::Accounting::RemoteData.from_json(json_object: item)
|
|
119
|
+
end
|
|
120
|
+
new(
|
|
121
|
+
id: id,
|
|
122
|
+
remote_id: remote_id,
|
|
123
|
+
created_at: created_at,
|
|
124
|
+
modified_at: modified_at,
|
|
125
|
+
name: name,
|
|
126
|
+
is_active: is_active,
|
|
127
|
+
company: company,
|
|
128
|
+
contact: contact,
|
|
129
|
+
field_mappings: field_mappings,
|
|
130
|
+
remote_data: remote_data,
|
|
131
|
+
additional_properties: struct
|
|
132
|
+
)
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
# Serialize an instance of Project to a JSON object
|
|
136
|
+
#
|
|
137
|
+
# @return [String]
|
|
138
|
+
def to_json(*_args)
|
|
139
|
+
@_field_set&.to_json
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
143
|
+
# hash and check each fields type against the current object's property
|
|
144
|
+
# definitions.
|
|
145
|
+
#
|
|
146
|
+
# @param obj [Object]
|
|
147
|
+
# @return [Void]
|
|
148
|
+
def self.validate_raw(obj:)
|
|
149
|
+
obj.id&.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
|
|
150
|
+
obj.remote_id&.is_a?(String) != false || raise("Passed value for field obj.remote_id is not the expected type, validation failed.")
|
|
151
|
+
obj.created_at&.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
|
|
152
|
+
obj.modified_at&.is_a?(DateTime) != false || raise("Passed value for field obj.modified_at is not the expected type, validation failed.")
|
|
153
|
+
obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
|
154
|
+
obj.is_active&.is_a?(Boolean) != false || raise("Passed value for field obj.is_active is not the expected type, validation failed.")
|
|
155
|
+
obj.company.nil? || Merge::Accounting::ProjectCompany.validate_raw(obj: obj.company)
|
|
156
|
+
obj.contact.nil? || Merge::Accounting::ProjectContact.validate_raw(obj: obj.contact)
|
|
157
|
+
obj.field_mappings&.is_a?(Hash) != false || raise("Passed value for field obj.field_mappings is not the expected type, validation failed.")
|
|
158
|
+
obj.remote_data&.is_a?(Array) != false || raise("Passed value for field obj.remote_data is not the expected type, validation failed.")
|
|
159
|
+
end
|
|
160
|
+
end
|
|
161
|
+
end
|
|
162
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "json"
|
|
4
|
+
require_relative "company_info"
|
|
5
|
+
|
|
6
|
+
module Merge
|
|
7
|
+
module Accounting
|
|
8
|
+
# The subsidiary that the project belongs to.
|
|
9
|
+
class ProjectCompany
|
|
10
|
+
# Deserialize a JSON object to an instance of ProjectCompany
|
|
11
|
+
#
|
|
12
|
+
# @param json_object [String]
|
|
13
|
+
# @return [Merge::Accounting::ProjectCompany]
|
|
14
|
+
def self.from_json(json_object:)
|
|
15
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
16
|
+
begin
|
|
17
|
+
struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
|
|
18
|
+
return struct unless struct.nil?
|
|
19
|
+
|
|
20
|
+
return nil
|
|
21
|
+
rescue StandardError
|
|
22
|
+
# noop
|
|
23
|
+
end
|
|
24
|
+
begin
|
|
25
|
+
Merge::Accounting::CompanyInfo.validate_raw(obj: struct)
|
|
26
|
+
return Merge::Accounting::CompanyInfo.from_json(json_object: struct) unless struct.nil?
|
|
27
|
+
|
|
28
|
+
return nil
|
|
29
|
+
rescue StandardError
|
|
30
|
+
# noop
|
|
31
|
+
end
|
|
32
|
+
struct
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
36
|
+
# hash and check each fields type against the current object's property
|
|
37
|
+
# definitions.
|
|
38
|
+
#
|
|
39
|
+
# @param obj [Object]
|
|
40
|
+
# @return [Void]
|
|
41
|
+
def self.validate_raw(obj:)
|
|
42
|
+
begin
|
|
43
|
+
return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
|
44
|
+
rescue StandardError
|
|
45
|
+
# noop
|
|
46
|
+
end
|
|
47
|
+
begin
|
|
48
|
+
return Merge::Accounting::CompanyInfo.validate_raw(obj: obj)
|
|
49
|
+
rescue StandardError
|
|
50
|
+
# noop
|
|
51
|
+
end
|
|
52
|
+
raise("Passed value matched no type within the union, validation failed.")
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "json"
|
|
4
|
+
require_relative "contact"
|
|
5
|
+
|
|
6
|
+
module Merge
|
|
7
|
+
module Accounting
|
|
8
|
+
# The supplier, or customer involved in the project.
|
|
9
|
+
class ProjectContact
|
|
10
|
+
# Deserialize a JSON object to an instance of ProjectContact
|
|
11
|
+
#
|
|
12
|
+
# @param json_object [String]
|
|
13
|
+
# @return [Merge::Accounting::ProjectContact]
|
|
14
|
+
def self.from_json(json_object:)
|
|
15
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
16
|
+
begin
|
|
17
|
+
struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
|
|
18
|
+
return struct unless struct.nil?
|
|
19
|
+
|
|
20
|
+
return nil
|
|
21
|
+
rescue StandardError
|
|
22
|
+
# noop
|
|
23
|
+
end
|
|
24
|
+
begin
|
|
25
|
+
Merge::Accounting::Contact.validate_raw(obj: struct)
|
|
26
|
+
return Merge::Accounting::Contact.from_json(json_object: struct) unless struct.nil?
|
|
27
|
+
|
|
28
|
+
return nil
|
|
29
|
+
rescue StandardError
|
|
30
|
+
# noop
|
|
31
|
+
end
|
|
32
|
+
struct
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
36
|
+
# hash and check each fields type against the current object's property
|
|
37
|
+
# definitions.
|
|
38
|
+
#
|
|
39
|
+
# @param obj [Object]
|
|
40
|
+
# @return [Void]
|
|
41
|
+
def self.validate_raw(obj:)
|
|
42
|
+
begin
|
|
43
|
+
return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
|
44
|
+
rescue StandardError
|
|
45
|
+
# noop
|
|
46
|
+
end
|
|
47
|
+
begin
|
|
48
|
+
return Merge::Accounting::Contact.validate_raw(obj: obj)
|
|
49
|
+
rescue StandardError
|
|
50
|
+
# noop
|
|
51
|
+
end
|
|
52
|
+
raise("Passed value matched no type within the union, validation failed.")
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -54,6 +54,8 @@ module Merge
|
|
|
54
54
|
# @return [Array<Merge::Accounting::RemoteFieldApi>]
|
|
55
55
|
attr_reader :payment_method
|
|
56
56
|
# @return [Array<Merge::Accounting::RemoteFieldApi>]
|
|
57
|
+
attr_reader :project
|
|
58
|
+
# @return [Array<Merge::Accounting::RemoteFieldApi>]
|
|
57
59
|
attr_reader :payment_term
|
|
58
60
|
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
59
61
|
attr_reader :additional_properties
|
|
@@ -86,11 +88,12 @@ module Merge
|
|
|
86
88
|
# @param bank_feed_account [Array<Merge::Accounting::RemoteFieldApi>]
|
|
87
89
|
# @param employee [Array<Merge::Accounting::RemoteFieldApi>]
|
|
88
90
|
# @param payment_method [Array<Merge::Accounting::RemoteFieldApi>]
|
|
91
|
+
# @param project [Array<Merge::Accounting::RemoteFieldApi>]
|
|
89
92
|
# @param payment_term [Array<Merge::Accounting::RemoteFieldApi>]
|
|
90
93
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
91
94
|
# @return [Merge::Accounting::RemoteFieldApiResponse]
|
|
92
95
|
def initialize(account: OMIT, accounting_attachment: OMIT, balance_sheet: OMIT, cash_flow_statement: OMIT,
|
|
93
|
-
company_info: OMIT, contact: OMIT, income_statement: OMIT, credit_note: OMIT, item: OMIT, purchase_order: OMIT, tracking_category: OMIT, journal_entry: OMIT, tax_rate: OMIT, invoice: OMIT, payment: OMIT, expense: OMIT, vendor_credit: OMIT, transaction: OMIT, accounting_period: OMIT, general_ledger_transaction: OMIT, bank_feed_account: OMIT, employee: OMIT, payment_method: OMIT, payment_term: OMIT, additional_properties: nil)
|
|
96
|
+
company_info: OMIT, contact: OMIT, income_statement: OMIT, credit_note: OMIT, item: OMIT, purchase_order: OMIT, tracking_category: OMIT, journal_entry: OMIT, tax_rate: OMIT, invoice: OMIT, payment: OMIT, expense: OMIT, vendor_credit: OMIT, transaction: OMIT, accounting_period: OMIT, general_ledger_transaction: OMIT, bank_feed_account: OMIT, employee: OMIT, payment_method: OMIT, project: OMIT, payment_term: OMIT, additional_properties: nil)
|
|
94
97
|
@account = account if account != OMIT
|
|
95
98
|
@accounting_attachment = accounting_attachment if accounting_attachment != OMIT
|
|
96
99
|
@balance_sheet = balance_sheet if balance_sheet != OMIT
|
|
@@ -114,6 +117,7 @@ module Merge
|
|
|
114
117
|
@bank_feed_account = bank_feed_account if bank_feed_account != OMIT
|
|
115
118
|
@employee = employee if employee != OMIT
|
|
116
119
|
@payment_method = payment_method if payment_method != OMIT
|
|
120
|
+
@project = project if project != OMIT
|
|
117
121
|
@payment_term = payment_term if payment_term != OMIT
|
|
118
122
|
@additional_properties = additional_properties
|
|
119
123
|
@_field_set = {
|
|
@@ -140,6 +144,7 @@ module Merge
|
|
|
140
144
|
"BankFeedAccount": bank_feed_account,
|
|
141
145
|
"Employee": employee,
|
|
142
146
|
"PaymentMethod": payment_method,
|
|
147
|
+
"Project": project,
|
|
143
148
|
"PaymentTerm": payment_term
|
|
144
149
|
}.reject do |_k, v|
|
|
145
150
|
v == OMIT
|
|
@@ -245,6 +250,10 @@ module Merge
|
|
|
245
250
|
item = item.to_json
|
|
246
251
|
Merge::Accounting::RemoteFieldApi.from_json(json_object: item)
|
|
247
252
|
end
|
|
253
|
+
project = parsed_json["Project"]&.map do |item|
|
|
254
|
+
item = item.to_json
|
|
255
|
+
Merge::Accounting::RemoteFieldApi.from_json(json_object: item)
|
|
256
|
+
end
|
|
248
257
|
payment_term = parsed_json["PaymentTerm"]&.map do |item|
|
|
249
258
|
item = item.to_json
|
|
250
259
|
Merge::Accounting::RemoteFieldApi.from_json(json_object: item)
|
|
@@ -273,6 +282,7 @@ module Merge
|
|
|
273
282
|
bank_feed_account: bank_feed_account,
|
|
274
283
|
employee: employee,
|
|
275
284
|
payment_method: payment_method,
|
|
285
|
+
project: project,
|
|
276
286
|
payment_term: payment_term,
|
|
277
287
|
additional_properties: struct
|
|
278
288
|
)
|
|
@@ -315,6 +325,7 @@ module Merge
|
|
|
315
325
|
obj.bank_feed_account&.is_a?(Array) != false || raise("Passed value for field obj.bank_feed_account is not the expected type, validation failed.")
|
|
316
326
|
obj.employee&.is_a?(Array) != false || raise("Passed value for field obj.employee is not the expected type, validation failed.")
|
|
317
327
|
obj.payment_method&.is_a?(Array) != false || raise("Passed value for field obj.payment_method is not the expected type, validation failed.")
|
|
328
|
+
obj.project&.is_a?(Array) != false || raise("Passed value for field obj.project is not the expected type, validation failed.")
|
|
318
329
|
obj.payment_term&.is_a?(Array) != false || raise("Passed value for field obj.payment_term is not the expected type, validation failed.")
|
|
319
330
|
end
|
|
320
331
|
end
|
|
@@ -20,6 +20,8 @@ module Merge
|
|
|
20
20
|
# @return [Boolean]
|
|
21
21
|
attr_reader :is_custom
|
|
22
22
|
# @return [Boolean]
|
|
23
|
+
attr_reader :is_common_model_field
|
|
24
|
+
# @return [Boolean]
|
|
23
25
|
attr_reader :is_required
|
|
24
26
|
# @return [Merge::Accounting::FieldTypeEnum]
|
|
25
27
|
attr_reader :field_type
|
|
@@ -42,6 +44,7 @@ module Merge
|
|
|
42
44
|
# @param remote_key_name [String]
|
|
43
45
|
# @param description [String]
|
|
44
46
|
# @param is_custom [Boolean]
|
|
47
|
+
# @param is_common_model_field [Boolean]
|
|
45
48
|
# @param is_required [Boolean]
|
|
46
49
|
# @param field_type [Merge::Accounting::FieldTypeEnum]
|
|
47
50
|
# @param field_format [Merge::Accounting::FieldFormatEnum]
|
|
@@ -50,12 +53,13 @@ module Merge
|
|
|
50
53
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
51
54
|
# @return [Merge::Accounting::RemoteFieldClass]
|
|
52
55
|
def initialize(id: OMIT, display_name: OMIT, remote_key_name: OMIT, description: OMIT, is_custom: OMIT,
|
|
53
|
-
is_required: OMIT, field_type: OMIT, field_format: OMIT, field_choices: OMIT, item_schema: OMIT, additional_properties: nil)
|
|
56
|
+
is_common_model_field: OMIT, is_required: OMIT, field_type: OMIT, field_format: OMIT, field_choices: OMIT, item_schema: OMIT, additional_properties: nil)
|
|
54
57
|
@id = id if id != OMIT
|
|
55
58
|
@display_name = display_name if display_name != OMIT
|
|
56
59
|
@remote_key_name = remote_key_name if remote_key_name != OMIT
|
|
57
60
|
@description = description if description != OMIT
|
|
58
61
|
@is_custom = is_custom if is_custom != OMIT
|
|
62
|
+
@is_common_model_field = is_common_model_field if is_common_model_field != OMIT
|
|
59
63
|
@is_required = is_required if is_required != OMIT
|
|
60
64
|
@field_type = field_type if field_type != OMIT
|
|
61
65
|
@field_format = field_format if field_format != OMIT
|
|
@@ -68,6 +72,7 @@ module Merge
|
|
|
68
72
|
"remote_key_name": remote_key_name,
|
|
69
73
|
"description": description,
|
|
70
74
|
"is_custom": is_custom,
|
|
75
|
+
"is_common_model_field": is_common_model_field,
|
|
71
76
|
"is_required": is_required,
|
|
72
77
|
"field_type": field_type,
|
|
73
78
|
"field_format": field_format,
|
|
@@ -90,6 +95,7 @@ module Merge
|
|
|
90
95
|
remote_key_name = parsed_json["remote_key_name"]
|
|
91
96
|
description = parsed_json["description"]
|
|
92
97
|
is_custom = parsed_json["is_custom"]
|
|
98
|
+
is_common_model_field = parsed_json["is_common_model_field"]
|
|
93
99
|
is_required = parsed_json["is_required"]
|
|
94
100
|
field_type = parsed_json["field_type"]
|
|
95
101
|
field_format = parsed_json["field_format"]
|
|
@@ -106,6 +112,7 @@ module Merge
|
|
|
106
112
|
remote_key_name: remote_key_name,
|
|
107
113
|
description: description,
|
|
108
114
|
is_custom: is_custom,
|
|
115
|
+
is_common_model_field: is_common_model_field,
|
|
109
116
|
is_required: is_required,
|
|
110
117
|
field_type: field_type,
|
|
111
118
|
field_format: field_format,
|
|
@@ -134,6 +141,7 @@ module Merge
|
|
|
134
141
|
obj.remote_key_name&.is_a?(String) != false || raise("Passed value for field obj.remote_key_name is not the expected type, validation failed.")
|
|
135
142
|
obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
|
|
136
143
|
obj.is_custom&.is_a?(Boolean) != false || raise("Passed value for field obj.is_custom is not the expected type, validation failed.")
|
|
144
|
+
obj.is_common_model_field&.is_a?(Boolean) != false || raise("Passed value for field obj.is_common_model_field is not the expected type, validation failed.")
|
|
137
145
|
obj.is_required&.is_a?(Boolean) != false || raise("Passed value for field obj.is_required is not the expected type, validation failed.")
|
|
138
146
|
obj.field_type&.is_a?(Merge::Accounting::FieldTypeEnum) != false || raise("Passed value for field obj.field_type is not the expected type, validation failed.")
|
|
139
147
|
obj.field_format&.is_a?(Merge::Accounting::FieldFormatEnum) != false || raise("Passed value for field obj.field_format is not the expected type, validation failed.")
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Merge
|
|
4
|
+
module Accounting
|
|
5
|
+
# * `INVENTORY` - INVENTORY
|
|
6
|
+
# * `NON_INVENTORY` - NON_INVENTORY
|
|
7
|
+
# * `SERVICE` - SERVICE
|
|
8
|
+
# * `UNKNOWN` - UNKNOWN
|
|
9
|
+
class Type2BbEnum
|
|
10
|
+
INVENTORY = "INVENTORY"
|
|
11
|
+
NON_INVENTORY = "NON_INVENTORY"
|
|
12
|
+
SERVICE = "SERVICE"
|
|
13
|
+
UNKNOWN = "UNKNOWN"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|