avalara_sdk 25.8.2 → 25.8.3
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/Gemfile.lock +1 -1
- data/README.md +18 -79
- data/docs/A1099/V2/CompaniesW9Api.md +18 -18
- data/docs/A1099/V2/CompanyCreateUpdateRequestModel.md +18 -18
- data/docs/A1099/V2/CompanyResponse.md +37 -37
- data/docs/A1099/V2/CoveredIndividual.md +56 -0
- data/docs/A1099/V2/CreateAndSendW9FormEmailRequest.md +55 -0
- data/docs/A1099/V2/CreateCompanyRequest.md +49 -0
- data/docs/A1099/V2/CreateIssuerRequest.md +49 -0
- data/docs/A1099/V2/EntryStatusResponse.md +20 -0
- data/docs/A1099/V2/Form1042S.md +83 -83
- data/docs/A1099/V2/Form1095B.md +72 -62
- data/docs/A1099/V2/Form1095C.md +112 -0
- data/docs/A1099/V2/Form1099Base.md +60 -60
- data/docs/A1099/V2/Form1099Div.md +79 -77
- data/docs/A1099/V2/Form1099Int.md +76 -74
- data/docs/A1099/V2/Form1099K.md +83 -83
- data/docs/A1099/V2/Form1099ListRequest.md +20 -0
- data/docs/A1099/V2/Form1099Misc.md +79 -77
- data/docs/A1099/V2/Form1099Nec.md +64 -64
- data/docs/A1099/V2/Form1099R.md +95 -93
- data/docs/A1099/V2/Forms1099Api.md +45 -41
- data/docs/A1099/V2/FormsW9Api.md +98 -14
- data/docs/A1099/V2/Get1099Form200Response.md +19 -19
- data/docs/A1099/V2/IntermediaryOrFlowThrough.md +11 -11
- data/docs/A1099/V2/IssuerCommand.md +16 -16
- data/docs/A1099/V2/IssuerResponse.md +35 -35
- data/docs/A1099/V2/Issuers1099Api.md +10 -10
- data/docs/A1099/V2/JobResponse.md +56 -0
- data/docs/A1099/V2/JobsApi.md +91 -0
- data/docs/A1099/V2/OfferAndCoverage.md +28 -0
- data/docs/A1099/V2/PaginatedQueryResultModelForm1099Base.md +22 -0
- data/docs/A1099/V2/PrimaryWithholdingAgent.md +4 -4
- data/docs/A1099/V2/StateAndLocalWithholding.md +8 -8
- data/docs/A1099/V2/ValidationError.md +2 -2
- data/docs/A1099/V2/W4FormMinimalRequest.md +30 -0
- data/docs/A1099/V2/W4FormRequest.md +6 -6
- data/docs/A1099/V2/W8BenEFormMinimalRequest.md +28 -0
- data/docs/A1099/V2/W8BenEFormRequest.md +6 -6
- data/docs/A1099/V2/W8BenFormMinimalRequest.md +28 -0
- data/docs/A1099/V2/W8BenFormRequest.md +6 -6
- data/docs/A1099/V2/W8ImyFormMinimalRequest.md +28 -0
- data/docs/A1099/V2/W8ImyFormRequest.md +6 -6
- data/docs/A1099/V2/W9FormBaseMinimalRequest.md +24 -0
- data/docs/A1099/V2/W9FormBaseRequest.md +6 -6
- data/docs/A1099/V2/W9FormBaseResponse.md +3 -3
- data/docs/A1099/V2/W9FormMinimalRequest.md +28 -0
- data/docs/A1099/V2/W9FormRequest.md +6 -6
- data/lib/avalara_sdk/api/A1099/V2/companies_w9_api.rb +27 -27
- data/lib/avalara_sdk/api/A1099/V2/forms1099_api.rb +89 -57
- data/lib/avalara_sdk/api/A1099/V2/forms_w9_api.rb +144 -6
- data/lib/avalara_sdk/api/A1099/V2/issuers1099_api.rb +21 -21
- data/lib/avalara_sdk/api/A1099/V2/{jobs1099_api.rb → jobs_api.rb} +9 -9
- data/lib/avalara_sdk/api/EInvoicing/V1/data_input_fields_api.rb +1 -1
- data/lib/avalara_sdk/api/EInvoicing/V1/documents_api.rb +1 -1
- data/lib/avalara_sdk/api/EInvoicing/V1/interop_api.rb +1 -1
- data/lib/avalara_sdk/api/EInvoicing/V1/mandates_api.rb +1 -1
- data/lib/avalara_sdk/api/EInvoicing/V1/subscriptions_api.rb +1 -1
- data/lib/avalara_sdk/api/EInvoicing/V1/tax_identifiers_api.rb +1 -1
- data/lib/avalara_sdk/api/EInvoicing/V1/trading_partners_api.rb +1 -1
- data/lib/avalara_sdk/models/A1099/V2/company_create_update_request_model.rb +58 -17
- data/lib/avalara_sdk/models/A1099/V2/company_response.rb +110 -69
- data/lib/avalara_sdk/models/A1099/V2/{covered_individual_request.rb → covered_individual.rb} +36 -7
- data/lib/avalara_sdk/models/A1099/V2/{i_create_form1099_request.rb → create_and_send_w9_form_email_request.rb} +6 -5
- data/lib/avalara_sdk/models/A1099/V2/{error_response_errors_inner.rb → create_company_request.rb} +3 -3
- data/lib/avalara_sdk/models/A1099/V2/{i_update_form1099_request.rb → create_issuer_request.rb} +3 -5
- data/lib/avalara_sdk/models/A1099/V2/{status_detail.rb → entry_status_response.rb} +20 -18
- data/lib/avalara_sdk/models/A1099/V2/form1042_s.rb +424 -179
- data/lib/avalara_sdk/models/A1099/V2/form1095_b.rb +365 -179
- data/lib/avalara_sdk/models/A1099/V2/{form1095_b_response.rb → form1095_c.rb} +259 -111
- data/lib/avalara_sdk/models/A1099/V2/form1099_base.rb +286 -177
- data/lib/avalara_sdk/models/A1099/V2/form1099_div.rb +310 -171
- data/lib/avalara_sdk/models/A1099/V2/form1099_int.rb +308 -174
- data/lib/avalara_sdk/models/A1099/V2/form1099_k.rb +298 -186
- data/lib/avalara_sdk/models/A1099/V2/{form1099_div_list.rb → form1099_list_request.rb} +49 -22
- data/lib/avalara_sdk/models/A1099/V2/form1099_misc.rb +337 -201
- data/lib/avalara_sdk/models/A1099/V2/form1099_nec.rb +298 -183
- data/lib/avalara_sdk/models/A1099/V2/form1099_r.rb +414 -274
- data/lib/avalara_sdk/models/A1099/V2/get1099_form200_response.rb +9 -9
- data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through.rb +13 -1
- data/lib/avalara_sdk/models/A1099/V2/issuer_command.rb +42 -23
- data/lib/avalara_sdk/models/A1099/V2/issuer_response.rb +77 -46
- data/lib/avalara_sdk/models/A1099/V2/{job_result.rb → job_response.rb} +108 -42
- data/lib/avalara_sdk/models/A1099/V2/{offer_and_coverage_request.rb → offer_and_coverage.rb} +79 -9
- data/lib/avalara_sdk/models/A1099/V2/{paginated_query_result_model.rb → paginated_query_result_model_form1099_base.rb} +4 -4
- data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent.rb +23 -16
- data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding.rb +8 -0
- data/lib/avalara_sdk/models/A1099/V2/validation_error.rb +2 -0
- data/lib/avalara_sdk/models/A1099/V2/w4_form_minimal_request.rb +418 -0
- data/lib/avalara_sdk/models/A1099/V2/w4_form_request.rb +53 -27
- data/lib/avalara_sdk/models/A1099/V2/{company_model.rb → w8_ben_e_form_minimal_request.rb} +139 -170
- data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_request.rb +53 -27
- data/lib/avalara_sdk/models/A1099/V2/{base_company_model.rb → w8_ben_form_minimal_request.rb} +148 -122
- data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_request.rb +53 -27
- data/lib/avalara_sdk/models/A1099/V2/{attribute.rb → w8_imy_form_minimal_request.rb} +135 -132
- data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_request.rb +53 -27
- data/lib/avalara_sdk/models/A1099/V2/{http_validation_problem_details.rb → w9_form_base_minimal_request.rb} +87 -53
- data/lib/avalara_sdk/models/A1099/V2/w9_form_base_request.rb +60 -27
- data/lib/avalara_sdk/models/A1099/V2/w9_form_base_response.rb +14 -14
- data/lib/avalara_sdk/models/A1099/V2/{company_response_model.rb → w9_form_minimal_request.rb} +140 -148
- data/lib/avalara_sdk/models/A1099/V2/w9_form_request.rb +53 -27
- data/lib/avalara_sdk/version.rb +1 -1
- data/lib/avalara_sdk.rb +22 -105
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/byebug-11.1.3/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debase-0.2.9/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.10.0/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/erb-5.0.1/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/io-console-0.8.0/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.12.2/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/prism-1.4.0/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
- data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
- metadata +37 -103
- data/lib/avalara_sdk/models/A1099/V2/base_form_list_request.rb +0 -210
- data/lib/avalara_sdk/models/A1099/V2/bulk_upsert1099_forms_request.rb +0 -108
- data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference.rb +0 -403
- data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference_response.rb +0 -407
- data/lib/avalara_sdk/models/A1099/V2/create1099_form201_response.rb +0 -108
- data/lib/avalara_sdk/models/A1099/V2/data.rb +0 -237
- data/lib/avalara_sdk/models/A1099/V2/form1042_s_list.rb +0 -238
- data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item.rb +0 -816
- data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item_response.rb +0 -980
- data/lib/avalara_sdk/models/A1099/V2/form1042_s_request.rb +0 -778
- data/lib/avalara_sdk/models/A1099/V2/form1042_s_response.rb +0 -619
- data/lib/avalara_sdk/models/A1099/V2/form1095_b_list.rb +0 -238
- data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item.rb +0 -606
- data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item_response.rb +0 -765
- data/lib/avalara_sdk/models/A1099/V2/form1095_b_request.rb +0 -627
- data/lib/avalara_sdk/models/A1099/V2/form1095_c_list.rb +0 -238
- data/lib/avalara_sdk/models/A1099/V2/form1095_c_list_item.rb +0 -662
- data/lib/avalara_sdk/models/A1099/V2/form1099_base_response.rb +0 -726
- data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item.rb +0 -747
- data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item_response.rb +0 -931
- data/lib/avalara_sdk/models/A1099/V2/form1099_div_request.rb +0 -729
- data/lib/avalara_sdk/models/A1099/V2/form1099_div_response.rb +0 -790
- data/lib/avalara_sdk/models/A1099/V2/form1099_int_list.rb +0 -238
- data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item.rb +0 -702
- data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item_response.rb +0 -887
- data/lib/avalara_sdk/models/A1099/V2/form1099_int_request.rb +0 -684
- data/lib/avalara_sdk/models/A1099/V2/form1099_int_response.rb +0 -773
- data/lib/avalara_sdk/models/A1099/V2/form1099_k_list.rb +0 -238
- data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item.rb +0 -788
- data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item_response.rb +0 -995
- data/lib/avalara_sdk/models/A1099/V2/form1099_k_request.rb +0 -770
- data/lib/avalara_sdk/models/A1099/V2/form1099_k_response.rb +0 -839
- data/lib/avalara_sdk/models/A1099/V2/form1099_list.rb +0 -219
- data/lib/avalara_sdk/models/A1099/V2/form1099_list_data_inner.rb +0 -55
- data/lib/avalara_sdk/models/A1099/V2/form1099_list_response.rb +0 -220
- data/lib/avalara_sdk/models/A1099/V2/form1099_list_response_value_inner.rb +0 -108
- data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list.rb +0 -238
- data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item.rb +0 -688
- data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item_response.rb +0 -886
- data/lib/avalara_sdk/models/A1099/V2/form1099_misc_request.rb +0 -670
- data/lib/avalara_sdk/models/A1099/V2/form1099_misc_response.rb +0 -754
- data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list.rb +0 -238
- data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item.rb +0 -586
- data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item_response.rb +0 -765
- data/lib/avalara_sdk/models/A1099/V2/form1099_nec_request.rb +0 -567
- data/lib/avalara_sdk/models/A1099/V2/form1099_nec_response.rb +0 -646
- data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result.rb +0 -228
- data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result_processed_forms_inner.rb +0 -107
- data/lib/avalara_sdk/models/A1099/V2/form1099_r_list.rb +0 -238
- data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item.rb +0 -763
- data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item_response.rb +0 -942
- data/lib/avalara_sdk/models/A1099/V2/form1099_r_request.rb +0 -720
- data/lib/avalara_sdk/models/A1099/V2/form1099_r_response.rb +0 -839
- data/lib/avalara_sdk/models/A1099/V2/form1099_status_detail_response.rb +0 -223
- data/lib/avalara_sdk/models/A1099/V2/form_request_base.rb +0 -502
- data/lib/avalara_sdk/models/A1099/V2/form_request_csv_base.rb +0 -475
- data/lib/avalara_sdk/models/A1099/V2/form_request_list_item_base.rb +0 -548
- data/lib/avalara_sdk/models/A1099/V2/form_request_model.rb +0 -345
- data/lib/avalara_sdk/models/A1099/V2/form_response_base.rb +0 -612
- data/lib/avalara_sdk/models/A1099/V2/form_single_request_base.rb +0 -530
- data/lib/avalara_sdk/models/A1099/V2/included_base.rb +0 -219
- data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through_request.rb +0 -311
- data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through_response.rb +0 -311
- data/lib/avalara_sdk/models/A1099/V2/link.rb +0 -210
- data/lib/avalara_sdk/models/A1099/V2/paginated_w9_forms_model.rb +0 -231
- data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_request.rb +0 -221
- data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_response.rb +0 -221
- data/lib/avalara_sdk/models/A1099/V2/problem_details.rb +0 -251
- data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_request.rb +0 -278
- data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_response.rb +0 -282
- data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_app.rb +0 -231
- data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_response.rb +0 -231
- data/lib/avalara_sdk/models/A1099/V2/update1099_form200_response.rb +0 -108
- data/lib/avalara_sdk/models/A1099/V2/validation_error_app.rb +0 -229
- data/lib/avalara_sdk/models/A1099/V2/validation_error_response.rb +0 -231
- data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response.rb +0 -233
- data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner.rb +0 -274
- data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_addresses_inner.rb +0 -251
- data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_identifiers_inner.rb +0 -221
- data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_supported_document_types_inner.rb +0 -241
- data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request.rb +0 -224
- data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_data_inner.rb +0 -237
- data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_metadata.rb +0 -288
- data/lib/avalara_sdk/models/EInvoicing/V1/submit_document_data.rb +0 -216
@@ -1,702 +0,0 @@
|
|
1
|
-
=begin
|
2
|
-
#Avalara 1099 & W-9 API Definition
|
3
|
-
|
4
|
-
### 🔐 Authentication Generate a **license key** from: *[Avalara Portal](https://www.avalara.com/us/en/signin.html) → Settings → License and API Keys*. [More on authentication methods](https://developer.avalara.com/avatax-dm-combined-erp/common-setup/authentication/authentication-methods/) [Test your credentials](https://developer.avalara.com/avatax/test-credentials/) ## 📘 API & SDK Documentation [Avalara SDK (.NET) on GitHub](https://github.com/avadev/Avalara-SDK-DotNet#avalarasdk--the-unified-c-library-for-next-gen-avalara-services) [Code Examples – 1099 API](https://github.com/avadev/Avalara-SDK-DotNet/blob/main/docs/A1099/V2/Class1099IssuersApi.md#call1099issuersget)
|
5
|
-
|
6
|
-
|
7
|
-
=end
|
8
|
-
|
9
|
-
require 'date'
|
10
|
-
require 'time'
|
11
|
-
|
12
|
-
module AvalaraSdk::A1099::V2
|
13
|
-
class Form1099IntListItem
|
14
|
-
# Interest Income
|
15
|
-
attr_accessor :interest_income
|
16
|
-
|
17
|
-
# Early Withdrawal Penalty
|
18
|
-
attr_accessor :early_withdrawal_penalty
|
19
|
-
|
20
|
-
# Interest on U.S. Savings Bonds and Treasury obligations
|
21
|
-
attr_accessor :us_savings_bonds_interest
|
22
|
-
|
23
|
-
# Federal income tax withheld
|
24
|
-
attr_accessor :federal_income_tax_withheld
|
25
|
-
|
26
|
-
# Investment Expenses
|
27
|
-
attr_accessor :investment_expenses
|
28
|
-
|
29
|
-
# Foreign tax paid
|
30
|
-
attr_accessor :foreign_tax_paid
|
31
|
-
|
32
|
-
# Foreign country or U.S. possession
|
33
|
-
attr_accessor :foreign_country
|
34
|
-
|
35
|
-
# Tax-Exempt Interest
|
36
|
-
attr_accessor :tax_exempt_interest
|
37
|
-
|
38
|
-
# Specified Private activity
|
39
|
-
attr_accessor :specified_private_activity_bond_interest
|
40
|
-
|
41
|
-
# Market Discount
|
42
|
-
attr_accessor :market_discount
|
43
|
-
|
44
|
-
# Bond Premium
|
45
|
-
attr_accessor :bond_premium
|
46
|
-
|
47
|
-
# Bond Premium on Treasury obligations
|
48
|
-
attr_accessor :bond_premium_on_treasury_obligations
|
49
|
-
|
50
|
-
# Bond Premium on tax exempt bond
|
51
|
-
attr_accessor :bond_premium_on_tax_exempt_bond
|
52
|
-
|
53
|
-
# Tax exempt bond CUSIP no.
|
54
|
-
attr_accessor :tax_exempt_bond_cusip_number
|
55
|
-
|
56
|
-
# Issuer Reference ID. One of `issuerReferenceId` or `issuerTin` is required.
|
57
|
-
attr_accessor :issuer_reference_id
|
58
|
-
|
59
|
-
# Issuer TIN. One of `issuerReferenceId` or `issuerTin` is required.
|
60
|
-
attr_accessor :issuer_tin
|
61
|
-
|
62
|
-
# Tax year
|
63
|
-
attr_accessor :tax_year
|
64
|
-
|
65
|
-
# Issuer ID
|
66
|
-
attr_accessor :issuer_id
|
67
|
-
|
68
|
-
# Reference ID
|
69
|
-
attr_accessor :reference_id
|
70
|
-
|
71
|
-
# Recipient Tax ID Number
|
72
|
-
attr_accessor :recipient_tin
|
73
|
-
|
74
|
-
# Recipient name
|
75
|
-
attr_accessor :recipient_name
|
76
|
-
|
77
|
-
# Type of TIN (Tax ID Number). Will be one of: * SSN * EIN * ITIN * ATIN
|
78
|
-
attr_accessor :tin_type
|
79
|
-
|
80
|
-
# Recipient second name
|
81
|
-
attr_accessor :recipient_second_name
|
82
|
-
|
83
|
-
# Address
|
84
|
-
attr_accessor :address
|
85
|
-
|
86
|
-
# Address line 2
|
87
|
-
attr_accessor :address2
|
88
|
-
|
89
|
-
# City
|
90
|
-
attr_accessor :city
|
91
|
-
|
92
|
-
# US state. Required if CountryCode is \"US\".
|
93
|
-
attr_accessor :state
|
94
|
-
|
95
|
-
# Zip/postal code
|
96
|
-
attr_accessor :zip
|
97
|
-
|
98
|
-
# Recipient email address
|
99
|
-
attr_accessor :email
|
100
|
-
|
101
|
-
# Account number
|
102
|
-
attr_accessor :account_number
|
103
|
-
|
104
|
-
# Office code
|
105
|
-
attr_accessor :office_code
|
106
|
-
|
107
|
-
# Foreign province
|
108
|
-
attr_accessor :non_us_province
|
109
|
-
|
110
|
-
# Country code, as defined at https://www.irs.gov/e-file-providers/country-codes
|
111
|
-
attr_accessor :country_code
|
112
|
-
|
113
|
-
# Boolean indicating that federal e-filing should be scheduled for this form
|
114
|
-
attr_accessor :federal_e_file
|
115
|
-
|
116
|
-
# Boolean indicating that postal mailing to the recipient should be scheduled for this form
|
117
|
-
attr_accessor :postal_mail
|
118
|
-
|
119
|
-
# Boolean indicating that state e-filing should be scheduled for this form
|
120
|
-
attr_accessor :state_e_file
|
121
|
-
|
122
|
-
# Boolean indicating that TIN Matching should be scheduled for this form
|
123
|
-
attr_accessor :tin_match
|
124
|
-
|
125
|
-
# Indicates whether the recipient has no TIN
|
126
|
-
attr_accessor :no_tin
|
127
|
-
|
128
|
-
# Second TIN notice in three years
|
129
|
-
attr_accessor :second_tin_notice
|
130
|
-
|
131
|
-
# Fatca filing requirement
|
132
|
-
attr_accessor :fatca_filing_requirement
|
133
|
-
|
134
|
-
# Boolean indicating that address verification should be scheduled for this form
|
135
|
-
attr_accessor :address_verification
|
136
|
-
|
137
|
-
# State and local withholding information
|
138
|
-
attr_accessor :state_and_local_withholding
|
139
|
-
|
140
|
-
class EnumAttributeValidator
|
141
|
-
attr_reader :datatype
|
142
|
-
attr_reader :allowable_values
|
143
|
-
|
144
|
-
def initialize(datatype, allowable_values)
|
145
|
-
@allowable_values = allowable_values.map do |value|
|
146
|
-
case datatype.to_s
|
147
|
-
when /Integer/i
|
148
|
-
value.to_i
|
149
|
-
when /Float/i
|
150
|
-
value.to_f
|
151
|
-
else
|
152
|
-
value
|
153
|
-
end
|
154
|
-
end
|
155
|
-
end
|
156
|
-
|
157
|
-
def valid?(value)
|
158
|
-
!value || allowable_values.include?(value)
|
159
|
-
end
|
160
|
-
end
|
161
|
-
|
162
|
-
# Attribute mapping from ruby-style variable name to JSON key.
|
163
|
-
def self.attribute_map
|
164
|
-
{
|
165
|
-
:'interest_income' => :'interestIncome',
|
166
|
-
:'early_withdrawal_penalty' => :'earlyWithdrawalPenalty',
|
167
|
-
:'us_savings_bonds_interest' => :'usSavingsBondsInterest',
|
168
|
-
:'federal_income_tax_withheld' => :'federalIncomeTaxWithheld',
|
169
|
-
:'investment_expenses' => :'investmentExpenses',
|
170
|
-
:'foreign_tax_paid' => :'foreignTaxPaid',
|
171
|
-
:'foreign_country' => :'foreignCountry',
|
172
|
-
:'tax_exempt_interest' => :'taxExemptInterest',
|
173
|
-
:'specified_private_activity_bond_interest' => :'specifiedPrivateActivityBondInterest',
|
174
|
-
:'market_discount' => :'marketDiscount',
|
175
|
-
:'bond_premium' => :'bondPremium',
|
176
|
-
:'bond_premium_on_treasury_obligations' => :'bondPremiumOnTreasuryObligations',
|
177
|
-
:'bond_premium_on_tax_exempt_bond' => :'bondPremiumOnTaxExemptBond',
|
178
|
-
:'tax_exempt_bond_cusip_number' => :'taxExemptBondCusipNumber',
|
179
|
-
:'issuer_reference_id' => :'issuerReferenceId',
|
180
|
-
:'issuer_tin' => :'issuerTin',
|
181
|
-
:'tax_year' => :'taxYear',
|
182
|
-
:'issuer_id' => :'issuerId',
|
183
|
-
:'reference_id' => :'referenceId',
|
184
|
-
:'recipient_tin' => :'recipientTin',
|
185
|
-
:'recipient_name' => :'recipientName',
|
186
|
-
:'tin_type' => :'tinType',
|
187
|
-
:'recipient_second_name' => :'recipientSecondName',
|
188
|
-
:'address' => :'address',
|
189
|
-
:'address2' => :'address2',
|
190
|
-
:'city' => :'city',
|
191
|
-
:'state' => :'state',
|
192
|
-
:'zip' => :'zip',
|
193
|
-
:'email' => :'email',
|
194
|
-
:'account_number' => :'accountNumber',
|
195
|
-
:'office_code' => :'officeCode',
|
196
|
-
:'non_us_province' => :'nonUsProvince',
|
197
|
-
:'country_code' => :'countryCode',
|
198
|
-
:'federal_e_file' => :'federalEFile',
|
199
|
-
:'postal_mail' => :'postalMail',
|
200
|
-
:'state_e_file' => :'stateEFile',
|
201
|
-
:'tin_match' => :'tinMatch',
|
202
|
-
:'no_tin' => :'noTin',
|
203
|
-
:'second_tin_notice' => :'secondTinNotice',
|
204
|
-
:'fatca_filing_requirement' => :'fatcaFilingRequirement',
|
205
|
-
:'address_verification' => :'addressVerification',
|
206
|
-
:'state_and_local_withholding' => :'stateAndLocalWithholding'
|
207
|
-
}
|
208
|
-
end
|
209
|
-
|
210
|
-
# Returns all the JSON keys this model knows about
|
211
|
-
def self.acceptable_attributes
|
212
|
-
attribute_map.values
|
213
|
-
end
|
214
|
-
|
215
|
-
# Attribute type mapping.
|
216
|
-
def self.openapi_types
|
217
|
-
{
|
218
|
-
:'interest_income' => :'Float',
|
219
|
-
:'early_withdrawal_penalty' => :'Float',
|
220
|
-
:'us_savings_bonds_interest' => :'Float',
|
221
|
-
:'federal_income_tax_withheld' => :'Float',
|
222
|
-
:'investment_expenses' => :'Float',
|
223
|
-
:'foreign_tax_paid' => :'Float',
|
224
|
-
:'foreign_country' => :'String',
|
225
|
-
:'tax_exempt_interest' => :'Float',
|
226
|
-
:'specified_private_activity_bond_interest' => :'Float',
|
227
|
-
:'market_discount' => :'Float',
|
228
|
-
:'bond_premium' => :'Float',
|
229
|
-
:'bond_premium_on_treasury_obligations' => :'Float',
|
230
|
-
:'bond_premium_on_tax_exempt_bond' => :'Float',
|
231
|
-
:'tax_exempt_bond_cusip_number' => :'String',
|
232
|
-
:'issuer_reference_id' => :'String',
|
233
|
-
:'issuer_tin' => :'String',
|
234
|
-
:'tax_year' => :'Integer',
|
235
|
-
:'issuer_id' => :'String',
|
236
|
-
:'reference_id' => :'String',
|
237
|
-
:'recipient_tin' => :'String',
|
238
|
-
:'recipient_name' => :'String',
|
239
|
-
:'tin_type' => :'String',
|
240
|
-
:'recipient_second_name' => :'String',
|
241
|
-
:'address' => :'String',
|
242
|
-
:'address2' => :'String',
|
243
|
-
:'city' => :'String',
|
244
|
-
:'state' => :'String',
|
245
|
-
:'zip' => :'String',
|
246
|
-
:'email' => :'String',
|
247
|
-
:'account_number' => :'String',
|
248
|
-
:'office_code' => :'String',
|
249
|
-
:'non_us_province' => :'String',
|
250
|
-
:'country_code' => :'String',
|
251
|
-
:'federal_e_file' => :'Boolean',
|
252
|
-
:'postal_mail' => :'Boolean',
|
253
|
-
:'state_e_file' => :'Boolean',
|
254
|
-
:'tin_match' => :'Boolean',
|
255
|
-
:'no_tin' => :'Boolean',
|
256
|
-
:'second_tin_notice' => :'Boolean',
|
257
|
-
:'fatca_filing_requirement' => :'Boolean',
|
258
|
-
:'address_verification' => :'Boolean',
|
259
|
-
:'state_and_local_withholding' => :'StateAndLocalWithholdingRequest'
|
260
|
-
}
|
261
|
-
end
|
262
|
-
|
263
|
-
# List of attributes with nullable: true
|
264
|
-
def self.openapi_nullable
|
265
|
-
Set.new([
|
266
|
-
:'interest_income',
|
267
|
-
:'early_withdrawal_penalty',
|
268
|
-
:'us_savings_bonds_interest',
|
269
|
-
:'federal_income_tax_withheld',
|
270
|
-
:'investment_expenses',
|
271
|
-
:'foreign_tax_paid',
|
272
|
-
:'foreign_country',
|
273
|
-
:'tax_exempt_interest',
|
274
|
-
:'specified_private_activity_bond_interest',
|
275
|
-
:'market_discount',
|
276
|
-
:'bond_premium',
|
277
|
-
:'bond_premium_on_treasury_obligations',
|
278
|
-
:'bond_premium_on_tax_exempt_bond',
|
279
|
-
:'tax_exempt_bond_cusip_number',
|
280
|
-
:'issuer_reference_id',
|
281
|
-
:'issuer_tin',
|
282
|
-
:'issuer_id',
|
283
|
-
:'reference_id',
|
284
|
-
:'recipient_tin',
|
285
|
-
:'recipient_name',
|
286
|
-
:'recipient_second_name',
|
287
|
-
:'address',
|
288
|
-
:'address2',
|
289
|
-
:'city',
|
290
|
-
:'state',
|
291
|
-
:'zip',
|
292
|
-
:'email',
|
293
|
-
:'account_number',
|
294
|
-
:'office_code',
|
295
|
-
:'non_us_province',
|
296
|
-
:'country_code',
|
297
|
-
:'second_tin_notice',
|
298
|
-
:'state_and_local_withholding'
|
299
|
-
])
|
300
|
-
end
|
301
|
-
|
302
|
-
# List of class defined in allOf (OpenAPI v3)
|
303
|
-
def self.openapi_all_of
|
304
|
-
[
|
305
|
-
:'FormRequestListItemBase'
|
306
|
-
]
|
307
|
-
end
|
308
|
-
|
309
|
-
# Initializes the object
|
310
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
311
|
-
def initialize(attributes = {})
|
312
|
-
if (!attributes.is_a?(Hash))
|
313
|
-
fail ArgumentError, "The input argument (attributes) must be a hash in `AvalaraSdk::A1099::V2::Form1099IntListItem` initialize method"
|
314
|
-
end
|
315
|
-
|
316
|
-
# check to see if the attribute exists and convert string to symbol for hash key
|
317
|
-
attributes = attributes.each_with_object({}) { |(k, v), h|
|
318
|
-
if (!self.class.attribute_map.key?(k.to_sym))
|
319
|
-
fail ArgumentError, "`#{k}` is not a valid attribute in `AvalaraSdk::A1099::V2::Form1099IntListItem`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
320
|
-
end
|
321
|
-
h[k.to_sym] = v
|
322
|
-
}
|
323
|
-
|
324
|
-
if attributes.key?(:'interest_income')
|
325
|
-
self.interest_income = attributes[:'interest_income']
|
326
|
-
end
|
327
|
-
|
328
|
-
if attributes.key?(:'early_withdrawal_penalty')
|
329
|
-
self.early_withdrawal_penalty = attributes[:'early_withdrawal_penalty']
|
330
|
-
end
|
331
|
-
|
332
|
-
if attributes.key?(:'us_savings_bonds_interest')
|
333
|
-
self.us_savings_bonds_interest = attributes[:'us_savings_bonds_interest']
|
334
|
-
end
|
335
|
-
|
336
|
-
if attributes.key?(:'federal_income_tax_withheld')
|
337
|
-
self.federal_income_tax_withheld = attributes[:'federal_income_tax_withheld']
|
338
|
-
end
|
339
|
-
|
340
|
-
if attributes.key?(:'investment_expenses')
|
341
|
-
self.investment_expenses = attributes[:'investment_expenses']
|
342
|
-
end
|
343
|
-
|
344
|
-
if attributes.key?(:'foreign_tax_paid')
|
345
|
-
self.foreign_tax_paid = attributes[:'foreign_tax_paid']
|
346
|
-
end
|
347
|
-
|
348
|
-
if attributes.key?(:'foreign_country')
|
349
|
-
self.foreign_country = attributes[:'foreign_country']
|
350
|
-
end
|
351
|
-
|
352
|
-
if attributes.key?(:'tax_exempt_interest')
|
353
|
-
self.tax_exempt_interest = attributes[:'tax_exempt_interest']
|
354
|
-
end
|
355
|
-
|
356
|
-
if attributes.key?(:'specified_private_activity_bond_interest')
|
357
|
-
self.specified_private_activity_bond_interest = attributes[:'specified_private_activity_bond_interest']
|
358
|
-
end
|
359
|
-
|
360
|
-
if attributes.key?(:'market_discount')
|
361
|
-
self.market_discount = attributes[:'market_discount']
|
362
|
-
end
|
363
|
-
|
364
|
-
if attributes.key?(:'bond_premium')
|
365
|
-
self.bond_premium = attributes[:'bond_premium']
|
366
|
-
end
|
367
|
-
|
368
|
-
if attributes.key?(:'bond_premium_on_treasury_obligations')
|
369
|
-
self.bond_premium_on_treasury_obligations = attributes[:'bond_premium_on_treasury_obligations']
|
370
|
-
end
|
371
|
-
|
372
|
-
if attributes.key?(:'bond_premium_on_tax_exempt_bond')
|
373
|
-
self.bond_premium_on_tax_exempt_bond = attributes[:'bond_premium_on_tax_exempt_bond']
|
374
|
-
end
|
375
|
-
|
376
|
-
if attributes.key?(:'tax_exempt_bond_cusip_number')
|
377
|
-
self.tax_exempt_bond_cusip_number = attributes[:'tax_exempt_bond_cusip_number']
|
378
|
-
end
|
379
|
-
|
380
|
-
if attributes.key?(:'issuer_reference_id')
|
381
|
-
self.issuer_reference_id = attributes[:'issuer_reference_id']
|
382
|
-
end
|
383
|
-
|
384
|
-
if attributes.key?(:'issuer_tin')
|
385
|
-
self.issuer_tin = attributes[:'issuer_tin']
|
386
|
-
end
|
387
|
-
|
388
|
-
if attributes.key?(:'tax_year')
|
389
|
-
self.tax_year = attributes[:'tax_year']
|
390
|
-
else
|
391
|
-
self.tax_year = nil
|
392
|
-
end
|
393
|
-
|
394
|
-
if attributes.key?(:'issuer_id')
|
395
|
-
self.issuer_id = attributes[:'issuer_id']
|
396
|
-
end
|
397
|
-
|
398
|
-
if attributes.key?(:'reference_id')
|
399
|
-
self.reference_id = attributes[:'reference_id']
|
400
|
-
end
|
401
|
-
|
402
|
-
if attributes.key?(:'recipient_tin')
|
403
|
-
self.recipient_tin = attributes[:'recipient_tin']
|
404
|
-
end
|
405
|
-
|
406
|
-
if attributes.key?(:'recipient_name')
|
407
|
-
self.recipient_name = attributes[:'recipient_name']
|
408
|
-
end
|
409
|
-
|
410
|
-
if attributes.key?(:'tin_type')
|
411
|
-
self.tin_type = attributes[:'tin_type']
|
412
|
-
end
|
413
|
-
|
414
|
-
if attributes.key?(:'recipient_second_name')
|
415
|
-
self.recipient_second_name = attributes[:'recipient_second_name']
|
416
|
-
end
|
417
|
-
|
418
|
-
if attributes.key?(:'address')
|
419
|
-
self.address = attributes[:'address']
|
420
|
-
end
|
421
|
-
|
422
|
-
if attributes.key?(:'address2')
|
423
|
-
self.address2 = attributes[:'address2']
|
424
|
-
end
|
425
|
-
|
426
|
-
if attributes.key?(:'city')
|
427
|
-
self.city = attributes[:'city']
|
428
|
-
end
|
429
|
-
|
430
|
-
if attributes.key?(:'state')
|
431
|
-
self.state = attributes[:'state']
|
432
|
-
end
|
433
|
-
|
434
|
-
if attributes.key?(:'zip')
|
435
|
-
self.zip = attributes[:'zip']
|
436
|
-
end
|
437
|
-
|
438
|
-
if attributes.key?(:'email')
|
439
|
-
self.email = attributes[:'email']
|
440
|
-
end
|
441
|
-
|
442
|
-
if attributes.key?(:'account_number')
|
443
|
-
self.account_number = attributes[:'account_number']
|
444
|
-
end
|
445
|
-
|
446
|
-
if attributes.key?(:'office_code')
|
447
|
-
self.office_code = attributes[:'office_code']
|
448
|
-
end
|
449
|
-
|
450
|
-
if attributes.key?(:'non_us_province')
|
451
|
-
self.non_us_province = attributes[:'non_us_province']
|
452
|
-
end
|
453
|
-
|
454
|
-
if attributes.key?(:'country_code')
|
455
|
-
self.country_code = attributes[:'country_code']
|
456
|
-
end
|
457
|
-
|
458
|
-
if attributes.key?(:'federal_e_file')
|
459
|
-
self.federal_e_file = attributes[:'federal_e_file']
|
460
|
-
end
|
461
|
-
|
462
|
-
if attributes.key?(:'postal_mail')
|
463
|
-
self.postal_mail = attributes[:'postal_mail']
|
464
|
-
end
|
465
|
-
|
466
|
-
if attributes.key?(:'state_e_file')
|
467
|
-
self.state_e_file = attributes[:'state_e_file']
|
468
|
-
end
|
469
|
-
|
470
|
-
if attributes.key?(:'tin_match')
|
471
|
-
self.tin_match = attributes[:'tin_match']
|
472
|
-
end
|
473
|
-
|
474
|
-
if attributes.key?(:'no_tin')
|
475
|
-
self.no_tin = attributes[:'no_tin']
|
476
|
-
end
|
477
|
-
|
478
|
-
if attributes.key?(:'second_tin_notice')
|
479
|
-
self.second_tin_notice = attributes[:'second_tin_notice']
|
480
|
-
end
|
481
|
-
|
482
|
-
if attributes.key?(:'fatca_filing_requirement')
|
483
|
-
self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
|
484
|
-
end
|
485
|
-
|
486
|
-
if attributes.key?(:'address_verification')
|
487
|
-
self.address_verification = attributes[:'address_verification']
|
488
|
-
end
|
489
|
-
|
490
|
-
if attributes.key?(:'state_and_local_withholding')
|
491
|
-
self.state_and_local_withholding = attributes[:'state_and_local_withholding']
|
492
|
-
end
|
493
|
-
end
|
494
|
-
|
495
|
-
# Show invalid properties with the reasons. Usually used together with valid?
|
496
|
-
# @return Array for valid properties with the reasons
|
497
|
-
def list_invalid_properties
|
498
|
-
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
499
|
-
invalid_properties = Array.new
|
500
|
-
if @tax_year.nil?
|
501
|
-
invalid_properties.push('invalid value for "tax_year", tax_year cannot be nil.')
|
502
|
-
end
|
503
|
-
|
504
|
-
invalid_properties
|
505
|
-
end
|
506
|
-
|
507
|
-
# Check to see if the all the properties in the model are valid
|
508
|
-
# @return true if the model is valid
|
509
|
-
def valid?
|
510
|
-
warn '[DEPRECATED] the `valid?` method is obsolete'
|
511
|
-
return false if @tax_year.nil?
|
512
|
-
tin_type_validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
|
513
|
-
return false unless tin_type_validator.valid?(@tin_type)
|
514
|
-
true
|
515
|
-
end
|
516
|
-
|
517
|
-
# Custom attribute writer method checking allowed values (enum).
|
518
|
-
# @param [Object] tin_type Object to be assigned
|
519
|
-
def tin_type=(tin_type)
|
520
|
-
validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
|
521
|
-
unless validator.valid?(tin_type)
|
522
|
-
fail ArgumentError, "invalid value for \"tin_type\", must be one of #{validator.allowable_values}."
|
523
|
-
end
|
524
|
-
@tin_type = tin_type
|
525
|
-
end
|
526
|
-
|
527
|
-
# Checks equality by comparing each attribute.
|
528
|
-
# @param [Object] Object to be compared
|
529
|
-
def ==(o)
|
530
|
-
return true if self.equal?(o)
|
531
|
-
self.class == o.class &&
|
532
|
-
interest_income == o.interest_income &&
|
533
|
-
early_withdrawal_penalty == o.early_withdrawal_penalty &&
|
534
|
-
us_savings_bonds_interest == o.us_savings_bonds_interest &&
|
535
|
-
federal_income_tax_withheld == o.federal_income_tax_withheld &&
|
536
|
-
investment_expenses == o.investment_expenses &&
|
537
|
-
foreign_tax_paid == o.foreign_tax_paid &&
|
538
|
-
foreign_country == o.foreign_country &&
|
539
|
-
tax_exempt_interest == o.tax_exempt_interest &&
|
540
|
-
specified_private_activity_bond_interest == o.specified_private_activity_bond_interest &&
|
541
|
-
market_discount == o.market_discount &&
|
542
|
-
bond_premium == o.bond_premium &&
|
543
|
-
bond_premium_on_treasury_obligations == o.bond_premium_on_treasury_obligations &&
|
544
|
-
bond_premium_on_tax_exempt_bond == o.bond_premium_on_tax_exempt_bond &&
|
545
|
-
tax_exempt_bond_cusip_number == o.tax_exempt_bond_cusip_number &&
|
546
|
-
issuer_reference_id == o.issuer_reference_id &&
|
547
|
-
issuer_tin == o.issuer_tin &&
|
548
|
-
tax_year == o.tax_year &&
|
549
|
-
issuer_id == o.issuer_id &&
|
550
|
-
reference_id == o.reference_id &&
|
551
|
-
recipient_tin == o.recipient_tin &&
|
552
|
-
recipient_name == o.recipient_name &&
|
553
|
-
tin_type == o.tin_type &&
|
554
|
-
recipient_second_name == o.recipient_second_name &&
|
555
|
-
address == o.address &&
|
556
|
-
address2 == o.address2 &&
|
557
|
-
city == o.city &&
|
558
|
-
state == o.state &&
|
559
|
-
zip == o.zip &&
|
560
|
-
email == o.email &&
|
561
|
-
account_number == o.account_number &&
|
562
|
-
office_code == o.office_code &&
|
563
|
-
non_us_province == o.non_us_province &&
|
564
|
-
country_code == o.country_code &&
|
565
|
-
federal_e_file == o.federal_e_file &&
|
566
|
-
postal_mail == o.postal_mail &&
|
567
|
-
state_e_file == o.state_e_file &&
|
568
|
-
tin_match == o.tin_match &&
|
569
|
-
no_tin == o.no_tin &&
|
570
|
-
second_tin_notice == o.second_tin_notice &&
|
571
|
-
fatca_filing_requirement == o.fatca_filing_requirement &&
|
572
|
-
address_verification == o.address_verification &&
|
573
|
-
state_and_local_withholding == o.state_and_local_withholding
|
574
|
-
end
|
575
|
-
|
576
|
-
# @see the `==` method
|
577
|
-
# @param [Object] Object to be compared
|
578
|
-
def eql?(o)
|
579
|
-
self == o
|
580
|
-
end
|
581
|
-
|
582
|
-
# Calculates hash code according to all attributes.
|
583
|
-
# @return [Integer] Hash code
|
584
|
-
def hash
|
585
|
-
[interest_income, early_withdrawal_penalty, us_savings_bonds_interest, federal_income_tax_withheld, investment_expenses, foreign_tax_paid, foreign_country, tax_exempt_interest, specified_private_activity_bond_interest, market_discount, bond_premium, bond_premium_on_treasury_obligations, bond_premium_on_tax_exempt_bond, tax_exempt_bond_cusip_number, issuer_reference_id, issuer_tin, tax_year, issuer_id, reference_id, recipient_tin, recipient_name, tin_type, recipient_second_name, address, address2, city, state, zip, email, account_number, office_code, non_us_province, country_code, federal_e_file, postal_mail, state_e_file, tin_match, no_tin, second_tin_notice, fatca_filing_requirement, address_verification, state_and_local_withholding].hash
|
586
|
-
end
|
587
|
-
|
588
|
-
# Builds the object from hash
|
589
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
590
|
-
# @return [Object] Returns the model itself
|
591
|
-
def self.build_from_hash(attributes)
|
592
|
-
return nil unless attributes.is_a?(Hash)
|
593
|
-
attributes = attributes.transform_keys(&:to_sym)
|
594
|
-
transformed_hash = {}
|
595
|
-
openapi_types.each_pair do |key, type|
|
596
|
-
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
597
|
-
transformed_hash["#{key}"] = nil
|
598
|
-
elsif type =~ /\AArray<(.*)>/i
|
599
|
-
# check to ensure the input is an array given that the attribute
|
600
|
-
# is documented as an array but the input is not
|
601
|
-
if attributes[attribute_map[key]].is_a?(Array)
|
602
|
-
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
603
|
-
end
|
604
|
-
elsif !attributes[attribute_map[key]].nil?
|
605
|
-
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
606
|
-
end
|
607
|
-
end
|
608
|
-
new(transformed_hash)
|
609
|
-
end
|
610
|
-
|
611
|
-
# Deserializes the data based on type
|
612
|
-
# @param string type Data type
|
613
|
-
# @param string value Value to be deserialized
|
614
|
-
# @return [Object] Deserialized data
|
615
|
-
def self._deserialize(type, value)
|
616
|
-
case type.to_sym
|
617
|
-
when :Time
|
618
|
-
Time.parse(value)
|
619
|
-
when :Date
|
620
|
-
Date.parse(value)
|
621
|
-
when :String
|
622
|
-
value.to_s
|
623
|
-
when :Integer
|
624
|
-
value.to_i
|
625
|
-
when :Float
|
626
|
-
value.to_f
|
627
|
-
when :Boolean
|
628
|
-
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
629
|
-
true
|
630
|
-
else
|
631
|
-
false
|
632
|
-
end
|
633
|
-
when :Object
|
634
|
-
# generic object (usually a Hash), return directly
|
635
|
-
value
|
636
|
-
when /\AArray<(?<inner_type>.+)>\z/
|
637
|
-
inner_type = Regexp.last_match[:inner_type]
|
638
|
-
value.map { |v| _deserialize(inner_type, v) }
|
639
|
-
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
640
|
-
k_type = Regexp.last_match[:k_type]
|
641
|
-
v_type = Regexp.last_match[:v_type]
|
642
|
-
{}.tap do |hash|
|
643
|
-
value.each do |k, v|
|
644
|
-
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
645
|
-
end
|
646
|
-
end
|
647
|
-
else # model
|
648
|
-
# models (e.g. Pet) or oneOf
|
649
|
-
klass = AvalaraSdk::A1099::V2.const_get(type)
|
650
|
-
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
651
|
-
end
|
652
|
-
end
|
653
|
-
|
654
|
-
# Returns the string representation of the object
|
655
|
-
# @return [String] String presentation of the object
|
656
|
-
def to_s
|
657
|
-
to_hash.to_s
|
658
|
-
end
|
659
|
-
|
660
|
-
# to_body is an alias to to_hash (backward compatibility)
|
661
|
-
# @return [Hash] Returns the object in the form of hash
|
662
|
-
def to_body
|
663
|
-
to_hash
|
664
|
-
end
|
665
|
-
|
666
|
-
# Returns the object in the form of hash
|
667
|
-
# @return [Hash] Returns the object in the form of hash
|
668
|
-
def to_hash
|
669
|
-
hash = {}
|
670
|
-
self.class.attribute_map.each_pair do |attr, param|
|
671
|
-
value = self.send(attr)
|
672
|
-
if value.nil?
|
673
|
-
is_nullable = self.class.openapi_nullable.include?(attr)
|
674
|
-
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
675
|
-
end
|
676
|
-
|
677
|
-
hash[param] = _to_hash(value)
|
678
|
-
end
|
679
|
-
hash
|
680
|
-
end
|
681
|
-
|
682
|
-
# Outputs non-array value in the form of hash
|
683
|
-
# For object, use to_hash. Otherwise, just return the value
|
684
|
-
# @param [Object] value Any valid value
|
685
|
-
# @return [Hash] Returns the value in the form of hash
|
686
|
-
def _to_hash(value)
|
687
|
-
if value.is_a?(Array)
|
688
|
-
value.compact.map { |v| _to_hash(v) }
|
689
|
-
elsif value.is_a?(Hash)
|
690
|
-
{}.tap do |hash|
|
691
|
-
value.each { |k, v| hash[k] = _to_hash(v) }
|
692
|
-
end
|
693
|
-
elsif value.respond_to? :to_hash
|
694
|
-
value.to_hash
|
695
|
-
else
|
696
|
-
value
|
697
|
-
end
|
698
|
-
end
|
699
|
-
|
700
|
-
end
|
701
|
-
|
702
|
-
end
|