data-and-reporting-sdk 1.0.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 (178) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +104 -0
  4. data/lib/shell_data_reporting_ap_is/api_helper.rb +10 -0
  5. data/lib/shell_data_reporting_ap_is/client.rb +84 -0
  6. data/lib/shell_data_reporting_ap_is/configuration.rb +110 -0
  7. data/lib/shell_data_reporting_ap_is/controllers/base_controller.rb +66 -0
  8. data/lib/shell_data_reporting_ap_is/controllers/customer_controller.rb +478 -0
  9. data/lib/shell_data_reporting_ap_is/controllers/invoice_controller.rb +470 -0
  10. data/lib/shell_data_reporting_ap_is/controllers/o_auth_authorization_controller.rb +42 -0
  11. data/lib/shell_data_reporting_ap_is/controllers/transaction_controller.rb +878 -0
  12. data/lib/shell_data_reporting_ap_is/exceptions/api_exception.rb +10 -0
  13. data/lib/shell_data_reporting_ap_is/exceptions/default_error_exception.rb +32 -0
  14. data/lib/shell_data_reporting_ap_is/exceptions/error_object_exception.rb +54 -0
  15. data/lib/shell_data_reporting_ap_is/exceptions/error_user_access_error1_exception.rb +32 -0
  16. data/lib/shell_data_reporting_ap_is/exceptions/o_auth_provider_exception.rb +48 -0
  17. data/lib/shell_data_reporting_ap_is/http/auth/basic_auth.rb +50 -0
  18. data/lib/shell_data_reporting_ap_is/http/auth/bearer_token.rb +89 -0
  19. data/lib/shell_data_reporting_ap_is/http/http_call_back.rb +10 -0
  20. data/lib/shell_data_reporting_ap_is/http/http_method_enum.rb +10 -0
  21. data/lib/shell_data_reporting_ap_is/http/http_request.rb +10 -0
  22. data/lib/shell_data_reporting_ap_is/http/http_response.rb +10 -0
  23. data/lib/shell_data_reporting_ap_is/models/account_access.rb +128 -0
  24. data/lib/shell_data_reporting_ap_is/models/account_request.rb +252 -0
  25. data/lib/shell_data_reporting_ap_is/models/account_response.rb +111 -0
  26. data/lib/shell_data_reporting_ap_is/models/account_response_accounts_items.rb +750 -0
  27. data/lib/shell_data_reporting_ap_is/models/accounts.rb +65 -0
  28. data/lib/shell_data_reporting_ap_is/models/address.rb +174 -0
  29. data/lib/shell_data_reporting_ap_is/models/associated_account.rb +98 -0
  30. data/lib/shell_data_reporting_ap_is/models/audit_request.rb +256 -0
  31. data/lib/shell_data_reporting_ap_is/models/audit_response.rb +111 -0
  32. data/lib/shell_data_reporting_ap_is/models/audit_response_audits_items.rb +450 -0
  33. data/lib/shell_data_reporting_ap_is/models/bank_account.rb +192 -0
  34. data/lib/shell_data_reporting_ap_is/models/base_model.rb +62 -0
  35. data/lib/shell_data_reporting_ap_is/models/bonus_configuration.rb +419 -0
  36. data/lib/shell_data_reporting_ap_is/models/bonus_history.rb +444 -0
  37. data/lib/shell_data_reporting_ap_is/models/card_day_time_restrictions.rb +159 -0
  38. data/lib/shell_data_reporting_ap_is/models/card_exceptions.rb +268 -0
  39. data/lib/shell_data_reporting_ap_is/models/card_group_request.rb +178 -0
  40. data/lib/shell_data_reporting_ap_is/models/card_group_response.rb +109 -0
  41. data/lib/shell_data_reporting_ap_is/models/card_group_response_card_groups_items.rb +301 -0
  42. data/lib/shell_data_reporting_ap_is/models/card_type_request.rb +145 -0
  43. data/lib/shell_data_reporting_ap_is/models/card_type_response.rb +79 -0
  44. data/lib/shell_data_reporting_ap_is/models/card_type_response_customer_card_types_items.rb +470 -0
  45. data/lib/shell_data_reporting_ap_is/models/card_type_response_error.rb +60 -0
  46. data/lib/shell_data_reporting_ap_is/models/card_usage_restrictions.rb +281 -0
  47. data/lib/shell_data_reporting_ap_is/models/card_usage_summary_request.rb +159 -0
  48. data/lib/shell_data_reporting_ap_is/models/card_usage_summary_response.rb +79 -0
  49. data/lib/shell_data_reporting_ap_is/models/col_co_access.rb +88 -0
  50. data/lib/shell_data_reporting_ap_is/models/current_volume.rb +99 -0
  51. data/lib/shell_data_reporting_ap_is/models/customer_contract.rb +63 -0
  52. data/lib/shell_data_reporting_ap_is/models/customer_detail_request.rb +123 -0
  53. data/lib/shell_data_reporting_ap_is/models/customer_detail_response.rb +437 -0
  54. data/lib/shell_data_reporting_ap_is/models/customer_price_list_request.rb +200 -0
  55. data/lib/shell_data_reporting_ap_is/models/customer_price_list_response.rb +82 -0
  56. data/lib/shell_data_reporting_ap_is/models/default_error_fault.rb +60 -0
  57. data/lib/shell_data_reporting_ap_is/models/default_error_fault_detail.rb +50 -0
  58. data/lib/shell_data_reporting_ap_is/models/delivery_addresses.rb +258 -0
  59. data/lib/shell_data_reporting_ap_is/models/eid_access.rb +75 -0
  60. data/lib/shell_data_reporting_ap_is/models/eid_document.rb +166 -0
  61. data/lib/shell_data_reporting_ap_is/models/eid_document_response.rb +140 -0
  62. data/lib/shell_data_reporting_ap_is/models/eid_download_req.rb +86 -0
  63. data/lib/shell_data_reporting_ap_is/models/eid_download_request.rb +50 -0
  64. data/lib/shell_data_reporting_ap_is/models/eid_search_req.rb +160 -0
  65. data/lib/shell_data_reporting_ap_is/models/eid_search_request.rb +70 -0
  66. data/lib/shell_data_reporting_ap_is/models/error_details.rb +81 -0
  67. data/lib/shell_data_reporting_ap_is/models/error_status.rb +60 -0
  68. data/lib/shell_data_reporting_ap_is/models/error_user_access.rb +50 -0
  69. data/lib/shell_data_reporting_ap_is/models/error_user_access_error.rb +60 -0
  70. data/lib/shell_data_reporting_ap_is/models/exception_product.rb +65 -0
  71. data/lib/shell_data_reporting_ap_is/models/exception_site_location.rb +63 -0
  72. data/lib/shell_data_reporting_ap_is/models/fee_item.rb +977 -0
  73. data/lib/shell_data_reporting_ap_is/models/fee_item_summary_all_of0.rb +194 -0
  74. data/lib/shell_data_reporting_ap_is/models/fee_rule_location.rb +153 -0
  75. data/lib/shell_data_reporting_ap_is/models/fee_rule_product.rb +98 -0
  76. data/lib/shell_data_reporting_ap_is/models/fee_rule_tier.rb +74 -0
  77. data/lib/shell_data_reporting_ap_is/models/fee_summary_response.rb +85 -0
  78. data/lib/shell_data_reporting_ap_is/models/fees_fee_rule_tiers.rb +124 -0
  79. data/lib/shell_data_reporting_ap_is/models/finance_currency.rb +98 -0
  80. data/lib/shell_data_reporting_ap_is/models/fuel_consumption_card.rb +73 -0
  81. data/lib/shell_data_reporting_ap_is/models/fuel_consumption_data.rb +267 -0
  82. data/lib/shell_data_reporting_ap_is/models/fuel_consumption_request.rb +197 -0
  83. data/lib/shell_data_reporting_ap_is/models/fuel_consumption_response.rb +79 -0
  84. data/lib/shell_data_reporting_ap_is/models/invoice_dates_data.rb +62 -0
  85. data/lib/shell_data_reporting_ap_is/models/invoice_dates_request.rb +50 -0
  86. data/lib/shell_data_reporting_ap_is/models/invoice_dates_request_filters.rb +146 -0
  87. data/lib/shell_data_reporting_ap_is/models/invoice_dates_response_data.rb +80 -0
  88. data/lib/shell_data_reporting_ap_is/models/invoice_distribution_method.rb +99 -0
  89. data/lib/shell_data_reporting_ap_is/models/invoice_download_req.rb +99 -0
  90. data/lib/shell_data_reporting_ap_is/models/invoice_download_request.rb +50 -0
  91. data/lib/shell_data_reporting_ap_is/models/invoice_search_additional_document.rb +80 -0
  92. data/lib/shell_data_reporting_ap_is/models/invoice_search_details.rb +913 -0
  93. data/lib/shell_data_reporting_ap_is/models/invoice_search_request.rb +91 -0
  94. data/lib/shell_data_reporting_ap_is/models/invoice_search_request_filters.rb +344 -0
  95. data/lib/shell_data_reporting_ap_is/models/invoice_search_response.rb +127 -0
  96. data/lib/shell_data_reporting_ap_is/models/invoice_summary_details.rb +129 -0
  97. data/lib/shell_data_reporting_ap_is/models/invoice_summary_request.rb +50 -0
  98. data/lib/shell_data_reporting_ap_is/models/invoice_summary_request_filters.rb +345 -0
  99. data/lib/shell_data_reporting_ap_is/models/invoice_summary_response.rb +79 -0
  100. data/lib/shell_data_reporting_ap_is/models/invoices_summaries.rb +221 -0
  101. data/lib/shell_data_reporting_ap_is/models/last_statement_of_account.rb +421 -0
  102. data/lib/shell_data_reporting_ap_is/models/logged_in_user_request.rb +107 -0
  103. data/lib/shell_data_reporting_ap_is/models/logged_in_user_response.rb +394 -0
  104. data/lib/shell_data_reporting_ap_is/models/monthly_invoice_trend.rb +112 -0
  105. data/lib/shell_data_reporting_ap_is/models/multi_priced_transaction_request.rb +360 -0
  106. data/lib/shell_data_reporting_ap_is/models/multi_priced_transaction_request_accounts_items.rb +84 -0
  107. data/lib/shell_data_reporting_ap_is/models/multi_priced_transaction_response.rb +110 -0
  108. data/lib/shell_data_reporting_ap_is/models/multi_priced_transaction_response_transactions_items.rb +1724 -0
  109. data/lib/shell_data_reporting_ap_is/models/o_auth_provider_error_enum.rb +45 -0
  110. data/lib/shell_data_reporting_ap_is/models/o_auth_token.rb +100 -0
  111. data/lib/shell_data_reporting_ap_is/models/past_statement_of_accounts.rb +502 -0
  112. data/lib/shell_data_reporting_ap_is/models/payer_access.rb +147 -0
  113. data/lib/shell_data_reporting_ap_is/models/payer_details.rb +1412 -0
  114. data/lib/shell_data_reporting_ap_is/models/payer_request.rb +126 -0
  115. data/lib/shell_data_reporting_ap_is/models/payer_response.rb +115 -0
  116. data/lib/shell_data_reporting_ap_is/models/payers.rb +109 -0
  117. data/lib/shell_data_reporting_ap_is/models/payments_since_last_soa.rb +322 -0
  118. data/lib/shell_data_reporting_ap_is/models/pin_advice_types.rb +80 -0
  119. data/lib/shell_data_reporting_ap_is/models/price_list.rb +485 -0
  120. data/lib/shell_data_reporting_ap_is/models/price_trans_summary_request.rb +477 -0
  121. data/lib/shell_data_reporting_ap_is/models/price_transaction_request.rb +572 -0
  122. data/lib/shell_data_reporting_ap_is/models/priced_request_data.rb +485 -0
  123. data/lib/shell_data_reporting_ap_is/models/priced_response_data.rb +2132 -0
  124. data/lib/shell_data_reporting_ap_is/models/priced_trans_summary_response.rb +79 -0
  125. data/lib/shell_data_reporting_ap_is/models/priced_trans_summary_response_transactions_summary_items.rb +242 -0
  126. data/lib/shell_data_reporting_ap_is/models/priced_transaction_items_location_items.rb +67 -0
  127. data/lib/shell_data_reporting_ap_is/models/priced_transaction_req_v2_invoice_status_enum.rb +27 -0
  128. data/lib/shell_data_reporting_ap_is/models/priced_transaction_req_v2_period_enum.rb +27 -0
  129. data/lib/shell_data_reporting_ap_is/models/priced_transaction_req_v2_sort_order_enum.rb +37 -0
  130. data/lib/shell_data_reporting_ap_is/models/priced_transaction_request_v2.rb +72 -0
  131. data/lib/shell_data_reporting_ap_is/models/priced_transaction_resp_v2_refund_flag_enum.rb +23 -0
  132. data/lib/shell_data_reporting_ap_is/models/priced_transaction_response.rb +59 -0
  133. data/lib/shell_data_reporting_ap_is/models/priced_transaction_response_transactions_items.rb +1719 -0
  134. data/lib/shell_data_reporting_ap_is/models/priced_transaction_response_v2.rb +110 -0
  135. data/lib/shell_data_reporting_ap_is/models/pricing_current_volume.rb +115 -0
  136. data/lib/shell_data_reporting_ap_is/models/pricing_history.rb +105 -0
  137. data/lib/shell_data_reporting_ap_is/models/purchase_categories.rb +114 -0
  138. data/lib/shell_data_reporting_ap_is/models/recent_transaction_req.rb +217 -0
  139. data/lib/shell_data_reporting_ap_is/models/recent_transaction_request.rb +66 -0
  140. data/lib/shell_data_reporting_ap_is/models/recent_transactions.rb +918 -0
  141. data/lib/shell_data_reporting_ap_is/models/recent_transactions_response.rb +110 -0
  142. data/lib/shell_data_reporting_ap_is/models/role.rb +102 -0
  143. data/lib/shell_data_reporting_ap_is/models/search_doc_req.rb +269 -0
  144. data/lib/shell_data_reporting_ap_is/models/search_documents_invoice.rb +204 -0
  145. data/lib/shell_data_reporting_ap_is/models/search_documents_request.rb +70 -0
  146. data/lib/shell_data_reporting_ap_is/models/search_documents_response.rb +122 -0
  147. data/lib/shell_data_reporting_ap_is/models/search_soa_req.rb +197 -0
  148. data/lib/shell_data_reporting_ap_is/models/search_statement_of_account.rb +220 -0
  149. data/lib/shell_data_reporting_ap_is/models/search_statement_of_account_request.rb +70 -0
  150. data/lib/shell_data_reporting_ap_is/models/search_statement_of_account_response.rb +120 -0
  151. data/lib/shell_data_reporting_ap_is/models/site_location.rb +67 -0
  152. data/lib/shell_data_reporting_ap_is/models/statement_of_account_request.rb +50 -0
  153. data/lib/shell_data_reporting_ap_is/models/statement_of_account_request_filters.rb +197 -0
  154. data/lib/shell_data_reporting_ap_is/models/statement_of_account_resp.rb +138 -0
  155. data/lib/shell_data_reporting_ap_is/models/statement_of_account_response.rb +80 -0
  156. data/lib/shell_data_reporting_ap_is/models/tier.rb +167 -0
  157. data/lib/shell_data_reporting_ap_is/models/transaction_exceptions.rb +1267 -0
  158. data/lib/shell_data_reporting_ap_is/models/transaction_exceptions_request.rb +267 -0
  159. data/lib/shell_data_reporting_ap_is/models/transaction_exceptions_response.rb +100 -0
  160. data/lib/shell_data_reporting_ap_is/models/transaction_fees_request.rb +348 -0
  161. data/lib/shell_data_reporting_ap_is/models/transaction_fees_response.rb +111 -0
  162. data/lib/shell_data_reporting_ap_is/models/update_odometer.rb +62 -0
  163. data/lib/shell_data_reporting_ap_is/models/update_odometer_reference.rb +67 -0
  164. data/lib/shell_data_reporting_ap_is/models/update_odometer_request.rb +146 -0
  165. data/lib/shell_data_reporting_ap_is/models/update_odometer_response.rb +93 -0
  166. data/lib/shell_data_reporting_ap_is/models/usage_summary.rb +202 -0
  167. data/lib/shell_data_reporting_ap_is/models/volume_based_bonus_request.rb +118 -0
  168. data/lib/shell_data_reporting_ap_is/models/volume_based_bonus_response.rb +120 -0
  169. data/lib/shell_data_reporting_ap_is/models/volume_based_pricing_request.rb +103 -0
  170. data/lib/shell_data_reporting_ap_is/models/volume_based_pricing_response.rb +120 -0
  171. data/lib/shell_data_reporting_ap_is/utilities/date_time_helper.rb +11 -0
  172. data/lib/shell_data_reporting_ap_is/utilities/file_wrapper.rb +16 -0
  173. data/lib/shell_data_reporting_ap_is.rb +229 -0
  174. data/test/controllers/controller_test_base.rb +34 -0
  175. data/test/controllers/test_invoice_controller.rb +398 -0
  176. data/test/controllers/test_transaction_controller.rb +235 -0
  177. data/test/http_response_catcher.rb +19 -0
  178. metadata +302 -0
@@ -0,0 +1,252 @@
1
+ # shell_data_reporting_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellDataReportingApIs
7
+ # AccountRequest Model.
8
+ class AccountRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Account Status.
13
+ # Optional if StatusList is passed, else mandatory.
14
+ # Ignored if StatusList is passed.
15
+ # Allowed values:
16
+ # • ALL
17
+ # • ACTIVE
18
+ # • BLOCKED
19
+ # • CANCELLED
20
+ # • CREDITLOCK
21
+ # • DELINQUENCYLOCK
22
+ # @return [String]
23
+ attr_accessor :status
24
+
25
+ # Include card summary details in the response.
26
+ # When passed as false, the card summary related parameters on response will
27
+ # be set to null.
28
+ # Optional – default value: true.
29
+ # @return [TrueClass | FalseClass]
30
+ attr_accessor :include_card_summary
31
+
32
+ # Payer id of the customer.
33
+ # Optional if PayerNumber is passed, else Mandatory.
34
+ # @return [Integer]
35
+ attr_accessor :payer_id
36
+
37
+ # PayerNumber of the customer.
38
+ # Optional if PayerId is passed, else Mandatory.
39
+ # @return [String]
40
+ attr_accessor :payer_number
41
+
42
+ # Page Size – Number of records to show on a page.
43
+ # Optional
44
+ # Default value 50
45
+ # @return [Integer]
46
+ attr_accessor :page_size
47
+
48
+ # API Request Id
49
+ # @return [String]
50
+ attr_accessor :request_id
51
+
52
+ # Collecting Company Code (Shell Code) of the selected payer.
53
+ # ColCoCode or ColCoCountryCode is Mandatory for serviced OUs such as
54
+ # Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is optional for other
55
+ # countries if ColCoID is provided.
56
+ # @return [Integer]
57
+ attr_accessor :col_co_code
58
+
59
+ # The 2-character ISO Code for the customer and card owning country.
60
+ # ColCoCode or ColCoCountryCode is Mandatory for serviced OUs such as
61
+ # Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is optional for other
62
+ # countries if ColCoID is provided.
63
+ # @return [String]
64
+ attr_accessor :col_co_country_code
65
+
66
+ # Page Number (as shown to the users)
67
+ # Optional
68
+ # Default value 1
69
+ # @return [Integer]
70
+ attr_accessor :current_page
71
+
72
+ # Optional – default value: false.
73
+ # When passed as true, the API will return accounts that are configured as
74
+ # Invoice Point only.
75
+ # @return [TrueClass | FalseClass]
76
+ attr_accessor :invoice_points_only
77
+
78
+ # Collecting Company Id (in GFN) of the selected payer.
79
+ # Optional if ColCoCode or ColCoCountryCode is passed else Mandatory.
80
+ # @return [Integer]
81
+ attr_accessor :col_co_id
82
+
83
+ # Return e-Toll Customer details When True.
84
+ # @return [TrueClass | FalseClass]
85
+ attr_accessor :return_tolls_customer_id
86
+
87
+ # Return e-Toll Customer details When True.
88
+ # @return [Array[Accounts]]
89
+ attr_accessor :accounts
90
+
91
+ # Account Name of the customer.
92
+ # Optional.
93
+ # Minimum of 4 characters should be provided else not considered.
94
+ # Accounts those have the entered value at any part of the Name will be
95
+ # returned.
96
+ # @return [String]
97
+ attr_accessor :account_name
98
+
99
+ # Account Statuses.
100
+ # Optional
101
+ # Multiple statuses are allowed to be included in the search criteria.
102
+ # Allowed values:
103
+ # • ACTIVE
104
+ # • BLOCKED
105
+ # • CANCELLED
106
+ # • CREDITLOCK
107
+ # • DELINQUENCYLOCK
108
+ # @return [Array[String]]
109
+ attr_accessor :status_list
110
+
111
+ # A mapping from model property names to API property names.
112
+ def self.names
113
+ @_hash = {} if @_hash.nil?
114
+ @_hash['status'] = 'Status'
115
+ @_hash['include_card_summary'] = 'IncludeCardSummary'
116
+ @_hash['payer_id'] = 'PayerId'
117
+ @_hash['payer_number'] = 'PayerNumber'
118
+ @_hash['page_size'] = 'PageSize'
119
+ @_hash['request_id'] = 'RequestId'
120
+ @_hash['col_co_code'] = 'ColCoCode'
121
+ @_hash['col_co_country_code'] = 'ColCoCountryCode'
122
+ @_hash['current_page'] = 'CurrentPage'
123
+ @_hash['invoice_points_only'] = 'InvoicePointsOnly'
124
+ @_hash['col_co_id'] = 'ColCoId'
125
+ @_hash['return_tolls_customer_id'] = 'ReturnTollsCustomerId'
126
+ @_hash['accounts'] = 'Accounts'
127
+ @_hash['account_name'] = 'AccountName'
128
+ @_hash['status_list'] = 'StatusList'
129
+ @_hash
130
+ end
131
+
132
+ # An array for optional fields
133
+ def self.optionals
134
+ %w[
135
+ status
136
+ include_card_summary
137
+ payer_id
138
+ payer_number
139
+ page_size
140
+ request_id
141
+ col_co_code
142
+ col_co_country_code
143
+ current_page
144
+ invoice_points_only
145
+ col_co_id
146
+ return_tolls_customer_id
147
+ accounts
148
+ account_name
149
+ status_list
150
+ ]
151
+ end
152
+
153
+ # An array for nullable fields
154
+ def self.nullables
155
+ %w[
156
+ status
157
+ payer_id
158
+ payer_number
159
+ page_size
160
+ request_id
161
+ col_co_code
162
+ col_co_country_code
163
+ current_page
164
+ invoice_points_only
165
+ col_co_id
166
+ account_name
167
+ ]
168
+ end
169
+
170
+ def initialize(status = SKIP,
171
+ include_card_summary = true,
172
+ payer_id = SKIP,
173
+ payer_number = SKIP,
174
+ page_size = SKIP,
175
+ request_id = SKIP,
176
+ col_co_code = SKIP,
177
+ col_co_country_code = SKIP,
178
+ current_page = SKIP,
179
+ invoice_points_only = false,
180
+ col_co_id = SKIP,
181
+ return_tolls_customer_id = SKIP,
182
+ accounts = SKIP,
183
+ account_name = SKIP,
184
+ status_list = SKIP)
185
+ @status = status unless status == SKIP
186
+ @include_card_summary = include_card_summary unless include_card_summary == SKIP
187
+ @payer_id = payer_id unless payer_id == SKIP
188
+ @payer_number = payer_number unless payer_number == SKIP
189
+ @page_size = page_size unless page_size == SKIP
190
+ @request_id = request_id unless request_id == SKIP
191
+ @col_co_code = col_co_code unless col_co_code == SKIP
192
+ @col_co_country_code = col_co_country_code unless col_co_country_code == SKIP
193
+ @current_page = current_page unless current_page == SKIP
194
+ @invoice_points_only = invoice_points_only unless invoice_points_only == SKIP
195
+ @col_co_id = col_co_id unless col_co_id == SKIP
196
+ @return_tolls_customer_id = return_tolls_customer_id unless return_tolls_customer_id == SKIP
197
+ @accounts = accounts unless accounts == SKIP
198
+ @account_name = account_name unless account_name == SKIP
199
+ @status_list = status_list unless status_list == SKIP
200
+ end
201
+
202
+ # Creates an instance of the object from a hash.
203
+ def self.from_hash(hash)
204
+ return nil unless hash
205
+
206
+ # Extract variables from the hash.
207
+ status = hash.key?('Status') ? hash['Status'] : SKIP
208
+ include_card_summary = hash['IncludeCardSummary'] ||= true
209
+ payer_id = hash.key?('PayerId') ? hash['PayerId'] : SKIP
210
+ payer_number = hash.key?('PayerNumber') ? hash['PayerNumber'] : SKIP
211
+ page_size = hash.key?('PageSize') ? hash['PageSize'] : SKIP
212
+ request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
213
+ col_co_code = hash.key?('ColCoCode') ? hash['ColCoCode'] : SKIP
214
+ col_co_country_code =
215
+ hash.key?('ColCoCountryCode') ? hash['ColCoCountryCode'] : SKIP
216
+ current_page = hash.key?('CurrentPage') ? hash['CurrentPage'] : SKIP
217
+ invoice_points_only = hash['InvoicePointsOnly'] ||= false
218
+ col_co_id = hash.key?('ColCoId') ? hash['ColCoId'] : SKIP
219
+ return_tolls_customer_id =
220
+ hash.key?('ReturnTollsCustomerId') ? hash['ReturnTollsCustomerId'] : SKIP
221
+ # Parameter is an array, so we need to iterate through it
222
+ accounts = nil
223
+ unless hash['Accounts'].nil?
224
+ accounts = []
225
+ hash['Accounts'].each do |structure|
226
+ accounts << (Accounts.from_hash(structure) if structure)
227
+ end
228
+ end
229
+
230
+ accounts = SKIP unless hash.key?('Accounts')
231
+ account_name = hash.key?('AccountName') ? hash['AccountName'] : SKIP
232
+ status_list = hash.key?('StatusList') ? hash['StatusList'] : SKIP
233
+
234
+ # Create object from extracted values.
235
+ AccountRequest.new(status,
236
+ include_card_summary,
237
+ payer_id,
238
+ payer_number,
239
+ page_size,
240
+ request_id,
241
+ col_co_code,
242
+ col_co_country_code,
243
+ current_page,
244
+ invoice_points_only,
245
+ col_co_id,
246
+ return_tolls_customer_id,
247
+ accounts,
248
+ account_name,
249
+ status_list)
250
+ end
251
+ end
252
+ end
@@ -0,0 +1,111 @@
1
+ # shell_data_reporting_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellDataReportingApIs
7
+ # AccountResponse Model.
8
+ class AccountResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Array[AccountResponseAccountsItems]]
14
+ attr_accessor :accounts
15
+
16
+ # current page
17
+ # @return [Integer]
18
+ attr_accessor :current_page
19
+
20
+ # Total row count matched for the given input criteria
21
+ # @return [Integer]
22
+ attr_accessor :row_count
23
+
24
+ # Calculated page count based on page size from the incoming API request and
25
+ # total number of rows matched for the given input criteria.
26
+ # @return [Integer]
27
+ attr_accessor :total_pages
28
+
29
+ # Calculated page count based on page size from the incoming API request and
30
+ # total number of rows matched for the given input criteria.
31
+ # @return [ErrorStatus]
32
+ attr_accessor :error
33
+
34
+ # API Request ID
35
+ # @return [String]
36
+ attr_accessor :request_id
37
+
38
+ # A mapping from model property names to API property names.
39
+ def self.names
40
+ @_hash = {} if @_hash.nil?
41
+ @_hash['accounts'] = 'Accounts'
42
+ @_hash['current_page'] = 'CurrentPage'
43
+ @_hash['row_count'] = 'RowCount'
44
+ @_hash['total_pages'] = 'TotalPages'
45
+ @_hash['error'] = 'Error'
46
+ @_hash['request_id'] = 'RequestId'
47
+ @_hash
48
+ end
49
+
50
+ # An array for optional fields
51
+ def self.optionals
52
+ %w[
53
+ accounts
54
+ current_page
55
+ row_count
56
+ total_pages
57
+ error
58
+ request_id
59
+ ]
60
+ end
61
+
62
+ # An array for nullable fields
63
+ def self.nullables
64
+ []
65
+ end
66
+
67
+ def initialize(accounts = SKIP,
68
+ current_page = SKIP,
69
+ row_count = SKIP,
70
+ total_pages = SKIP,
71
+ error = SKIP,
72
+ request_id = SKIP)
73
+ @accounts = accounts unless accounts == SKIP
74
+ @current_page = current_page unless current_page == SKIP
75
+ @row_count = row_count unless row_count == SKIP
76
+ @total_pages = total_pages unless total_pages == SKIP
77
+ @error = error unless error == SKIP
78
+ @request_id = request_id unless request_id == SKIP
79
+ end
80
+
81
+ # Creates an instance of the object from a hash.
82
+ def self.from_hash(hash)
83
+ return nil unless hash
84
+
85
+ # Extract variables from the hash.
86
+ # Parameter is an array, so we need to iterate through it
87
+ accounts = nil
88
+ unless hash['Accounts'].nil?
89
+ accounts = []
90
+ hash['Accounts'].each do |structure|
91
+ accounts << (AccountResponseAccountsItems.from_hash(structure) if structure)
92
+ end
93
+ end
94
+
95
+ accounts = SKIP unless hash.key?('Accounts')
96
+ current_page = hash.key?('CurrentPage') ? hash['CurrentPage'] : SKIP
97
+ row_count = hash.key?('RowCount') ? hash['RowCount'] : SKIP
98
+ total_pages = hash.key?('TotalPages') ? hash['TotalPages'] : SKIP
99
+ error = ErrorStatus.from_hash(hash['Error']) if hash['Error']
100
+ request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
101
+
102
+ # Create object from extracted values.
103
+ AccountResponse.new(accounts,
104
+ current_page,
105
+ row_count,
106
+ total_pages,
107
+ error,
108
+ request_id)
109
+ end
110
+ end
111
+ end