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,267 @@
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
+ # TransactionExceptionsRequest Model.
8
+ class TransactionExceptionsRequest < 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 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
+ # @return [Integer]
32
+ attr_accessor :payer_id
33
+
34
+ # Payer Number of the selected payer.
35
+ # Optional if PayerId is passed else Mandatory
36
+ # @return [String]
37
+ attr_accessor :payer_number
38
+
39
+ # Payer Number of the selected payer.
40
+ # Optional if PayerId is passed else Mandatory
41
+ # @return [Array[Accounts]]
42
+ attr_accessor :accounts
43
+
44
+ # Exceptions to be searched in transactions from date.
45
+ # Should be with in last 24 months from the ToDate parameter.
46
+ # Mandatory
47
+ # Format: yyyyMMdd
48
+ # @return [String]
49
+ attr_accessor :transactions_from_date
50
+
51
+ # Exceptions to be searched in transactions until date.
52
+ # Mandatory.
53
+ # Format: yyyyMMdd
54
+ # @return [String]
55
+ attr_accessor :transactions_to_date
56
+
57
+ # Value to be used on the Filter Condition
58
+ # @return [Float]
59
+ attr_accessor :value
60
+
61
+ # Filter condition for the Exceptions.
62
+ # Mandatory
63
+ # 1. VolumeGreaterThan
64
+ # 2. VolumeLessThan
65
+ # 3. UsageGreaterThan
66
+ # 4. UsageLessThan
67
+ # 5. ValueGreaterThan (in Customer Currency)
68
+ # 6. ValueLessThan (in Customer Currency)
69
+ # Note: -
70
+ # When “OutputType” = 1 is passed as input, above 3 and 4 Condition are not
71
+ # applicable.
72
+ # @return [Integer]
73
+ attr_accessor :condition
74
+
75
+ # Filter condition for the Exceptions.
76
+ # Mandatory
77
+ # 1. VolumeGreaterThan
78
+ # 2. VolumeLessThan
79
+ # 3. UsageGreaterThan
80
+ # 4. UsageLessThan
81
+ # 5. ValueGreaterThan (in Customer Currency)
82
+ # 6. ValueLessThan (in Customer Currency)
83
+ # Note: -
84
+ # When “OutputType” = 1 is passed as input, above 3 and 4 Condition are not
85
+ # applicable.
86
+ # @return [Array[ExceptionProduct]]
87
+ attr_accessor :products
88
+
89
+ # Period in which the Exceptions such as Monthly/Weekly or Daily volume,
90
+ # value or usage to be identified in the given transactions date range. It
91
+ # is only applied when the Output Type is specified as "Cards".
92
+ # Mandatory when Output Type is Cards
93
+ # 1. Month
94
+ # 2. Week
95
+ # 3. Day
96
+ # 4. Date Range
97
+ # @return [Integer]
98
+ attr_accessor :exception_period
99
+
100
+ # Output Type for Exceptions.
101
+ # Mandatory.
102
+ # Possible values:
103
+ # 1. Transactions
104
+ # 2. Cards
105
+ # @return [Integer]
106
+ attr_accessor :output_type
107
+
108
+ # True/False
109
+ # Optional
110
+ # Default value: False.
111
+ # When passed as ‘True’ Only returned records with Fuel transactions.
112
+ # When passed as ‘False’ the above condition will not be checked.
113
+ # @return [TrueClass | FalseClass]
114
+ attr_accessor :fuel_only
115
+
116
+ # SiteGroupIds to be applied to the Filter Condition.
117
+ # Optional
118
+ # When not passed, ignored.
119
+ # When passed, transactions that are matching with the provided list of site
120
+ # group id’s are only returned.
121
+ # @return [Array[Integer]]
122
+ attr_accessor :site_group_ids
123
+
124
+ # True/False
125
+ # Optional
126
+ # Default value – False.
127
+ # When set to True, the property names in the output will be replaced by
128
+ # Field IDs.
129
+ # @return [TrueClass | FalseClass]
130
+ attr_accessor :use_field_id
131
+
132
+ # A mapping from model property names to API property names.
133
+ def self.names
134
+ @_hash = {} if @_hash.nil?
135
+ @_hash['col_co_id'] = 'ColCoId'
136
+ @_hash['col_co_code'] = 'ColCoCode'
137
+ @_hash['payer_id'] = 'PayerId'
138
+ @_hash['payer_number'] = 'PayerNumber'
139
+ @_hash['accounts'] = 'Accounts'
140
+ @_hash['transactions_from_date'] = 'TransactionsFromDate'
141
+ @_hash['transactions_to_date'] = 'TransactionsToDate'
142
+ @_hash['value'] = 'Value'
143
+ @_hash['condition'] = 'Condition'
144
+ @_hash['products'] = 'Products'
145
+ @_hash['exception_period'] = 'ExceptionPeriod'
146
+ @_hash['output_type'] = 'OutputType'
147
+ @_hash['fuel_only'] = 'FuelOnly'
148
+ @_hash['site_group_ids'] = 'SiteGroupIds'
149
+ @_hash['use_field_id'] = 'UseFieldId'
150
+ @_hash
151
+ end
152
+
153
+ # An array for optional fields
154
+ def self.optionals
155
+ %w[
156
+ col_co_id
157
+ col_co_code
158
+ payer_id
159
+ payer_number
160
+ accounts
161
+ value
162
+ products
163
+ exception_period
164
+ fuel_only
165
+ site_group_ids
166
+ use_field_id
167
+ ]
168
+ end
169
+
170
+ # An array for nullable fields
171
+ def self.nullables
172
+ []
173
+ end
174
+
175
+ def initialize(transactions_from_date = nil,
176
+ transactions_to_date = nil,
177
+ condition = nil,
178
+ output_type = nil,
179
+ col_co_id = SKIP,
180
+ col_co_code = SKIP,
181
+ payer_id = SKIP,
182
+ payer_number = SKIP,
183
+ accounts = SKIP,
184
+ value = SKIP,
185
+ products = SKIP,
186
+ exception_period = SKIP,
187
+ fuel_only = SKIP,
188
+ site_group_ids = SKIP,
189
+ use_field_id = SKIP)
190
+ @col_co_id = col_co_id unless col_co_id == SKIP
191
+ @col_co_code = col_co_code unless col_co_code == SKIP
192
+ @payer_id = payer_id unless payer_id == SKIP
193
+ @payer_number = payer_number unless payer_number == SKIP
194
+ @accounts = accounts unless accounts == SKIP
195
+ @transactions_from_date = transactions_from_date
196
+ @transactions_to_date = transactions_to_date
197
+ @value = value unless value == SKIP
198
+ @condition = condition
199
+ @products = products unless products == SKIP
200
+ @exception_period = exception_period unless exception_period == SKIP
201
+ @output_type = output_type
202
+ @fuel_only = fuel_only unless fuel_only == SKIP
203
+ @site_group_ids = site_group_ids unless site_group_ids == SKIP
204
+ @use_field_id = use_field_id unless use_field_id == SKIP
205
+ end
206
+
207
+ # Creates an instance of the object from a hash.
208
+ def self.from_hash(hash)
209
+ return nil unless hash
210
+
211
+ # Extract variables from the hash.
212
+ transactions_from_date =
213
+ hash.key?('TransactionsFromDate') ? hash['TransactionsFromDate'] : nil
214
+ transactions_to_date =
215
+ hash.key?('TransactionsToDate') ? hash['TransactionsToDate'] : nil
216
+ condition = hash.key?('Condition') ? hash['Condition'] : nil
217
+ output_type = hash.key?('OutputType') ? hash['OutputType'] : nil
218
+ col_co_id = hash.key?('ColCoId') ? hash['ColCoId'] : SKIP
219
+ col_co_code = hash.key?('ColCoCode') ? hash['ColCoCode'] : SKIP
220
+ payer_id = hash.key?('PayerId') ? hash['PayerId'] : SKIP
221
+ payer_number = hash.key?('PayerNumber') ? hash['PayerNumber'] : SKIP
222
+ # Parameter is an array, so we need to iterate through it
223
+ accounts = nil
224
+ unless hash['Accounts'].nil?
225
+ accounts = []
226
+ hash['Accounts'].each do |structure|
227
+ accounts << (Accounts.from_hash(structure) if structure)
228
+ end
229
+ end
230
+
231
+ accounts = SKIP unless hash.key?('Accounts')
232
+ value = hash.key?('Value') ? hash['Value'] : SKIP
233
+ # Parameter is an array, so we need to iterate through it
234
+ products = nil
235
+ unless hash['Products'].nil?
236
+ products = []
237
+ hash['Products'].each do |structure|
238
+ products << (ExceptionProduct.from_hash(structure) if structure)
239
+ end
240
+ end
241
+
242
+ products = SKIP unless hash.key?('Products')
243
+ exception_period =
244
+ hash.key?('ExceptionPeriod') ? hash['ExceptionPeriod'] : SKIP
245
+ fuel_only = hash.key?('FuelOnly') ? hash['FuelOnly'] : SKIP
246
+ site_group_ids = hash.key?('SiteGroupIds') ? hash['SiteGroupIds'] : SKIP
247
+ use_field_id = hash.key?('UseFieldId') ? hash['UseFieldId'] : SKIP
248
+
249
+ # Create object from extracted values.
250
+ TransactionExceptionsRequest.new(transactions_from_date,
251
+ transactions_to_date,
252
+ condition,
253
+ output_type,
254
+ col_co_id,
255
+ col_co_code,
256
+ payer_id,
257
+ payer_number,
258
+ accounts,
259
+ value,
260
+ products,
261
+ exception_period,
262
+ fuel_only,
263
+ site_group_ids,
264
+ use_field_id)
265
+ end
266
+ end
267
+ end
@@ -0,0 +1,100 @@
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
+ # TransactionExceptionsResponse Model.
8
+ class TransactionExceptionsResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Array[CardExceptions]]
14
+ attr_accessor :card_exceptions
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [Array[TransactionExceptions]]
18
+ attr_accessor :transaction_exceptions
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [ErrorStatus]
22
+ attr_accessor :error
23
+
24
+ # API Request Id
25
+ # @return [String]
26
+ attr_accessor :request_id
27
+
28
+ # A mapping from model property names to API property names.
29
+ def self.names
30
+ @_hash = {} if @_hash.nil?
31
+ @_hash['card_exceptions'] = 'CardExceptions'
32
+ @_hash['transaction_exceptions'] = 'TransactionExceptions'
33
+ @_hash['error'] = 'Error'
34
+ @_hash['request_id'] = 'RequestId'
35
+ @_hash
36
+ end
37
+
38
+ # An array for optional fields
39
+ def self.optionals
40
+ %w[
41
+ card_exceptions
42
+ transaction_exceptions
43
+ error
44
+ request_id
45
+ ]
46
+ end
47
+
48
+ # An array for nullable fields
49
+ def self.nullables
50
+ %w[
51
+ transaction_exceptions
52
+ ]
53
+ end
54
+
55
+ def initialize(card_exceptions = SKIP,
56
+ transaction_exceptions = SKIP,
57
+ error = SKIP,
58
+ request_id = SKIP)
59
+ @card_exceptions = card_exceptions unless card_exceptions == SKIP
60
+ @transaction_exceptions = transaction_exceptions unless transaction_exceptions == SKIP
61
+ @error = error unless error == SKIP
62
+ @request_id = request_id unless request_id == SKIP
63
+ end
64
+
65
+ # Creates an instance of the object from a hash.
66
+ def self.from_hash(hash)
67
+ return nil unless hash
68
+
69
+ # Extract variables from the hash.
70
+ # Parameter is an array, so we need to iterate through it
71
+ card_exceptions = nil
72
+ unless hash['CardExceptions'].nil?
73
+ card_exceptions = []
74
+ hash['CardExceptions'].each do |structure|
75
+ card_exceptions << (CardExceptions.from_hash(structure) if structure)
76
+ end
77
+ end
78
+
79
+ card_exceptions = SKIP unless hash.key?('CardExceptions')
80
+ # Parameter is an array, so we need to iterate through it
81
+ transaction_exceptions = nil
82
+ unless hash['TransactionExceptions'].nil?
83
+ transaction_exceptions = []
84
+ hash['TransactionExceptions'].each do |structure|
85
+ transaction_exceptions << (TransactionExceptions.from_hash(structure) if structure)
86
+ end
87
+ end
88
+
89
+ transaction_exceptions = SKIP unless hash.key?('TransactionExceptions')
90
+ error = ErrorStatus.from_hash(hash['Error']) if hash['Error']
91
+ request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
92
+
93
+ # Create object from extracted values.
94
+ TransactionExceptionsResponse.new(card_exceptions,
95
+ transaction_exceptions,
96
+ error,
97
+ request_id)
98
+ end
99
+ end
100
+ end