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,348 @@
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
+ # TransactionFeesRequest Model.
8
+ class TransactionFeesRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Collecting Company Id of the selected payer.
13
+ # Optional if ColCoCode is passed else Mandatory.
14
+ # Example:
15
+ # 1 for Philippines
16
+ # 5 for UK
17
+ # @return [Integer]
18
+ attr_accessor :col_co_id
19
+
20
+ # Collecting Company Code (Shell Code) of the selected payer.
21
+ # Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia,
22
+ # Ukraine etc. It is optional for other countries if ColCoID is provided.
23
+ # Example:
24
+ # 86 for Philippines
25
+ # 5 for UK
26
+ # @return [Integer]
27
+ attr_accessor :col_co_code
28
+
29
+ # Payer Id of the selected payer.
30
+ # Optional if PayerNumber is passed else Mandatory
31
+ # Example: 123456
32
+ # @return [Integer]
33
+ attr_accessor :payer_id
34
+
35
+ # Payer Number (Ex: GB000000123) of the selected payer.
36
+ # Optional if PayerId is passed else Mandatory
37
+ # @return [String]
38
+ attr_accessor :payer_number
39
+
40
+ # Payer Number (Ex: GB000000123) of the selected payer.
41
+ # Optional if PayerId is passed else Mandatory
42
+ # @return [Array[Accounts]]
43
+ attr_accessor :accounts
44
+
45
+ # Card Id
46
+ # Optional
47
+ # When both Card Id and Card PAN are not present on request, the response
48
+ # will have all the fee items under the selected payer or account.
49
+ # Example: 275549
50
+ # @return [Integer]
51
+ attr_accessor :card_id
52
+
53
+ # Full Card PAN
54
+ # Optional
55
+ # When both Card Id and Card PAN are not present on request, the response
56
+ # will have all the fee items under the selected payer or account or card
57
+ # group.
58
+ # @return [String]
59
+ attr_accessor :card_pan
60
+
61
+ # Invoice status of the fee items
62
+ # Mandatory
63
+ # Possible options:
64
+ # I - Invoiced
65
+ # U – Un-Invoiced
66
+ # A – All
67
+ # @return [String]
68
+ attr_accessor :invoice_status
69
+
70
+ # Fee type group in under which the Fee item is generated.
71
+ # Optional.
72
+ # Allowed values:
73
+ # - Account Charges
74
+ # - Card Charges
75
+ # - Others Charges
76
+ # @return [String]
77
+ attr_accessor :fee_type_group
78
+
79
+ # Fee Type Id.
80
+ # Optional.
81
+ # Example:
82
+ # 1. Simple Fee
83
+ # 2. Card Event Fee
84
+ # 3. Customer Event Fee
85
+ # @return [Integer]
86
+ attr_accessor :fee_type_id
87
+
88
+ # Fee Item FromDate/Time
89
+ # Should be with in last 24 months
90
+ # Optional
91
+ # Maximum of 210 days duration allowed per search, its configurable.
92
+ # Format: yyyyMMdd
93
+ # @return [String]
94
+ attr_accessor :from_date
95
+
96
+ # Fee Item To Date/Time
97
+ # Optional
98
+ # When blank and FromDate is provided on the input, all fee items took place
99
+ # after the given from date/time should be returned. Note that the search is
100
+ # allowed for the maximum of 60 days. Hence if the FromDate is older than 60
101
+ # days from current date then the fee items for 60 days from FromDate will
102
+ # be returned.
103
+ # Format: yyyyMMdd
104
+ # @return [String]
105
+ attr_accessor :to_date
106
+
107
+ # Fee items Period. This is ignored when FromDate/Todate is supplied on the
108
+ # request.
109
+ # 1. Last 7 Days
110
+ # 2. Last 30 Days
111
+ # 3. Last 90 Days
112
+ # 4. Last 180 Days
113
+ # Example : Pass 1 for Last 7 days fee items
114
+ # @return [Integer]
115
+ attr_accessor :period
116
+
117
+ # True or False. When True, cancelled fee items are included on API response
118
+ # @return [TrueClass | FalseClass]
119
+ attr_accessor :include_cancelled_items
120
+
121
+ # Product Id
122
+ # Optional
123
+ # Example: Sample list of product ids and description.
124
+ # 100 Service fee
125
+ # 102 Invoice production fee
126
+ # 103 Account fee
127
+ # 104 Transaction fee
128
+ # 105 Card membership fee
129
+ # @return [Integer]
130
+ attr_accessor :product_id
131
+
132
+ # Product Code
133
+ # Optional
134
+ # Example:
135
+ # 1. Service fee
136
+ # 2. Invoice production fee
137
+ # 3. Account fee
138
+ # 4. Transaction fee
139
+ # 5. Card membership fee
140
+ # @return [String]
141
+ attr_accessor :product_code
142
+
143
+ # Line item description.
144
+ # Optional
145
+ # Minimum of 4 characters should be provided else not considered
146
+ # Those fee items that have the entered value at any part of the line item
147
+ # description will be returned.
148
+ # @return [String]
149
+ attr_accessor :line_item_description
150
+
151
+ # Allowed Sorting Options:
152
+ # • FeeDateAscending
153
+ # • FeeDateDescending
154
+ # • NetAmountAscending
155
+ # • NetAmountDescending
156
+ # Optional.
157
+ # Default: 1
158
+ # @return [String]
159
+ attr_accessor :sort_order
160
+
161
+ # Page Number
162
+ # @return [Integer]
163
+ attr_accessor :current_page
164
+
165
+ # Page Size – Number of records to show on a page
166
+ # @return [Integer]
167
+ attr_accessor :page_size
168
+
169
+ # A mapping from model property names to API property names.
170
+ def self.names
171
+ @_hash = {} if @_hash.nil?
172
+ @_hash['col_co_id'] = 'ColCoId'
173
+ @_hash['col_co_code'] = 'ColCoCode'
174
+ @_hash['payer_id'] = 'PayerId'
175
+ @_hash['payer_number'] = 'PayerNumber'
176
+ @_hash['accounts'] = 'Accounts'
177
+ @_hash['card_id'] = 'CardId'
178
+ @_hash['card_pan'] = 'CardPAN'
179
+ @_hash['invoice_status'] = 'InvoiceStatus'
180
+ @_hash['fee_type_group'] = 'FeeTypeGroup'
181
+ @_hash['fee_type_id'] = 'FeeTypeId'
182
+ @_hash['from_date'] = 'FromDate'
183
+ @_hash['to_date'] = 'ToDate'
184
+ @_hash['period'] = 'Period'
185
+ @_hash['include_cancelled_items'] = 'IncludeCancelledItems'
186
+ @_hash['product_id'] = 'ProductId'
187
+ @_hash['product_code'] = 'ProductCode'
188
+ @_hash['line_item_description'] = 'LineItemDescription'
189
+ @_hash['sort_order'] = 'SortOrder'
190
+ @_hash['current_page'] = 'CurrentPage'
191
+ @_hash['page_size'] = 'PageSize'
192
+ @_hash
193
+ end
194
+
195
+ # An array for optional fields
196
+ def self.optionals
197
+ %w[
198
+ col_co_id
199
+ col_co_code
200
+ payer_id
201
+ payer_number
202
+ accounts
203
+ card_id
204
+ card_pan
205
+ invoice_status
206
+ fee_type_group
207
+ fee_type_id
208
+ from_date
209
+ to_date
210
+ period
211
+ include_cancelled_items
212
+ product_id
213
+ product_code
214
+ line_item_description
215
+ sort_order
216
+ current_page
217
+ page_size
218
+ ]
219
+ end
220
+
221
+ # An array for nullable fields
222
+ def self.nullables
223
+ %w[
224
+ col_co_id
225
+ col_co_code
226
+ payer_id
227
+ payer_number
228
+ card_id
229
+ card_pan
230
+ invoice_status
231
+ fee_type_group
232
+ fee_type_id
233
+ from_date
234
+ to_date
235
+ period
236
+ include_cancelled_items
237
+ product_id
238
+ product_code
239
+ line_item_description
240
+ sort_order
241
+ current_page
242
+ page_size
243
+ ]
244
+ end
245
+
246
+ def initialize(col_co_id = SKIP,
247
+ col_co_code = SKIP,
248
+ payer_id = SKIP,
249
+ payer_number = SKIP,
250
+ accounts = SKIP,
251
+ card_id = SKIP,
252
+ card_pan = SKIP,
253
+ invoice_status = SKIP,
254
+ fee_type_group = SKIP,
255
+ fee_type_id = SKIP,
256
+ from_date = SKIP,
257
+ to_date = SKIP,
258
+ period = SKIP,
259
+ include_cancelled_items = SKIP,
260
+ product_id = SKIP,
261
+ product_code = SKIP,
262
+ line_item_description = SKIP,
263
+ sort_order = SKIP,
264
+ current_page = SKIP,
265
+ page_size = SKIP)
266
+ @col_co_id = col_co_id unless col_co_id == SKIP
267
+ @col_co_code = col_co_code unless col_co_code == SKIP
268
+ @payer_id = payer_id unless payer_id == SKIP
269
+ @payer_number = payer_number unless payer_number == SKIP
270
+ @accounts = accounts unless accounts == SKIP
271
+ @card_id = card_id unless card_id == SKIP
272
+ @card_pan = card_pan unless card_pan == SKIP
273
+ @invoice_status = invoice_status unless invoice_status == SKIP
274
+ @fee_type_group = fee_type_group unless fee_type_group == SKIP
275
+ @fee_type_id = fee_type_id unless fee_type_id == SKIP
276
+ @from_date = from_date unless from_date == SKIP
277
+ @to_date = to_date unless to_date == SKIP
278
+ @period = period unless period == SKIP
279
+ @include_cancelled_items = include_cancelled_items unless include_cancelled_items == SKIP
280
+ @product_id = product_id unless product_id == SKIP
281
+ @product_code = product_code unless product_code == SKIP
282
+ @line_item_description = line_item_description unless line_item_description == SKIP
283
+ @sort_order = sort_order unless sort_order == SKIP
284
+ @current_page = current_page unless current_page == SKIP
285
+ @page_size = page_size unless page_size == SKIP
286
+ end
287
+
288
+ # Creates an instance of the object from a hash.
289
+ def self.from_hash(hash)
290
+ return nil unless hash
291
+
292
+ # Extract variables from the hash.
293
+ col_co_id = hash.key?('ColCoId') ? hash['ColCoId'] : SKIP
294
+ col_co_code = hash.key?('ColCoCode') ? hash['ColCoCode'] : SKIP
295
+ payer_id = hash.key?('PayerId') ? hash['PayerId'] : SKIP
296
+ payer_number = hash.key?('PayerNumber') ? hash['PayerNumber'] : SKIP
297
+ # Parameter is an array, so we need to iterate through it
298
+ accounts = nil
299
+ unless hash['Accounts'].nil?
300
+ accounts = []
301
+ hash['Accounts'].each do |structure|
302
+ accounts << (Accounts.from_hash(structure) if structure)
303
+ end
304
+ end
305
+
306
+ accounts = SKIP unless hash.key?('Accounts')
307
+ card_id = hash.key?('CardId') ? hash['CardId'] : SKIP
308
+ card_pan = hash.key?('CardPAN') ? hash['CardPAN'] : SKIP
309
+ invoice_status = hash.key?('InvoiceStatus') ? hash['InvoiceStatus'] : SKIP
310
+ fee_type_group = hash.key?('FeeTypeGroup') ? hash['FeeTypeGroup'] : SKIP
311
+ fee_type_id = hash.key?('FeeTypeId') ? hash['FeeTypeId'] : SKIP
312
+ from_date = hash.key?('FromDate') ? hash['FromDate'] : SKIP
313
+ to_date = hash.key?('ToDate') ? hash['ToDate'] : SKIP
314
+ period = hash.key?('Period') ? hash['Period'] : SKIP
315
+ include_cancelled_items =
316
+ hash.key?('IncludeCancelledItems') ? hash['IncludeCancelledItems'] : SKIP
317
+ product_id = hash.key?('ProductId') ? hash['ProductId'] : SKIP
318
+ product_code = hash.key?('ProductCode') ? hash['ProductCode'] : SKIP
319
+ line_item_description =
320
+ hash.key?('LineItemDescription') ? hash['LineItemDescription'] : SKIP
321
+ sort_order = hash.key?('SortOrder') ? hash['SortOrder'] : SKIP
322
+ current_page = hash.key?('CurrentPage') ? hash['CurrentPage'] : SKIP
323
+ page_size = hash.key?('PageSize') ? hash['PageSize'] : SKIP
324
+
325
+ # Create object from extracted values.
326
+ TransactionFeesRequest.new(col_co_id,
327
+ col_co_code,
328
+ payer_id,
329
+ payer_number,
330
+ accounts,
331
+ card_id,
332
+ card_pan,
333
+ invoice_status,
334
+ fee_type_group,
335
+ fee_type_id,
336
+ from_date,
337
+ to_date,
338
+ period,
339
+ include_cancelled_items,
340
+ product_id,
341
+ product_code,
342
+ line_item_description,
343
+ sort_order,
344
+ current_page,
345
+ page_size)
346
+ end
347
+ end
348
+ 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
+ # TransactionFeesResponse Model.
8
+ class TransactionFeesResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Array[FeeItem]]
14
+ attr_accessor :fee_items
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['fee_items'] = 'FeeItems'
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
+ fee_items
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(fee_items = SKIP,
68
+ current_page = SKIP,
69
+ row_count = SKIP,
70
+ total_pages = SKIP,
71
+ error = SKIP,
72
+ request_id = SKIP)
73
+ @fee_items = fee_items unless fee_items == 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
+ fee_items = nil
88
+ unless hash['FeeItems'].nil?
89
+ fee_items = []
90
+ hash['FeeItems'].each do |structure|
91
+ fee_items << (FeeItem.from_hash(structure) if structure)
92
+ end
93
+ end
94
+
95
+ fee_items = SKIP unless hash.key?('FeeItems')
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
+ TransactionFeesResponse.new(fee_items,
104
+ current_page,
105
+ row_count,
106
+ total_pages,
107
+ error,
108
+ request_id)
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,62 @@
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
+ # UpdateOdometer Model.
8
+ class UpdateOdometer < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Unique SalesItemId (Either Billed on Unbilled)
13
+ # Mandatory
14
+ # @return [String]
15
+ attr_accessor :sales_item_id
16
+
17
+ # NewOdometerValue that needs to be updated
18
+ # @return [Integer]
19
+ attr_accessor :new_odometer_value
20
+
21
+ # A mapping from model property names to API property names.
22
+ def self.names
23
+ @_hash = {} if @_hash.nil?
24
+ @_hash['sales_item_id'] = 'SalesItemId'
25
+ @_hash['new_odometer_value'] = 'NewOdometerValue'
26
+ @_hash
27
+ end
28
+
29
+ # An array for optional fields
30
+ def self.optionals
31
+ []
32
+ end
33
+
34
+ # An array for nullable fields
35
+ def self.nullables
36
+ %w[
37
+ sales_item_id
38
+ new_odometer_value
39
+ ]
40
+ end
41
+
42
+ def initialize(sales_item_id = nil,
43
+ new_odometer_value = nil)
44
+ @sales_item_id = sales_item_id
45
+ @new_odometer_value = new_odometer_value
46
+ end
47
+
48
+ # Creates an instance of the object from a hash.
49
+ def self.from_hash(hash)
50
+ return nil unless hash
51
+
52
+ # Extract variables from the hash.
53
+ sales_item_id = hash.key?('SalesItemId') ? hash['SalesItemId'] : nil
54
+ new_odometer_value =
55
+ hash.key?('NewOdometerValue') ? hash['NewOdometerValue'] : nil
56
+
57
+ # Create object from extracted values.
58
+ UpdateOdometer.new(sales_item_id,
59
+ new_odometer_value)
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,67 @@
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
+ # UpdateOdometerReference Model.
8
+ class UpdateOdometerReference < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # SalesItemId of input parameter
13
+ # @return [Integer]
14
+ attr_accessor :sales_item_id
15
+
16
+ # Reference number for each individual update odometer reference.
17
+ # @return [Integer]
18
+ attr_accessor :update_odometer_reference_id
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['sales_item_id'] = 'SalesItemId'
24
+ @_hash['update_odometer_reference_id'] = 'UpdateOdometerReferenceId'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ sales_item_id
32
+ update_odometer_reference_id
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ %w[
39
+ sales_item_id
40
+ update_odometer_reference_id
41
+ ]
42
+ end
43
+
44
+ def initialize(sales_item_id = SKIP,
45
+ update_odometer_reference_id = SKIP)
46
+ @sales_item_id = sales_item_id unless sales_item_id == SKIP
47
+ unless update_odometer_reference_id == SKIP
48
+ @update_odometer_reference_id =
49
+ update_odometer_reference_id
50
+ end
51
+ end
52
+
53
+ # Creates an instance of the object from a hash.
54
+ def self.from_hash(hash)
55
+ return nil unless hash
56
+
57
+ # Extract variables from the hash.
58
+ sales_item_id = hash.key?('SalesItemId') ? hash['SalesItemId'] : SKIP
59
+ update_odometer_reference_id =
60
+ hash.key?('UpdateOdometerReferenceId') ? hash['UpdateOdometerReferenceId'] : SKIP
61
+
62
+ # Create object from extracted values.
63
+ UpdateOdometerReference.new(sales_item_id,
64
+ update_odometer_reference_id)
65
+ end
66
+ end
67
+ end