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,281 @@
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
+ # CardUsageRestrictions Model.
8
+ class CardUsageRestrictions < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Describes at which level the restriction is set at.
13
+ # Possible values:
14
+ # OU = Restriction set at ColCo card type
15
+ # Customer = Restriction set at customer card type
16
+ # @return [String]
17
+ attr_accessor :level
18
+
19
+ # Maximum amount that can be spend on the card in a day.
20
+ # @return [Float]
21
+ attr_accessor :daily_spend_limit
22
+
23
+ # Maximum amount that can be spend on the card in a week.
24
+ # @return [Float]
25
+ attr_accessor :weekly_spend_limit
26
+
27
+ # Maximum amount that can be spend on the card in a month.
28
+ # @return [Float]
29
+ attr_accessor :monthly_spend_limit
30
+
31
+ # Maximum amount that can be spend on the card in a year.
32
+ # @return [Float]
33
+ attr_accessor :annual_spend_limit
34
+
35
+ # Maximum amount that can be spend on the card in the card’s life time.
36
+ # @return [Float]
37
+ attr_accessor :life_time_spend_limit
38
+
39
+ # Maximum volume of fuel that can be bought on the card in a day.
40
+ # @return [Float]
41
+ attr_accessor :daily_volume_limit
42
+
43
+ # Maximum volume of fuel that can be bought on the card in a week.
44
+ # @return [Float]
45
+ attr_accessor :weekly_volume_limit
46
+
47
+ # Maximum volume of fuel that can be bought on the card in a month.
48
+ # @return [Float]
49
+ attr_accessor :monthly_volume_limit
50
+
51
+ # Maximum volume of fuel that can be bought on the card in a year.
52
+ # @return [Float]
53
+ attr_accessor :annual_volume_limit
54
+
55
+ # Maximum volume of fuel that can be bought on the card in the card’s life
56
+ # time.
57
+ # @return [Float]
58
+ attr_accessor :life_time_volume_limit
59
+
60
+ # Maximum amount that can be spend on the card in a transaction.
61
+ # @return [Float]
62
+ attr_accessor :transaction_spend_limit
63
+
64
+ # Maximum volume of fuel that can be bought on the card in a transaction.
65
+ # @return [Float]
66
+ attr_accessor :transaction_volume_limit
67
+
68
+ # Maximum number of transactions allowed on a card in a day.
69
+ # @return [Float]
70
+ attr_accessor :daily_transaction_count
71
+
72
+ # Maximum number of transactions allowed on a card in a week.
73
+ # @return [Float]
74
+ attr_accessor :weekly_transaction_count
75
+
76
+ # Maximum number of transactions allowed on a card in a month.
77
+ # @return [Float]
78
+ attr_accessor :monthly_transaction_count
79
+
80
+ # Maximum number of transactions allowed on the card in a year.
81
+ # @return [Float]
82
+ attr_accessor :annual_transaction_count
83
+
84
+ # Maximum number of transactions allowed on the card in the card’s life
85
+ # time.
86
+ # @return [Float]
87
+ attr_accessor :life_time_transaction_count
88
+
89
+ # IsVelocityCeiling flag
90
+ # Note: When "True", the velocity defaults configured in MS DB will be
91
+ # considered as the Max Limits for velocity changes. When ‘false’ max
92
+ # allowed limits will be 999999999999 for Type “Count” and 9999999999.99 for
93
+ # Type ‘Value’.
94
+ # @return [TrueClass | FalseClass]
95
+ attr_accessor :is_velocity_ceiling
96
+
97
+ # A mapping from model property names to API property names.
98
+ def self.names
99
+ @_hash = {} if @_hash.nil?
100
+ @_hash['level'] = 'Level'
101
+ @_hash['daily_spend_limit'] = 'DailySpendLimit'
102
+ @_hash['weekly_spend_limit'] = 'WeeklySpendLimit'
103
+ @_hash['monthly_spend_limit'] = 'MonthlySpendLimit'
104
+ @_hash['annual_spend_limit'] = 'AnnualSpendLimit'
105
+ @_hash['life_time_spend_limit'] = 'LifeTimeSpendLimit'
106
+ @_hash['daily_volume_limit'] = 'DailyVolumeLimit'
107
+ @_hash['weekly_volume_limit'] = 'WeeklyVolumeLimit'
108
+ @_hash['monthly_volume_limit'] = 'MonthlyVolumeLimit'
109
+ @_hash['annual_volume_limit'] = 'AnnualVolumeLimit'
110
+ @_hash['life_time_volume_limit'] = 'LifeTimeVolumeLimit'
111
+ @_hash['transaction_spend_limit'] = 'TransactionSpendLimit'
112
+ @_hash['transaction_volume_limit'] = 'TransactionVolumeLimit'
113
+ @_hash['daily_transaction_count'] = 'DailyTransactionCount'
114
+ @_hash['weekly_transaction_count'] = 'WeeklyTransactionCount'
115
+ @_hash['monthly_transaction_count'] = 'MonthlyTransactionCount'
116
+ @_hash['annual_transaction_count'] = 'AnnualTransactionCount'
117
+ @_hash['life_time_transaction_count'] = 'LifeTimeTransactionCount'
118
+ @_hash['is_velocity_ceiling'] = 'IsVelocityCeiling'
119
+ @_hash
120
+ end
121
+
122
+ # An array for optional fields
123
+ def self.optionals
124
+ %w[
125
+ level
126
+ daily_spend_limit
127
+ weekly_spend_limit
128
+ monthly_spend_limit
129
+ annual_spend_limit
130
+ life_time_spend_limit
131
+ daily_volume_limit
132
+ weekly_volume_limit
133
+ monthly_volume_limit
134
+ annual_volume_limit
135
+ life_time_volume_limit
136
+ transaction_spend_limit
137
+ transaction_volume_limit
138
+ daily_transaction_count
139
+ weekly_transaction_count
140
+ monthly_transaction_count
141
+ annual_transaction_count
142
+ life_time_transaction_count
143
+ is_velocity_ceiling
144
+ ]
145
+ end
146
+
147
+ # An array for nullable fields
148
+ def self.nullables
149
+ %w[
150
+ level
151
+ daily_spend_limit
152
+ weekly_spend_limit
153
+ monthly_spend_limit
154
+ annual_spend_limit
155
+ life_time_spend_limit
156
+ daily_volume_limit
157
+ weekly_volume_limit
158
+ monthly_volume_limit
159
+ annual_volume_limit
160
+ life_time_volume_limit
161
+ transaction_spend_limit
162
+ transaction_volume_limit
163
+ daily_transaction_count
164
+ weekly_transaction_count
165
+ monthly_transaction_count
166
+ annual_transaction_count
167
+ life_time_transaction_count
168
+ ]
169
+ end
170
+
171
+ def initialize(level = SKIP,
172
+ daily_spend_limit = SKIP,
173
+ weekly_spend_limit = SKIP,
174
+ monthly_spend_limit = SKIP,
175
+ annual_spend_limit = SKIP,
176
+ life_time_spend_limit = SKIP,
177
+ daily_volume_limit = SKIP,
178
+ weekly_volume_limit = SKIP,
179
+ monthly_volume_limit = SKIP,
180
+ annual_volume_limit = 0,
181
+ life_time_volume_limit = SKIP,
182
+ transaction_spend_limit = SKIP,
183
+ transaction_volume_limit = SKIP,
184
+ daily_transaction_count = SKIP,
185
+ weekly_transaction_count = SKIP,
186
+ monthly_transaction_count = SKIP,
187
+ annual_transaction_count = SKIP,
188
+ life_time_transaction_count = SKIP,
189
+ is_velocity_ceiling = SKIP)
190
+ @level = level unless level == SKIP
191
+ @daily_spend_limit = daily_spend_limit unless daily_spend_limit == SKIP
192
+ @weekly_spend_limit = weekly_spend_limit unless weekly_spend_limit == SKIP
193
+ @monthly_spend_limit = monthly_spend_limit unless monthly_spend_limit == SKIP
194
+ @annual_spend_limit = annual_spend_limit unless annual_spend_limit == SKIP
195
+ @life_time_spend_limit = life_time_spend_limit unless life_time_spend_limit == SKIP
196
+ @daily_volume_limit = daily_volume_limit unless daily_volume_limit == SKIP
197
+ @weekly_volume_limit = weekly_volume_limit unless weekly_volume_limit == SKIP
198
+ @monthly_volume_limit = monthly_volume_limit unless monthly_volume_limit == SKIP
199
+ @annual_volume_limit = annual_volume_limit unless annual_volume_limit == SKIP
200
+ @life_time_volume_limit = life_time_volume_limit unless life_time_volume_limit == SKIP
201
+ @transaction_spend_limit = transaction_spend_limit unless transaction_spend_limit == SKIP
202
+ @transaction_volume_limit = transaction_volume_limit unless transaction_volume_limit == SKIP
203
+ @daily_transaction_count = daily_transaction_count unless daily_transaction_count == SKIP
204
+ @weekly_transaction_count = weekly_transaction_count unless weekly_transaction_count == SKIP
205
+ unless monthly_transaction_count == SKIP
206
+ @monthly_transaction_count =
207
+ monthly_transaction_count
208
+ end
209
+ @annual_transaction_count = annual_transaction_count unless annual_transaction_count == SKIP
210
+ unless life_time_transaction_count == SKIP
211
+ @life_time_transaction_count =
212
+ life_time_transaction_count
213
+ end
214
+ @is_velocity_ceiling = is_velocity_ceiling unless is_velocity_ceiling == SKIP
215
+ end
216
+
217
+ # Creates an instance of the object from a hash.
218
+ def self.from_hash(hash)
219
+ return nil unless hash
220
+
221
+ # Extract variables from the hash.
222
+ level = hash.key?('Level') ? hash['Level'] : SKIP
223
+ daily_spend_limit =
224
+ hash.key?('DailySpendLimit') ? hash['DailySpendLimit'] : SKIP
225
+ weekly_spend_limit =
226
+ hash.key?('WeeklySpendLimit') ? hash['WeeklySpendLimit'] : SKIP
227
+ monthly_spend_limit =
228
+ hash.key?('MonthlySpendLimit') ? hash['MonthlySpendLimit'] : SKIP
229
+ annual_spend_limit =
230
+ hash.key?('AnnualSpendLimit') ? hash['AnnualSpendLimit'] : SKIP
231
+ life_time_spend_limit =
232
+ hash.key?('LifeTimeSpendLimit') ? hash['LifeTimeSpendLimit'] : SKIP
233
+ daily_volume_limit =
234
+ hash.key?('DailyVolumeLimit') ? hash['DailyVolumeLimit'] : SKIP
235
+ weekly_volume_limit =
236
+ hash.key?('WeeklyVolumeLimit') ? hash['WeeklyVolumeLimit'] : SKIP
237
+ monthly_volume_limit =
238
+ hash.key?('MonthlyVolumeLimit') ? hash['MonthlyVolumeLimit'] : SKIP
239
+ annual_volume_limit = hash['AnnualVolumeLimit'] ||= 0
240
+ life_time_volume_limit =
241
+ hash.key?('LifeTimeVolumeLimit') ? hash['LifeTimeVolumeLimit'] : SKIP
242
+ transaction_spend_limit =
243
+ hash.key?('TransactionSpendLimit') ? hash['TransactionSpendLimit'] : SKIP
244
+ transaction_volume_limit =
245
+ hash.key?('TransactionVolumeLimit') ? hash['TransactionVolumeLimit'] : SKIP
246
+ daily_transaction_count =
247
+ hash.key?('DailyTransactionCount') ? hash['DailyTransactionCount'] : SKIP
248
+ weekly_transaction_count =
249
+ hash.key?('WeeklyTransactionCount') ? hash['WeeklyTransactionCount'] : SKIP
250
+ monthly_transaction_count =
251
+ hash.key?('MonthlyTransactionCount') ? hash['MonthlyTransactionCount'] : SKIP
252
+ annual_transaction_count =
253
+ hash.key?('AnnualTransactionCount') ? hash['AnnualTransactionCount'] : SKIP
254
+ life_time_transaction_count =
255
+ hash.key?('LifeTimeTransactionCount') ? hash['LifeTimeTransactionCount'] : SKIP
256
+ is_velocity_ceiling =
257
+ hash.key?('IsVelocityCeiling') ? hash['IsVelocityCeiling'] : SKIP
258
+
259
+ # Create object from extracted values.
260
+ CardUsageRestrictions.new(level,
261
+ daily_spend_limit,
262
+ weekly_spend_limit,
263
+ monthly_spend_limit,
264
+ annual_spend_limit,
265
+ life_time_spend_limit,
266
+ daily_volume_limit,
267
+ weekly_volume_limit,
268
+ monthly_volume_limit,
269
+ annual_volume_limit,
270
+ life_time_volume_limit,
271
+ transaction_spend_limit,
272
+ transaction_volume_limit,
273
+ daily_transaction_count,
274
+ weekly_transaction_count,
275
+ monthly_transaction_count,
276
+ annual_transaction_count,
277
+ life_time_transaction_count,
278
+ is_velocity_ceiling)
279
+ end
280
+ end
281
+ end
@@ -0,0 +1,159 @@
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
+ # CardUsageSummaryRequest Model.
8
+ class CardUsageSummaryRequest < 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
+ # Account ID of the customer.
40
+ # Optional if account number is passed else mandatory.
41
+ # @return [Integer]
42
+ attr_accessor :account_id
43
+
44
+ # Account Number of the customer.
45
+ # Optional if Account ID is passed else mandatory.
46
+ # @return [String]
47
+ attr_accessor :account_number
48
+
49
+ # Card Id of the card.
50
+ # Optional if PAN is passed, else Mandatory.
51
+ # @return [Integer]
52
+ attr_accessor :card_id
53
+
54
+ # PAN of the card.
55
+ # Optional if CardId is passed, else Mandatory.
56
+ # @return [String]
57
+ attr_accessor :pan
58
+
59
+ # Expiry date of the card.
60
+ # Mandatory if Card ID is not provided, else optional.
61
+ # Format: yyyyMMdd
62
+ # Example: 20170930
63
+ # @return [String]
64
+ attr_accessor :card_expiry_date
65
+
66
+ # A mapping from model property names to API property names.
67
+ def self.names
68
+ @_hash = {} if @_hash.nil?
69
+ @_hash['col_co_id'] = 'ColCoId'
70
+ @_hash['col_co_code'] = 'ColCoCode'
71
+ @_hash['payer_id'] = 'PayerId'
72
+ @_hash['payer_number'] = 'PayerNumber'
73
+ @_hash['account_id'] = 'AccountId'
74
+ @_hash['account_number'] = 'AccountNumber'
75
+ @_hash['card_id'] = 'CardId'
76
+ @_hash['pan'] = 'PAN'
77
+ @_hash['card_expiry_date'] = 'CardExpiryDate'
78
+ @_hash
79
+ end
80
+
81
+ # An array for optional fields
82
+ def self.optionals
83
+ %w[
84
+ col_co_id
85
+ col_co_code
86
+ payer_id
87
+ payer_number
88
+ account_id
89
+ account_number
90
+ card_id
91
+ pan
92
+ card_expiry_date
93
+ ]
94
+ end
95
+
96
+ # An array for nullable fields
97
+ def self.nullables
98
+ %w[
99
+ col_co_id
100
+ col_co_code
101
+ payer_id
102
+ payer_number
103
+ account_id
104
+ account_number
105
+ card_id
106
+ pan
107
+ card_expiry_date
108
+ ]
109
+ end
110
+
111
+ def initialize(col_co_id = SKIP,
112
+ col_co_code = SKIP,
113
+ payer_id = SKIP,
114
+ payer_number = SKIP,
115
+ account_id = SKIP,
116
+ account_number = SKIP,
117
+ card_id = SKIP,
118
+ pan = SKIP,
119
+ card_expiry_date = SKIP)
120
+ @col_co_id = col_co_id unless col_co_id == SKIP
121
+ @col_co_code = col_co_code unless col_co_code == SKIP
122
+ @payer_id = payer_id unless payer_id == SKIP
123
+ @payer_number = payer_number unless payer_number == SKIP
124
+ @account_id = account_id unless account_id == SKIP
125
+ @account_number = account_number unless account_number == SKIP
126
+ @card_id = card_id unless card_id == SKIP
127
+ @pan = pan unless pan == SKIP
128
+ @card_expiry_date = card_expiry_date unless card_expiry_date == SKIP
129
+ end
130
+
131
+ # Creates an instance of the object from a hash.
132
+ def self.from_hash(hash)
133
+ return nil unless hash
134
+
135
+ # Extract variables from the hash.
136
+ col_co_id = hash.key?('ColCoId') ? hash['ColCoId'] : SKIP
137
+ col_co_code = hash.key?('ColCoCode') ? hash['ColCoCode'] : SKIP
138
+ payer_id = hash.key?('PayerId') ? hash['PayerId'] : SKIP
139
+ payer_number = hash.key?('PayerNumber') ? hash['PayerNumber'] : SKIP
140
+ account_id = hash.key?('AccountId') ? hash['AccountId'] : SKIP
141
+ account_number = hash.key?('AccountNumber') ? hash['AccountNumber'] : SKIP
142
+ card_id = hash.key?('CardId') ? hash['CardId'] : SKIP
143
+ pan = hash.key?('PAN') ? hash['PAN'] : SKIP
144
+ card_expiry_date =
145
+ hash.key?('CardExpiryDate') ? hash['CardExpiryDate'] : SKIP
146
+
147
+ # Create object from extracted values.
148
+ CardUsageSummaryRequest.new(col_co_id,
149
+ col_co_code,
150
+ payer_id,
151
+ payer_number,
152
+ account_id,
153
+ account_number,
154
+ card_id,
155
+ pan,
156
+ card_expiry_date)
157
+ end
158
+ end
159
+ end
@@ -0,0 +1,79 @@
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
+ # CardUsageSummaryResponse Model.
8
+ class CardUsageSummaryResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Array[UsageSummary]]
14
+ attr_accessor :usage_summary
15
+
16
+ # API Request Id
17
+ # @return [String]
18
+ attr_accessor :request_id
19
+
20
+ # API Request Id
21
+ # @return [ErrorStatus]
22
+ attr_accessor :error
23
+
24
+ # A mapping from model property names to API property names.
25
+ def self.names
26
+ @_hash = {} if @_hash.nil?
27
+ @_hash['usage_summary'] = 'UsageSummary'
28
+ @_hash['request_id'] = 'RequestId'
29
+ @_hash['error'] = 'Error'
30
+ @_hash
31
+ end
32
+
33
+ # An array for optional fields
34
+ def self.optionals
35
+ %w[
36
+ usage_summary
37
+ request_id
38
+ error
39
+ ]
40
+ end
41
+
42
+ # An array for nullable fields
43
+ def self.nullables
44
+ []
45
+ end
46
+
47
+ def initialize(usage_summary = SKIP,
48
+ request_id = SKIP,
49
+ error = SKIP)
50
+ @usage_summary = usage_summary unless usage_summary == SKIP
51
+ @request_id = request_id unless request_id == SKIP
52
+ @error = error unless error == SKIP
53
+ end
54
+
55
+ # Creates an instance of the object from a hash.
56
+ def self.from_hash(hash)
57
+ return nil unless hash
58
+
59
+ # Extract variables from the hash.
60
+ # Parameter is an array, so we need to iterate through it
61
+ usage_summary = nil
62
+ unless hash['UsageSummary'].nil?
63
+ usage_summary = []
64
+ hash['UsageSummary'].each do |structure|
65
+ usage_summary << (UsageSummary.from_hash(structure) if structure)
66
+ end
67
+ end
68
+
69
+ usage_summary = SKIP unless hash.key?('UsageSummary')
70
+ request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
71
+ error = ErrorStatus.from_hash(hash['Error']) if hash['Error']
72
+
73
+ # Create object from extracted values.
74
+ CardUsageSummaryResponse.new(usage_summary,
75
+ request_id,
76
+ error)
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,88 @@
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
+ # ColCoAccess Model.
8
+ class ColCoAccess < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Collecting company ID.
13
+ # @return [String]
14
+ attr_accessor :col_co_id
15
+
16
+ # Collecting company code.
17
+ # @return [String]
18
+ attr_accessor :col_co_code
19
+
20
+ # Collecting company’s Country name. ex: United Kingdom
21
+ # @return [String]
22
+ attr_accessor :col_co_country_name
23
+
24
+ # Issuing Country Number.
25
+ # ex: 032 - Czech Republic
26
+ # @return [String]
27
+ attr_accessor :issuing_country_number
28
+
29
+ # A mapping from model property names to API property names.
30
+ def self.names
31
+ @_hash = {} if @_hash.nil?
32
+ @_hash['col_co_id'] = 'ColCoId'
33
+ @_hash['col_co_code'] = 'ColCoCode'
34
+ @_hash['col_co_country_name'] = 'ColCoCountryName'
35
+ @_hash['issuing_country_number'] = 'IssuingCountryNumber'
36
+ @_hash
37
+ end
38
+
39
+ # An array for optional fields
40
+ def self.optionals
41
+ %w[
42
+ col_co_id
43
+ col_co_code
44
+ col_co_country_name
45
+ issuing_country_number
46
+ ]
47
+ end
48
+
49
+ # An array for nullable fields
50
+ def self.nullables
51
+ %w[
52
+ col_co_id
53
+ col_co_code
54
+ col_co_country_name
55
+ issuing_country_number
56
+ ]
57
+ end
58
+
59
+ def initialize(col_co_id = SKIP,
60
+ col_co_code = SKIP,
61
+ col_co_country_name = SKIP,
62
+ issuing_country_number = SKIP)
63
+ @col_co_id = col_co_id unless col_co_id == SKIP
64
+ @col_co_code = col_co_code unless col_co_code == SKIP
65
+ @col_co_country_name = col_co_country_name unless col_co_country_name == SKIP
66
+ @issuing_country_number = issuing_country_number unless issuing_country_number == SKIP
67
+ end
68
+
69
+ # Creates an instance of the object from a hash.
70
+ def self.from_hash(hash)
71
+ return nil unless hash
72
+
73
+ # Extract variables from the hash.
74
+ col_co_id = hash.key?('ColCoId') ? hash['ColCoId'] : SKIP
75
+ col_co_code = hash.key?('ColCoCode') ? hash['ColCoCode'] : SKIP
76
+ col_co_country_name =
77
+ hash.key?('ColCoCountryName') ? hash['ColCoCountryName'] : SKIP
78
+ issuing_country_number =
79
+ hash.key?('IssuingCountryNumber') ? hash['IssuingCountryNumber'] : SKIP
80
+
81
+ # Create object from extracted values.
82
+ ColCoAccess.new(col_co_id,
83
+ col_co_code,
84
+ col_co_country_name,
85
+ issuing_country_number)
86
+ end
87
+ end
88
+ end