avalara_sdk 25.8.2 → 25.9.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.
Files changed (220) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +20 -91
  4. data/docs/A1099/V2/CompaniesW9Api.md +18 -18
  5. data/docs/A1099/V2/CompanyBase.md +50 -0
  6. data/docs/A1099/V2/CompanyCreateUpdateRequestModel.md +18 -18
  7. data/docs/A1099/V2/CompanyRequest.md +50 -0
  8. data/docs/A1099/V2/CompanyResponse.md +37 -37
  9. data/docs/A1099/V2/CoveredIndividual.md +56 -0
  10. data/docs/A1099/V2/CreateAndSendW9FormEmailRequest.md +55 -0
  11. data/docs/A1099/V2/CreateCompanyRequest.md +49 -0
  12. data/docs/A1099/V2/CreateIssuerRequest.md +49 -0
  13. data/docs/A1099/V2/EntryStatusResponse.md +20 -0
  14. data/docs/A1099/V2/Form1042S.md +83 -83
  15. data/docs/A1099/V2/Form1095B.md +72 -62
  16. data/docs/A1099/V2/Form1095C.md +112 -0
  17. data/docs/A1099/V2/Form1099Base.md +60 -60
  18. data/docs/A1099/V2/Form1099Div.md +79 -77
  19. data/docs/A1099/V2/Form1099Int.md +76 -74
  20. data/docs/A1099/V2/Form1099K.md +83 -83
  21. data/docs/A1099/V2/Form1099ListRequest.md +20 -0
  22. data/docs/A1099/V2/Form1099Misc.md +79 -77
  23. data/docs/A1099/V2/Form1099Nec.md +64 -64
  24. data/docs/A1099/V2/Form1099R.md +95 -93
  25. data/docs/A1099/V2/Forms1099Api.md +47 -43
  26. data/docs/A1099/V2/FormsW9Api.md +104 -20
  27. data/docs/A1099/V2/Get1099Form200Response.md +19 -19
  28. data/docs/A1099/V2/IntermediaryOrFlowThrough.md +11 -11
  29. data/docs/A1099/V2/IssuerBase.md +46 -0
  30. data/docs/A1099/V2/IssuerCommand.md +16 -16
  31. data/docs/A1099/V2/IssuerRequest.md +46 -0
  32. data/docs/A1099/V2/IssuerResponse.md +35 -35
  33. data/docs/A1099/V2/Issuers1099Api.md +10 -10
  34. data/docs/A1099/V2/JobResponse.md +56 -0
  35. data/docs/A1099/V2/JobsApi.md +91 -0
  36. data/docs/A1099/V2/OfferAndCoverage.md +28 -0
  37. data/docs/A1099/V2/PaginatedQueryResultModelForm1099Base.md +22 -0
  38. data/docs/A1099/V2/PrimaryWithholdingAgent.md +4 -4
  39. data/docs/A1099/V2/StateAndLocalWithholding.md +8 -8
  40. data/docs/A1099/V2/TinMatchStatusResponse.md +1 -1
  41. data/docs/A1099/V2/ValidationError.md +2 -2
  42. data/docs/A1099/V2/W4FormMinimalRequest.md +30 -0
  43. data/docs/A1099/V2/W4FormRequest.md +16 -16
  44. data/docs/A1099/V2/W4FormResponse.md +48 -20
  45. data/docs/A1099/V2/W8BenEFormMinimalRequest.md +28 -0
  46. data/docs/A1099/V2/W8BenEFormRequest.md +15 -15
  47. data/docs/A1099/V2/W8BenEFormResponse.md +96 -68
  48. data/docs/A1099/V2/W8BenFormMinimalRequest.md +28 -0
  49. data/docs/A1099/V2/W8BenFormRequest.md +11 -11
  50. data/docs/A1099/V2/W8BenFormResponse.md +55 -27
  51. data/docs/A1099/V2/W8ImyFormMinimalRequest.md +28 -0
  52. data/docs/A1099/V2/W8ImyFormRequest.md +15 -15
  53. data/docs/A1099/V2/W8ImyFormResponse.md +118 -90
  54. data/docs/A1099/V2/W9FormBaseMinimalRequest.md +24 -0
  55. data/docs/A1099/V2/W9FormBaseRequest.md +7 -7
  56. data/docs/A1099/V2/W9FormBaseResponse.md +6 -6
  57. data/docs/A1099/V2/W9FormMinimalRequest.md +28 -0
  58. data/docs/A1099/V2/W9FormRequest.md +15 -15
  59. data/docs/A1099/V2/W9FormResponse.md +44 -16
  60. data/lib/avalara_sdk/api/A1099/V2/companies_w9_api.rb +27 -27
  61. data/lib/avalara_sdk/api/A1099/V2/forms1099_api.rb +93 -61
  62. data/lib/avalara_sdk/api/A1099/V2/forms_w9_api.rb +157 -19
  63. data/lib/avalara_sdk/api/A1099/V2/issuers1099_api.rb +21 -21
  64. data/lib/avalara_sdk/api/A1099/V2/{jobs1099_api.rb → jobs_api.rb} +9 -9
  65. data/lib/avalara_sdk/api/EInvoicing/V1/data_input_fields_api.rb +1 -1
  66. data/lib/avalara_sdk/api/EInvoicing/V1/documents_api.rb +1 -1
  67. data/lib/avalara_sdk/api/EInvoicing/V1/interop_api.rb +1 -1
  68. data/lib/avalara_sdk/api/EInvoicing/V1/mandates_api.rb +1 -1
  69. data/lib/avalara_sdk/api/EInvoicing/V1/subscriptions_api.rb +1 -1
  70. data/lib/avalara_sdk/api/EInvoicing/V1/tax_identifiers_api.rb +1 -1
  71. data/lib/avalara_sdk/api/EInvoicing/V1/trading_partners_api.rb +1 -1
  72. data/lib/avalara_sdk/api_client.rb +10 -2
  73. data/lib/avalara_sdk/models/A1099/V2/{base_company_model.rb → company_base.rb} +61 -13
  74. data/lib/avalara_sdk/models/A1099/V2/company_create_update_request_model.rb +58 -17
  75. data/lib/avalara_sdk/models/A1099/V2/{company_model.rb → company_request.rb} +62 -64
  76. data/lib/avalara_sdk/models/A1099/V2/company_response.rb +110 -69
  77. data/lib/avalara_sdk/models/A1099/V2/{covered_individual_request.rb → covered_individual.rb} +36 -7
  78. data/lib/avalara_sdk/models/A1099/V2/{i_create_form1099_request.rb → create_and_send_w9_form_email_request.rb} +6 -5
  79. data/lib/avalara_sdk/models/A1099/V2/{error_response_errors_inner.rb → create_company_request.rb} +3 -3
  80. data/lib/avalara_sdk/models/A1099/V2/{i_update_form1099_request.rb → create_issuer_request.rb} +3 -5
  81. data/lib/avalara_sdk/models/A1099/V2/{status_detail.rb → entry_status_response.rb} +20 -18
  82. data/lib/avalara_sdk/models/A1099/V2/error_response.rb +0 -6
  83. data/lib/avalara_sdk/models/A1099/V2/form1042_s.rb +422 -187
  84. data/lib/avalara_sdk/models/A1099/V2/form1095_b.rb +359 -194
  85. data/lib/avalara_sdk/models/A1099/V2/{form1095_b_response.rb → form1095_c.rb} +250 -133
  86. data/lib/avalara_sdk/models/A1099/V2/form1099_base.rb +283 -185
  87. data/lib/avalara_sdk/models/A1099/V2/form1099_div.rb +307 -179
  88. data/lib/avalara_sdk/models/A1099/V2/form1099_int.rb +307 -183
  89. data/lib/avalara_sdk/models/A1099/V2/form1099_k.rb +307 -198
  90. data/lib/avalara_sdk/models/A1099/V2/{http_validation_problem_details.rb → form1099_list_request.rb} +45 -59
  91. data/lib/avalara_sdk/models/A1099/V2/form1099_misc.rb +334 -209
  92. data/lib/avalara_sdk/models/A1099/V2/form1099_nec.rb +297 -192
  93. data/lib/avalara_sdk/models/A1099/V2/form1099_r.rb +437 -282
  94. data/lib/avalara_sdk/models/A1099/V2/get1099_form200_response.rb +9 -9
  95. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through.rb +59 -1
  96. data/lib/avalara_sdk/models/A1099/V2/{intermediary_or_flow_through_request.rb → issuer_base.rb} +119 -46
  97. data/lib/avalara_sdk/models/A1099/V2/issuer_command.rb +42 -23
  98. data/lib/avalara_sdk/models/A1099/V2/{company_response_model.rb → issuer_request.rb} +113 -112
  99. data/lib/avalara_sdk/models/A1099/V2/issuer_response.rb +77 -46
  100. data/lib/avalara_sdk/models/A1099/V2/{job_result.rb → job_response.rb} +102 -42
  101. data/lib/avalara_sdk/models/A1099/V2/{offer_and_coverage_request.rb → offer_and_coverage.rb} +79 -9
  102. data/lib/avalara_sdk/models/A1099/V2/{paginated_query_result_model.rb → paginated_query_result_model_form1099_base.rb} +4 -4
  103. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent.rb +23 -16
  104. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding.rb +8 -0
  105. data/lib/avalara_sdk/models/A1099/V2/validation_error.rb +2 -6
  106. data/lib/avalara_sdk/models/A1099/V2/{attribute.rb → w4_form_minimal_request.rb} +142 -129
  107. data/lib/avalara_sdk/models/A1099/V2/w4_form_request.rb +62 -34
  108. data/lib/avalara_sdk/models/A1099/V2/w4_form_response.rb +191 -15
  109. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_minimal_request.rb +356 -0
  110. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_request.rb +68 -33
  111. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_response.rb +190 -14
  112. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_minimal_request.rb +356 -0
  113. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_request.rb +51 -28
  114. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_response.rb +191 -15
  115. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_minimal_request.rb +356 -0
  116. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_request.rb +61 -33
  117. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_response.rb +191 -15
  118. data/lib/avalara_sdk/models/A1099/V2/{problem_details.rb → w9_form_base_minimal_request.rb} +61 -35
  119. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_request.rb +35 -28
  120. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_response.rb +60 -31
  121. data/lib/avalara_sdk/models/A1099/V2/w9_form_minimal_request.rb +356 -0
  122. data/lib/avalara_sdk/models/A1099/V2/w9_form_request.rb +71 -30
  123. data/lib/avalara_sdk/models/A1099/V2/w9_form_response.rb +190 -14
  124. data/lib/avalara_sdk/version.rb +1 -1
  125. data/lib/avalara_sdk.rb +22 -101
  126. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/byebug-11.1.3/gem_make.out +5 -5
  127. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
  128. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debase-0.2.9/gem_make.out +5 -5
  129. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.10.0/gem_make.out +5 -5
  130. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/erb-5.0.1/gem_make.out +5 -5
  131. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/io-console-0.8.0/gem_make.out +5 -5
  132. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.12.2/gem_make.out +5 -5
  133. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/prism-1.4.0/gem_make.out +5 -5
  134. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
  135. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
  136. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
  137. metadata +45 -103
  138. data/lib/avalara_sdk/models/A1099/V2/base_form_list_request.rb +0 -210
  139. data/lib/avalara_sdk/models/A1099/V2/bulk_upsert1099_forms_request.rb +0 -108
  140. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference.rb +0 -403
  141. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference_response.rb +0 -407
  142. data/lib/avalara_sdk/models/A1099/V2/create1099_form201_response.rb +0 -108
  143. data/lib/avalara_sdk/models/A1099/V2/data.rb +0 -237
  144. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list.rb +0 -238
  145. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item.rb +0 -816
  146. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item_response.rb +0 -980
  147. data/lib/avalara_sdk/models/A1099/V2/form1042_s_request.rb +0 -778
  148. data/lib/avalara_sdk/models/A1099/V2/form1042_s_response.rb +0 -619
  149. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list.rb +0 -238
  150. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item.rb +0 -606
  151. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item_response.rb +0 -765
  152. data/lib/avalara_sdk/models/A1099/V2/form1095_b_request.rb +0 -627
  153. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list.rb +0 -238
  154. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list_item.rb +0 -662
  155. data/lib/avalara_sdk/models/A1099/V2/form1099_base_response.rb +0 -726
  156. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list.rb +0 -238
  157. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item.rb +0 -747
  158. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item_response.rb +0 -931
  159. data/lib/avalara_sdk/models/A1099/V2/form1099_div_request.rb +0 -729
  160. data/lib/avalara_sdk/models/A1099/V2/form1099_div_response.rb +0 -790
  161. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list.rb +0 -238
  162. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item.rb +0 -702
  163. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item_response.rb +0 -887
  164. data/lib/avalara_sdk/models/A1099/V2/form1099_int_request.rb +0 -684
  165. data/lib/avalara_sdk/models/A1099/V2/form1099_int_response.rb +0 -773
  166. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list.rb +0 -238
  167. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item.rb +0 -788
  168. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item_response.rb +0 -995
  169. data/lib/avalara_sdk/models/A1099/V2/form1099_k_request.rb +0 -770
  170. data/lib/avalara_sdk/models/A1099/V2/form1099_k_response.rb +0 -839
  171. data/lib/avalara_sdk/models/A1099/V2/form1099_list.rb +0 -219
  172. data/lib/avalara_sdk/models/A1099/V2/form1099_list_data_inner.rb +0 -55
  173. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response.rb +0 -220
  174. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response_value_inner.rb +0 -108
  175. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list.rb +0 -238
  176. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item.rb +0 -688
  177. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item_response.rb +0 -886
  178. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_request.rb +0 -670
  179. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_response.rb +0 -754
  180. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list.rb +0 -238
  181. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item.rb +0 -586
  182. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item_response.rb +0 -765
  183. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_request.rb +0 -567
  184. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_response.rb +0 -646
  185. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result.rb +0 -228
  186. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result_processed_forms_inner.rb +0 -107
  187. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list.rb +0 -238
  188. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item.rb +0 -763
  189. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item_response.rb +0 -942
  190. data/lib/avalara_sdk/models/A1099/V2/form1099_r_request.rb +0 -720
  191. data/lib/avalara_sdk/models/A1099/V2/form1099_r_response.rb +0 -839
  192. data/lib/avalara_sdk/models/A1099/V2/form1099_status_detail_response.rb +0 -223
  193. data/lib/avalara_sdk/models/A1099/V2/form_request_base.rb +0 -502
  194. data/lib/avalara_sdk/models/A1099/V2/form_request_csv_base.rb +0 -475
  195. data/lib/avalara_sdk/models/A1099/V2/form_request_list_item_base.rb +0 -548
  196. data/lib/avalara_sdk/models/A1099/V2/form_request_model.rb +0 -345
  197. data/lib/avalara_sdk/models/A1099/V2/form_response_base.rb +0 -612
  198. data/lib/avalara_sdk/models/A1099/V2/form_single_request_base.rb +0 -530
  199. data/lib/avalara_sdk/models/A1099/V2/included_base.rb +0 -219
  200. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through_response.rb +0 -311
  201. data/lib/avalara_sdk/models/A1099/V2/link.rb +0 -210
  202. data/lib/avalara_sdk/models/A1099/V2/paginated_w9_forms_model.rb +0 -231
  203. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_request.rb +0 -221
  204. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_response.rb +0 -221
  205. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_request.rb +0 -278
  206. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_response.rb +0 -282
  207. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_app.rb +0 -231
  208. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_response.rb +0 -231
  209. data/lib/avalara_sdk/models/A1099/V2/update1099_form200_response.rb +0 -108
  210. data/lib/avalara_sdk/models/A1099/V2/validation_error_app.rb +0 -229
  211. data/lib/avalara_sdk/models/A1099/V2/validation_error_response.rb +0 -231
  212. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response.rb +0 -233
  213. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner.rb +0 -274
  214. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_addresses_inner.rb +0 -251
  215. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_identifiers_inner.rb +0 -221
  216. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_supported_document_types_inner.rb +0 -241
  217. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request.rb +0 -224
  218. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_data_inner.rb +0 -237
  219. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_metadata.rb +0 -288
  220. data/lib/avalara_sdk/models/EInvoicing/V1/submit_document_data.rb +0 -216
@@ -1,790 +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 Form1099DivResponse
14
- attr_accessor :total_ordinary_dividends
15
-
16
- attr_accessor :qualified_dividends
17
-
18
- attr_accessor :total_capital_gain_distributions
19
-
20
- attr_accessor :unrecaptured_section1250_gain
21
-
22
- attr_accessor :section1202_gain
23
-
24
- attr_accessor :collectibles_gain
25
-
26
- attr_accessor :section897_ordinary_dividends
27
-
28
- attr_accessor :section897_capital_gain
29
-
30
- attr_accessor :nondividend_distributions
31
-
32
- attr_accessor :federal_income_tax_withheld
33
-
34
- attr_accessor :section199_a_dividends
35
-
36
- attr_accessor :investment_expenses
37
-
38
- attr_accessor :foreign_tax_paid
39
-
40
- attr_accessor :foreign_country_or_us_possession
41
-
42
- attr_accessor :cash_liquidation_distributions
43
-
44
- attr_accessor :noncash_liquidation_distributions
45
-
46
- attr_accessor :exempt_interest_dividends
47
-
48
- attr_accessor :specified_private_activity_bond_interest_dividends
49
-
50
- attr_accessor :fatca_filing_requirement
51
-
52
- attr_accessor :type
53
-
54
- attr_accessor :created_at
55
-
56
- attr_accessor :updated_at
57
-
58
- attr_accessor :state_and_local_withholding
59
-
60
- attr_accessor :tin_type
61
-
62
- attr_accessor :id
63
-
64
- attr_accessor :issuer_id
65
-
66
- attr_accessor :issuer_reference_id
67
-
68
- attr_accessor :issuer_tin
69
-
70
- attr_accessor :tax_year
71
-
72
- attr_accessor :reference_id
73
-
74
- attr_accessor :recipient_name
75
-
76
- attr_accessor :recipient_tin
77
-
78
- attr_accessor :recipient_second_name
79
-
80
- attr_accessor :address
81
-
82
- attr_accessor :address2
83
-
84
- attr_accessor :city
85
-
86
- attr_accessor :state
87
-
88
- attr_accessor :zip
89
-
90
- attr_accessor :email
91
-
92
- attr_accessor :account_number
93
-
94
- attr_accessor :office_code
95
-
96
- attr_accessor :non_us_province
97
-
98
- attr_accessor :country_code
99
-
100
- attr_accessor :federal_e_file
101
-
102
- attr_accessor :postal_mail
103
-
104
- attr_accessor :state_e_file
105
-
106
- attr_accessor :tin_match
107
-
108
- attr_accessor :no_tin
109
-
110
- attr_accessor :second_tin_notice
111
-
112
- attr_accessor :address_verification
113
-
114
- attr_accessor :federal_efile_status
115
-
116
- attr_accessor :e_delivery_status
117
-
118
- attr_accessor :state_efile_status
119
-
120
- attr_accessor :postal_mail_status
121
-
122
- attr_accessor :tin_match_status
123
-
124
- attr_accessor :address_verification_status
125
-
126
- attr_accessor :validation_errors
127
-
128
- class EnumAttributeValidator
129
- attr_reader :datatype
130
- attr_reader :allowable_values
131
-
132
- def initialize(datatype, allowable_values)
133
- @allowable_values = allowable_values.map do |value|
134
- case datatype.to_s
135
- when /Integer/i
136
- value.to_i
137
- when /Float/i
138
- value.to_f
139
- else
140
- value
141
- end
142
- end
143
- end
144
-
145
- def valid?(value)
146
- !value || allowable_values.include?(value)
147
- end
148
- end
149
-
150
- # Attribute mapping from ruby-style variable name to JSON key.
151
- def self.attribute_map
152
- {
153
- :'total_ordinary_dividends' => :'totalOrdinaryDividends',
154
- :'qualified_dividends' => :'qualifiedDividends',
155
- :'total_capital_gain_distributions' => :'totalCapitalGainDistributions',
156
- :'unrecaptured_section1250_gain' => :'unrecapturedSection1250Gain',
157
- :'section1202_gain' => :'section1202Gain',
158
- :'collectibles_gain' => :'collectiblesGain',
159
- :'section897_ordinary_dividends' => :'section897OrdinaryDividends',
160
- :'section897_capital_gain' => :'section897CapitalGain',
161
- :'nondividend_distributions' => :'nondividendDistributions',
162
- :'federal_income_tax_withheld' => :'federalIncomeTaxWithheld',
163
- :'section199_a_dividends' => :'section199ADividends',
164
- :'investment_expenses' => :'investmentExpenses',
165
- :'foreign_tax_paid' => :'foreignTaxPaid',
166
- :'foreign_country_or_us_possession' => :'foreignCountryOrUSPossession',
167
- :'cash_liquidation_distributions' => :'cashLiquidationDistributions',
168
- :'noncash_liquidation_distributions' => :'noncashLiquidationDistributions',
169
- :'exempt_interest_dividends' => :'exemptInterestDividends',
170
- :'specified_private_activity_bond_interest_dividends' => :'specifiedPrivateActivityBondInterestDividends',
171
- :'fatca_filing_requirement' => :'fatcaFilingRequirement',
172
- :'type' => :'type',
173
- :'created_at' => :'createdAt',
174
- :'updated_at' => :'updatedAt',
175
- :'state_and_local_withholding' => :'stateAndLocalWithholding',
176
- :'tin_type' => :'tinType',
177
- :'id' => :'id',
178
- :'issuer_id' => :'issuerId',
179
- :'issuer_reference_id' => :'issuerReferenceId',
180
- :'issuer_tin' => :'issuerTin',
181
- :'tax_year' => :'taxYear',
182
- :'reference_id' => :'referenceId',
183
- :'recipient_name' => :'recipientName',
184
- :'recipient_tin' => :'recipientTin',
185
- :'recipient_second_name' => :'recipientSecondName',
186
- :'address' => :'address',
187
- :'address2' => :'address2',
188
- :'city' => :'city',
189
- :'state' => :'state',
190
- :'zip' => :'zip',
191
- :'email' => :'email',
192
- :'account_number' => :'accountNumber',
193
- :'office_code' => :'officeCode',
194
- :'non_us_province' => :'nonUsProvince',
195
- :'country_code' => :'countryCode',
196
- :'federal_e_file' => :'federalEFile',
197
- :'postal_mail' => :'postalMail',
198
- :'state_e_file' => :'stateEFile',
199
- :'tin_match' => :'tinMatch',
200
- :'no_tin' => :'noTin',
201
- :'second_tin_notice' => :'secondTinNotice',
202
- :'address_verification' => :'addressVerification',
203
- :'federal_efile_status' => :'federalEfileStatus',
204
- :'e_delivery_status' => :'eDeliveryStatus',
205
- :'state_efile_status' => :'stateEfileStatus',
206
- :'postal_mail_status' => :'postalMailStatus',
207
- :'tin_match_status' => :'tinMatchStatus',
208
- :'address_verification_status' => :'addressVerificationStatus',
209
- :'validation_errors' => :'validationErrors'
210
- }
211
- end
212
-
213
- # Returns all the JSON keys this model knows about
214
- def self.acceptable_attributes
215
- attribute_map.values
216
- end
217
-
218
- # Attribute type mapping.
219
- def self.openapi_types
220
- {
221
- :'total_ordinary_dividends' => :'Float',
222
- :'qualified_dividends' => :'Float',
223
- :'total_capital_gain_distributions' => :'Float',
224
- :'unrecaptured_section1250_gain' => :'Float',
225
- :'section1202_gain' => :'Float',
226
- :'collectibles_gain' => :'Float',
227
- :'section897_ordinary_dividends' => :'Float',
228
- :'section897_capital_gain' => :'Float',
229
- :'nondividend_distributions' => :'Float',
230
- :'federal_income_tax_withheld' => :'Float',
231
- :'section199_a_dividends' => :'Float',
232
- :'investment_expenses' => :'Float',
233
- :'foreign_tax_paid' => :'Float',
234
- :'foreign_country_or_us_possession' => :'String',
235
- :'cash_liquidation_distributions' => :'Float',
236
- :'noncash_liquidation_distributions' => :'Float',
237
- :'exempt_interest_dividends' => :'Float',
238
- :'specified_private_activity_bond_interest_dividends' => :'Float',
239
- :'fatca_filing_requirement' => :'Boolean',
240
- :'type' => :'String',
241
- :'created_at' => :'Time',
242
- :'updated_at' => :'Time',
243
- :'state_and_local_withholding' => :'StateAndLocalWithholdingResponse',
244
- :'tin_type' => :'String',
245
- :'id' => :'String',
246
- :'issuer_id' => :'String',
247
- :'issuer_reference_id' => :'String',
248
- :'issuer_tin' => :'String',
249
- :'tax_year' => :'Integer',
250
- :'reference_id' => :'String',
251
- :'recipient_name' => :'String',
252
- :'recipient_tin' => :'String',
253
- :'recipient_second_name' => :'String',
254
- :'address' => :'String',
255
- :'address2' => :'String',
256
- :'city' => :'String',
257
- :'state' => :'String',
258
- :'zip' => :'String',
259
- :'email' => :'String',
260
- :'account_number' => :'String',
261
- :'office_code' => :'String',
262
- :'non_us_province' => :'String',
263
- :'country_code' => :'String',
264
- :'federal_e_file' => :'Boolean',
265
- :'postal_mail' => :'Boolean',
266
- :'state_e_file' => :'Boolean',
267
- :'tin_match' => :'Boolean',
268
- :'no_tin' => :'Boolean',
269
- :'second_tin_notice' => :'Boolean',
270
- :'address_verification' => :'Boolean',
271
- :'federal_efile_status' => :'StatusDetail',
272
- :'e_delivery_status' => :'StatusDetail',
273
- :'state_efile_status' => :'Array<StateEfileStatusDetailResponse>',
274
- :'postal_mail_status' => :'StatusDetail',
275
- :'tin_match_status' => :'StatusDetail',
276
- :'address_verification_status' => :'StatusDetail',
277
- :'validation_errors' => :'Array<ValidationErrorResponse>'
278
- }
279
- end
280
-
281
- # List of attributes with nullable: true
282
- def self.openapi_nullable
283
- Set.new([
284
- :'federal_efile_status',
285
- :'e_delivery_status',
286
- :'state_efile_status',
287
- :'postal_mail_status',
288
- :'tin_match_status',
289
- :'address_verification_status',
290
- :'validation_errors'
291
- ])
292
- end
293
-
294
- # List of class defined in allOf (OpenAPI v3)
295
- def self.openapi_all_of
296
- [
297
- :'FormResponseBase'
298
- ]
299
- end
300
-
301
- # Initializes the object
302
- # @param [Hash] attributes Model attributes in the form of hash
303
- def initialize(attributes = {})
304
- if (!attributes.is_a?(Hash))
305
- fail ArgumentError, "The input argument (attributes) must be a hash in `AvalaraSdk::A1099::V2::Form1099DivResponse` initialize method"
306
- end
307
-
308
- # check to see if the attribute exists and convert string to symbol for hash key
309
- attributes = attributes.each_with_object({}) { |(k, v), h|
310
- if (!self.class.attribute_map.key?(k.to_sym))
311
- fail ArgumentError, "`#{k}` is not a valid attribute in `AvalaraSdk::A1099::V2::Form1099DivResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
312
- end
313
- h[k.to_sym] = v
314
- }
315
-
316
- if attributes.key?(:'total_ordinary_dividends')
317
- self.total_ordinary_dividends = attributes[:'total_ordinary_dividends']
318
- end
319
-
320
- if attributes.key?(:'qualified_dividends')
321
- self.qualified_dividends = attributes[:'qualified_dividends']
322
- end
323
-
324
- if attributes.key?(:'total_capital_gain_distributions')
325
- self.total_capital_gain_distributions = attributes[:'total_capital_gain_distributions']
326
- end
327
-
328
- if attributes.key?(:'unrecaptured_section1250_gain')
329
- self.unrecaptured_section1250_gain = attributes[:'unrecaptured_section1250_gain']
330
- end
331
-
332
- if attributes.key?(:'section1202_gain')
333
- self.section1202_gain = attributes[:'section1202_gain']
334
- end
335
-
336
- if attributes.key?(:'collectibles_gain')
337
- self.collectibles_gain = attributes[:'collectibles_gain']
338
- end
339
-
340
- if attributes.key?(:'section897_ordinary_dividends')
341
- self.section897_ordinary_dividends = attributes[:'section897_ordinary_dividends']
342
- end
343
-
344
- if attributes.key?(:'section897_capital_gain')
345
- self.section897_capital_gain = attributes[:'section897_capital_gain']
346
- end
347
-
348
- if attributes.key?(:'nondividend_distributions')
349
- self.nondividend_distributions = attributes[:'nondividend_distributions']
350
- end
351
-
352
- if attributes.key?(:'federal_income_tax_withheld')
353
- self.federal_income_tax_withheld = attributes[:'federal_income_tax_withheld']
354
- end
355
-
356
- if attributes.key?(:'section199_a_dividends')
357
- self.section199_a_dividends = attributes[:'section199_a_dividends']
358
- end
359
-
360
- if attributes.key?(:'investment_expenses')
361
- self.investment_expenses = attributes[:'investment_expenses']
362
- end
363
-
364
- if attributes.key?(:'foreign_tax_paid')
365
- self.foreign_tax_paid = attributes[:'foreign_tax_paid']
366
- end
367
-
368
- if attributes.key?(:'foreign_country_or_us_possession')
369
- self.foreign_country_or_us_possession = attributes[:'foreign_country_or_us_possession']
370
- end
371
-
372
- if attributes.key?(:'cash_liquidation_distributions')
373
- self.cash_liquidation_distributions = attributes[:'cash_liquidation_distributions']
374
- end
375
-
376
- if attributes.key?(:'noncash_liquidation_distributions')
377
- self.noncash_liquidation_distributions = attributes[:'noncash_liquidation_distributions']
378
- end
379
-
380
- if attributes.key?(:'exempt_interest_dividends')
381
- self.exempt_interest_dividends = attributes[:'exempt_interest_dividends']
382
- end
383
-
384
- if attributes.key?(:'specified_private_activity_bond_interest_dividends')
385
- self.specified_private_activity_bond_interest_dividends = attributes[:'specified_private_activity_bond_interest_dividends']
386
- end
387
-
388
- if attributes.key?(:'fatca_filing_requirement')
389
- self.fatca_filing_requirement = attributes[:'fatca_filing_requirement']
390
- end
391
-
392
- if attributes.key?(:'type')
393
- self.type = attributes[:'type']
394
- end
395
-
396
- if attributes.key?(:'created_at')
397
- self.created_at = attributes[:'created_at']
398
- end
399
-
400
- if attributes.key?(:'updated_at')
401
- self.updated_at = attributes[:'updated_at']
402
- end
403
-
404
- if attributes.key?(:'state_and_local_withholding')
405
- self.state_and_local_withholding = attributes[:'state_and_local_withholding']
406
- end
407
-
408
- if attributes.key?(:'tin_type')
409
- self.tin_type = attributes[:'tin_type']
410
- end
411
-
412
- if attributes.key?(:'id')
413
- self.id = attributes[:'id']
414
- end
415
-
416
- if attributes.key?(:'issuer_id')
417
- self.issuer_id = attributes[:'issuer_id']
418
- end
419
-
420
- if attributes.key?(:'issuer_reference_id')
421
- self.issuer_reference_id = attributes[:'issuer_reference_id']
422
- end
423
-
424
- if attributes.key?(:'issuer_tin')
425
- self.issuer_tin = attributes[:'issuer_tin']
426
- end
427
-
428
- if attributes.key?(:'tax_year')
429
- self.tax_year = attributes[:'tax_year']
430
- end
431
-
432
- if attributes.key?(:'reference_id')
433
- self.reference_id = attributes[:'reference_id']
434
- end
435
-
436
- if attributes.key?(:'recipient_name')
437
- self.recipient_name = attributes[:'recipient_name']
438
- end
439
-
440
- if attributes.key?(:'recipient_tin')
441
- self.recipient_tin = attributes[:'recipient_tin']
442
- end
443
-
444
- if attributes.key?(:'recipient_second_name')
445
- self.recipient_second_name = attributes[:'recipient_second_name']
446
- end
447
-
448
- if attributes.key?(:'address')
449
- self.address = attributes[:'address']
450
- end
451
-
452
- if attributes.key?(:'address2')
453
- self.address2 = attributes[:'address2']
454
- end
455
-
456
- if attributes.key?(:'city')
457
- self.city = attributes[:'city']
458
- end
459
-
460
- if attributes.key?(:'state')
461
- self.state = attributes[:'state']
462
- end
463
-
464
- if attributes.key?(:'zip')
465
- self.zip = attributes[:'zip']
466
- end
467
-
468
- if attributes.key?(:'email')
469
- self.email = attributes[:'email']
470
- end
471
-
472
- if attributes.key?(:'account_number')
473
- self.account_number = attributes[:'account_number']
474
- end
475
-
476
- if attributes.key?(:'office_code')
477
- self.office_code = attributes[:'office_code']
478
- end
479
-
480
- if attributes.key?(:'non_us_province')
481
- self.non_us_province = attributes[:'non_us_province']
482
- end
483
-
484
- if attributes.key?(:'country_code')
485
- self.country_code = attributes[:'country_code']
486
- end
487
-
488
- if attributes.key?(:'federal_e_file')
489
- self.federal_e_file = attributes[:'federal_e_file']
490
- end
491
-
492
- if attributes.key?(:'postal_mail')
493
- self.postal_mail = attributes[:'postal_mail']
494
- end
495
-
496
- if attributes.key?(:'state_e_file')
497
- self.state_e_file = attributes[:'state_e_file']
498
- end
499
-
500
- if attributes.key?(:'tin_match')
501
- self.tin_match = attributes[:'tin_match']
502
- end
503
-
504
- if attributes.key?(:'no_tin')
505
- self.no_tin = attributes[:'no_tin']
506
- end
507
-
508
- if attributes.key?(:'second_tin_notice')
509
- self.second_tin_notice = attributes[:'second_tin_notice']
510
- end
511
-
512
- if attributes.key?(:'address_verification')
513
- self.address_verification = attributes[:'address_verification']
514
- end
515
-
516
- if attributes.key?(:'federal_efile_status')
517
- self.federal_efile_status = attributes[:'federal_efile_status']
518
- end
519
-
520
- if attributes.key?(:'e_delivery_status')
521
- self.e_delivery_status = attributes[:'e_delivery_status']
522
- end
523
-
524
- if attributes.key?(:'state_efile_status')
525
- if (value = attributes[:'state_efile_status']).is_a?(Array)
526
- self.state_efile_status = value
527
- end
528
- end
529
-
530
- if attributes.key?(:'postal_mail_status')
531
- self.postal_mail_status = attributes[:'postal_mail_status']
532
- end
533
-
534
- if attributes.key?(:'tin_match_status')
535
- self.tin_match_status = attributes[:'tin_match_status']
536
- end
537
-
538
- if attributes.key?(:'address_verification_status')
539
- self.address_verification_status = attributes[:'address_verification_status']
540
- end
541
-
542
- if attributes.key?(:'validation_errors')
543
- if (value = attributes[:'validation_errors']).is_a?(Array)
544
- self.validation_errors = value
545
- end
546
- end
547
- end
548
-
549
- # Show invalid properties with the reasons. Usually used together with valid?
550
- # @return Array for valid properties with the reasons
551
- def list_invalid_properties
552
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
553
- invalid_properties = Array.new
554
- invalid_properties
555
- end
556
-
557
- # Check to see if the all the properties in the model are valid
558
- # @return true if the model is valid
559
- def valid?
560
- warn '[DEPRECATED] the `valid?` method is obsolete'
561
- type_validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
562
- return false unless type_validator.valid?(@type)
563
- tin_type_validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
564
- return false unless tin_type_validator.valid?(@tin_type)
565
- true
566
- end
567
-
568
- # Custom attribute writer method checking allowed values (enum).
569
- # @param [Object] type Object to be assigned
570
- def type=(type)
571
- validator = EnumAttributeValidator.new('String', ["1099-NEC", "1099-MISC", "1099-DIV", "1099-R", "1099-K", "1095-B", "1042-S", "1095-C", "1099-INT"])
572
- unless validator.valid?(type)
573
- fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
574
- end
575
- @type = type
576
- end
577
-
578
- # Custom attribute writer method checking allowed values (enum).
579
- # @param [Object] tin_type Object to be assigned
580
- def tin_type=(tin_type)
581
- validator = EnumAttributeValidator.new('String', ["EIN", "SSN", "ITIN", "ATIN"])
582
- unless validator.valid?(tin_type)
583
- fail ArgumentError, "invalid value for \"tin_type\", must be one of #{validator.allowable_values}."
584
- end
585
- @tin_type = tin_type
586
- end
587
-
588
- # Custom attribute writer method with validation
589
- # @param [Object] state_efile_status Value to be assigned
590
- def state_efile_status=(state_efile_status)
591
- @state_efile_status = state_efile_status
592
- end
593
-
594
- # Custom attribute writer method with validation
595
- # @param [Object] validation_errors Value to be assigned
596
- def validation_errors=(validation_errors)
597
- @validation_errors = validation_errors
598
- end
599
-
600
- # Checks equality by comparing each attribute.
601
- # @param [Object] Object to be compared
602
- def ==(o)
603
- return true if self.equal?(o)
604
- self.class == o.class &&
605
- total_ordinary_dividends == o.total_ordinary_dividends &&
606
- qualified_dividends == o.qualified_dividends &&
607
- total_capital_gain_distributions == o.total_capital_gain_distributions &&
608
- unrecaptured_section1250_gain == o.unrecaptured_section1250_gain &&
609
- section1202_gain == o.section1202_gain &&
610
- collectibles_gain == o.collectibles_gain &&
611
- section897_ordinary_dividends == o.section897_ordinary_dividends &&
612
- section897_capital_gain == o.section897_capital_gain &&
613
- nondividend_distributions == o.nondividend_distributions &&
614
- federal_income_tax_withheld == o.federal_income_tax_withheld &&
615
- section199_a_dividends == o.section199_a_dividends &&
616
- investment_expenses == o.investment_expenses &&
617
- foreign_tax_paid == o.foreign_tax_paid &&
618
- foreign_country_or_us_possession == o.foreign_country_or_us_possession &&
619
- cash_liquidation_distributions == o.cash_liquidation_distributions &&
620
- noncash_liquidation_distributions == o.noncash_liquidation_distributions &&
621
- exempt_interest_dividends == o.exempt_interest_dividends &&
622
- specified_private_activity_bond_interest_dividends == o.specified_private_activity_bond_interest_dividends &&
623
- fatca_filing_requirement == o.fatca_filing_requirement &&
624
- type == o.type &&
625
- created_at == o.created_at &&
626
- updated_at == o.updated_at &&
627
- state_and_local_withholding == o.state_and_local_withholding &&
628
- tin_type == o.tin_type &&
629
- id == o.id &&
630
- issuer_id == o.issuer_id &&
631
- issuer_reference_id == o.issuer_reference_id &&
632
- issuer_tin == o.issuer_tin &&
633
- tax_year == o.tax_year &&
634
- reference_id == o.reference_id &&
635
- recipient_name == o.recipient_name &&
636
- recipient_tin == o.recipient_tin &&
637
- recipient_second_name == o.recipient_second_name &&
638
- address == o.address &&
639
- address2 == o.address2 &&
640
- city == o.city &&
641
- state == o.state &&
642
- zip == o.zip &&
643
- email == o.email &&
644
- account_number == o.account_number &&
645
- office_code == o.office_code &&
646
- non_us_province == o.non_us_province &&
647
- country_code == o.country_code &&
648
- federal_e_file == o.federal_e_file &&
649
- postal_mail == o.postal_mail &&
650
- state_e_file == o.state_e_file &&
651
- tin_match == o.tin_match &&
652
- no_tin == o.no_tin &&
653
- second_tin_notice == o.second_tin_notice &&
654
- address_verification == o.address_verification &&
655
- federal_efile_status == o.federal_efile_status &&
656
- e_delivery_status == o.e_delivery_status &&
657
- state_efile_status == o.state_efile_status &&
658
- postal_mail_status == o.postal_mail_status &&
659
- tin_match_status == o.tin_match_status &&
660
- address_verification_status == o.address_verification_status &&
661
- validation_errors == o.validation_errors
662
- end
663
-
664
- # @see the `==` method
665
- # @param [Object] Object to be compared
666
- def eql?(o)
667
- self == o
668
- end
669
-
670
- # Calculates hash code according to all attributes.
671
- # @return [Integer] Hash code
672
- def hash
673
- [total_ordinary_dividends, qualified_dividends, total_capital_gain_distributions, unrecaptured_section1250_gain, section1202_gain, collectibles_gain, section897_ordinary_dividends, section897_capital_gain, nondividend_distributions, federal_income_tax_withheld, section199_a_dividends, investment_expenses, foreign_tax_paid, foreign_country_or_us_possession, cash_liquidation_distributions, noncash_liquidation_distributions, exempt_interest_dividends, specified_private_activity_bond_interest_dividends, fatca_filing_requirement, type, created_at, updated_at, state_and_local_withholding, tin_type, id, issuer_id, issuer_reference_id, issuer_tin, tax_year, reference_id, recipient_name, recipient_tin, 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, address_verification, federal_efile_status, e_delivery_status, state_efile_status, postal_mail_status, tin_match_status, address_verification_status, validation_errors].hash
674
- end
675
-
676
- # Builds the object from hash
677
- # @param [Hash] attributes Model attributes in the form of hash
678
- # @return [Object] Returns the model itself
679
- def self.build_from_hash(attributes)
680
- return nil unless attributes.is_a?(Hash)
681
- attributes = attributes.transform_keys(&:to_sym)
682
- transformed_hash = {}
683
- openapi_types.each_pair do |key, type|
684
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
685
- transformed_hash["#{key}"] = nil
686
- elsif type =~ /\AArray<(.*)>/i
687
- # check to ensure the input is an array given that the attribute
688
- # is documented as an array but the input is not
689
- if attributes[attribute_map[key]].is_a?(Array)
690
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
691
- end
692
- elsif !attributes[attribute_map[key]].nil?
693
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
694
- end
695
- end
696
- new(transformed_hash)
697
- end
698
-
699
- # Deserializes the data based on type
700
- # @param string type Data type
701
- # @param string value Value to be deserialized
702
- # @return [Object] Deserialized data
703
- def self._deserialize(type, value)
704
- case type.to_sym
705
- when :Time
706
- Time.parse(value)
707
- when :Date
708
- Date.parse(value)
709
- when :String
710
- value.to_s
711
- when :Integer
712
- value.to_i
713
- when :Float
714
- value.to_f
715
- when :Boolean
716
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
717
- true
718
- else
719
- false
720
- end
721
- when :Object
722
- # generic object (usually a Hash), return directly
723
- value
724
- when /\AArray<(?<inner_type>.+)>\z/
725
- inner_type = Regexp.last_match[:inner_type]
726
- value.map { |v| _deserialize(inner_type, v) }
727
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
728
- k_type = Regexp.last_match[:k_type]
729
- v_type = Regexp.last_match[:v_type]
730
- {}.tap do |hash|
731
- value.each do |k, v|
732
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
733
- end
734
- end
735
- else # model
736
- # models (e.g. Pet) or oneOf
737
- klass = AvalaraSdk::A1099::V2.const_get(type)
738
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
739
- end
740
- end
741
-
742
- # Returns the string representation of the object
743
- # @return [String] String presentation of the object
744
- def to_s
745
- to_hash.to_s
746
- end
747
-
748
- # to_body is an alias to to_hash (backward compatibility)
749
- # @return [Hash] Returns the object in the form of hash
750
- def to_body
751
- to_hash
752
- end
753
-
754
- # Returns the object in the form of hash
755
- # @return [Hash] Returns the object in the form of hash
756
- def to_hash
757
- hash = {}
758
- self.class.attribute_map.each_pair do |attr, param|
759
- value = self.send(attr)
760
- if value.nil?
761
- is_nullable = self.class.openapi_nullable.include?(attr)
762
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
763
- end
764
-
765
- hash[param] = _to_hash(value)
766
- end
767
- hash
768
- end
769
-
770
- # Outputs non-array value in the form of hash
771
- # For object, use to_hash. Otherwise, just return the value
772
- # @param [Object] value Any valid value
773
- # @return [Hash] Returns the value in the form of hash
774
- def _to_hash(value)
775
- if value.is_a?(Array)
776
- value.compact.map { |v| _to_hash(v) }
777
- elsif value.is_a?(Hash)
778
- {}.tap do |hash|
779
- value.each { |k, v| hash[k] = _to_hash(v) }
780
- end
781
- elsif value.respond_to? :to_hash
782
- value.to_hash
783
- else
784
- value
785
- end
786
- end
787
-
788
- end
789
-
790
- end