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,444 @@
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
+ # BonusHistory Model.
8
+ class BonusHistory < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Payer Id
13
+ # @return [Integer]
14
+ attr_accessor :payer_id
15
+
16
+ # Payer Number of the selected payer
17
+ # @return [String]
18
+ attr_accessor :payer_number
19
+
20
+ # Payer short name.
21
+ # @return [String]
22
+ attr_accessor :payer_short_name
23
+
24
+ # Payer full name.
25
+ # @return [String]
26
+ attr_accessor :payer_full_name
27
+
28
+ # Account Id
29
+ # @return [Integer]
30
+ attr_accessor :account_id
31
+
32
+ # Account Number of the selected payer.
33
+ # @return [String]
34
+ attr_accessor :account_number
35
+
36
+ # Account short name.
37
+ # @return [String]
38
+ attr_accessor :account_short_name
39
+
40
+ # Account full name.
41
+ # @return [String]
42
+ attr_accessor :account_full_name
43
+
44
+ # Invoice Account Id
45
+ # @return [Integer]
46
+ attr_accessor :invoice_account_id
47
+
48
+ # Invoice Account Number of the selected payer.
49
+ # @return [String]
50
+ attr_accessor :invoice_account_number
51
+
52
+ # Invoice Account short name.
53
+ # @return [String]
54
+ attr_accessor :invoice_account_short_name
55
+
56
+ # Invoice Account full name.
57
+ # @return [String]
58
+ attr_accessor :invoice_account_full_name
59
+
60
+ # Bonus or association bonus configuration identifier
61
+ # @return [String]
62
+ attr_accessor :fee_rule_id
63
+
64
+ # Bonus or association bonus configuration description that is associated to
65
+ # the bonus fee item
66
+ # @return [String]
67
+ attr_accessor :fee_rule_description
68
+
69
+ # Bonus was calculated from this date.
70
+ # Format: YYYYMMDD
71
+ # @return [String]
72
+ attr_accessor :from_date
73
+
74
+ # Bonus was calculated till this date.
75
+ # Format: YYYYMMDD
76
+ # @return [String]
77
+ attr_accessor :to_date
78
+
79
+ # Specifies how the bonus was paid back.
80
+ # Format: ID-Description
81
+ # Example:
82
+ # 1-Pay to Payer
83
+ # 2-Pay to invoice levels before the payer
84
+ # 3-Pay to specific customer
85
+ # 4-Pay to Association Customer
86
+ # 5-Pay to Associated Customers
87
+ # @return [String]
88
+ attr_accessor :bonus_paid_to
89
+
90
+ # Bonus fee item identifier.
91
+ # @return [Integer]
92
+ attr_accessor :fee_item_id
93
+
94
+ # Fee Rule Basis of the bonus fee item.
95
+ # Format: ID-Description
96
+ # Example:
97
+ # 1-Currency Per Unit
98
+ # 2-Percentage of Uplift
99
+ # 3-Lump Sum
100
+ # @return [String]
101
+ attr_accessor :fee_rule_basis
102
+
103
+ # ISO currency code of the currency in which Bonus is paid.
104
+ # Example: GBP
105
+ # @return [String]
106
+ attr_accessor :fee_item_currency_code
107
+
108
+ # Currency symbol of the currency in which Bonus is paid.
109
+ # @return [String]
110
+ attr_accessor :fee_item_currency_symbol
111
+
112
+ # Prorated volume considered under the account as configured for the bonus
113
+ # association.
114
+ # @return [Float]
115
+ attr_accessor :prorated_volume
116
+
117
+ # Total volume considered for calculating the bonus.
118
+ # @return [Float]
119
+ attr_accessor :total_volume
120
+
121
+ # Product as shown in the invoice for the bonus paid.
122
+ # Format: ID-Description
123
+ # Example: 1562-Bonus diesel Shell Netherlands on agreed site(s)
124
+ # @return [String]
125
+ attr_accessor :fee_product
126
+
127
+ # Gross Amount – Bonus Paid including VAT as shown on the Invoice
128
+ # @return [Float]
129
+ attr_accessor :invoice_gross_amount
130
+
131
+ # Net Amount – Bonus Paid excluding VAT as shown on the Invoice
132
+ # @return [Float]
133
+ attr_accessor :invoice_net_amount
134
+
135
+ # VAT calculated for the bonus paid as shown on the Invoice
136
+ # @return [Float]
137
+ attr_accessor :invoice_vat_amount
138
+
139
+ # True/False
140
+ # True if bonus is generated but cancelled. When true, consider this as not
141
+ # paid.
142
+ # @return [TrueClass | FalseClass]
143
+ attr_accessor :is_fee_cancelled
144
+
145
+ # Prorated volume in the bonus fee item tier.
146
+ # @return [Float]
147
+ attr_accessor :fee_item_tier_prorated_volume
148
+
149
+ # Total volume in the bonus fee item tier.
150
+ # @return [Float]
151
+ attr_accessor :fee_item_tier_total_volume
152
+
153
+ # Tier minimum value considered for calculation
154
+ # @return [Integer]
155
+ attr_accessor :tier_minimum
156
+
157
+ # Tier rate considered for calculation
158
+ # @return [Float]
159
+ attr_accessor :tier_rate
160
+
161
+ # A mapping from model property names to API property names.
162
+ def self.names
163
+ @_hash = {} if @_hash.nil?
164
+ @_hash['payer_id'] = 'PayerId'
165
+ @_hash['payer_number'] = 'PayerNumber'
166
+ @_hash['payer_short_name'] = 'PayerShortName'
167
+ @_hash['payer_full_name'] = 'PayerFullName'
168
+ @_hash['account_id'] = 'AccountId'
169
+ @_hash['account_number'] = 'AccountNumber'
170
+ @_hash['account_short_name'] = 'AccountShortName'
171
+ @_hash['account_full_name'] = 'AccountFullName'
172
+ @_hash['invoice_account_id'] = 'InvoiceAccountId'
173
+ @_hash['invoice_account_number'] = 'InvoiceAccountNumber'
174
+ @_hash['invoice_account_short_name'] = 'InvoiceAccountShortName'
175
+ @_hash['invoice_account_full_name'] = 'InvoiceAccountFullName'
176
+ @_hash['fee_rule_id'] = 'FeeRuleId'
177
+ @_hash['fee_rule_description'] = 'FeeRuleDescription'
178
+ @_hash['from_date'] = 'FromDate'
179
+ @_hash['to_date'] = 'ToDate'
180
+ @_hash['bonus_paid_to'] = 'BonusPaidTo'
181
+ @_hash['fee_item_id'] = 'FeeItemId'
182
+ @_hash['fee_rule_basis'] = 'FeeRuleBasis'
183
+ @_hash['fee_item_currency_code'] = 'FeeItemCurrencyCode'
184
+ @_hash['fee_item_currency_symbol'] = 'FeeItemCurrencySymbol'
185
+ @_hash['prorated_volume'] = 'ProratedVolume'
186
+ @_hash['total_volume'] = 'TotalVolume'
187
+ @_hash['fee_product'] = 'FeeProduct'
188
+ @_hash['invoice_gross_amount'] = 'InvoiceGrossAmount'
189
+ @_hash['invoice_net_amount'] = 'InvoiceNetAmount'
190
+ @_hash['invoice_vat_amount'] = 'InvoiceVATAmount'
191
+ @_hash['is_fee_cancelled'] = 'IsFeeCancelled'
192
+ @_hash['fee_item_tier_prorated_volume'] = 'FeeItemTierProratedVolume'
193
+ @_hash['fee_item_tier_total_volume'] = 'FeeItemTierTotalVolume'
194
+ @_hash['tier_minimum'] = 'TierMinimum'
195
+ @_hash['tier_rate'] = 'TierRate'
196
+ @_hash
197
+ end
198
+
199
+ # An array for optional fields
200
+ def self.optionals
201
+ %w[
202
+ payer_id
203
+ payer_number
204
+ payer_short_name
205
+ payer_full_name
206
+ account_id
207
+ account_number
208
+ account_short_name
209
+ account_full_name
210
+ invoice_account_id
211
+ invoice_account_number
212
+ invoice_account_short_name
213
+ invoice_account_full_name
214
+ fee_rule_id
215
+ fee_rule_description
216
+ from_date
217
+ to_date
218
+ bonus_paid_to
219
+ fee_item_id
220
+ fee_rule_basis
221
+ fee_item_currency_code
222
+ fee_item_currency_symbol
223
+ prorated_volume
224
+ total_volume
225
+ fee_product
226
+ invoice_gross_amount
227
+ invoice_net_amount
228
+ invoice_vat_amount
229
+ is_fee_cancelled
230
+ fee_item_tier_prorated_volume
231
+ fee_item_tier_total_volume
232
+ tier_minimum
233
+ tier_rate
234
+ ]
235
+ end
236
+
237
+ # An array for nullable fields
238
+ def self.nullables
239
+ %w[
240
+ payer_id
241
+ payer_number
242
+ payer_short_name
243
+ payer_full_name
244
+ account_id
245
+ account_number
246
+ account_short_name
247
+ account_full_name
248
+ invoice_account_id
249
+ invoice_account_number
250
+ invoice_account_short_name
251
+ invoice_account_full_name
252
+ fee_rule_id
253
+ fee_rule_description
254
+ from_date
255
+ to_date
256
+ bonus_paid_to
257
+ fee_item_id
258
+ fee_rule_basis
259
+ fee_item_currency_code
260
+ fee_item_currency_symbol
261
+ prorated_volume
262
+ total_volume
263
+ fee_product
264
+ invoice_gross_amount
265
+ invoice_net_amount
266
+ invoice_vat_amount
267
+ is_fee_cancelled
268
+ fee_item_tier_prorated_volume
269
+ fee_item_tier_total_volume
270
+ tier_minimum
271
+ tier_rate
272
+ ]
273
+ end
274
+
275
+ def initialize(payer_id = SKIP,
276
+ payer_number = SKIP,
277
+ payer_short_name = SKIP,
278
+ payer_full_name = SKIP,
279
+ account_id = SKIP,
280
+ account_number = SKIP,
281
+ account_short_name = SKIP,
282
+ account_full_name = SKIP,
283
+ invoice_account_id = SKIP,
284
+ invoice_account_number = SKIP,
285
+ invoice_account_short_name = SKIP,
286
+ invoice_account_full_name = SKIP,
287
+ fee_rule_id = SKIP,
288
+ fee_rule_description = SKIP,
289
+ from_date = SKIP,
290
+ to_date = SKIP,
291
+ bonus_paid_to = SKIP,
292
+ fee_item_id = SKIP,
293
+ fee_rule_basis = SKIP,
294
+ fee_item_currency_code = SKIP,
295
+ fee_item_currency_symbol = SKIP,
296
+ prorated_volume = SKIP,
297
+ total_volume = SKIP,
298
+ fee_product = SKIP,
299
+ invoice_gross_amount = SKIP,
300
+ invoice_net_amount = SKIP,
301
+ invoice_vat_amount = SKIP,
302
+ is_fee_cancelled = SKIP,
303
+ fee_item_tier_prorated_volume = SKIP,
304
+ fee_item_tier_total_volume = SKIP,
305
+ tier_minimum = SKIP,
306
+ tier_rate = SKIP)
307
+ @payer_id = payer_id unless payer_id == SKIP
308
+ @payer_number = payer_number unless payer_number == SKIP
309
+ @payer_short_name = payer_short_name unless payer_short_name == SKIP
310
+ @payer_full_name = payer_full_name unless payer_full_name == SKIP
311
+ @account_id = account_id unless account_id == SKIP
312
+ @account_number = account_number unless account_number == SKIP
313
+ @account_short_name = account_short_name unless account_short_name == SKIP
314
+ @account_full_name = account_full_name unless account_full_name == SKIP
315
+ @invoice_account_id = invoice_account_id unless invoice_account_id == SKIP
316
+ @invoice_account_number = invoice_account_number unless invoice_account_number == SKIP
317
+ unless invoice_account_short_name == SKIP
318
+ @invoice_account_short_name =
319
+ invoice_account_short_name
320
+ end
321
+ unless invoice_account_full_name == SKIP
322
+ @invoice_account_full_name =
323
+ invoice_account_full_name
324
+ end
325
+ @fee_rule_id = fee_rule_id unless fee_rule_id == SKIP
326
+ @fee_rule_description = fee_rule_description unless fee_rule_description == SKIP
327
+ @from_date = from_date unless from_date == SKIP
328
+ @to_date = to_date unless to_date == SKIP
329
+ @bonus_paid_to = bonus_paid_to unless bonus_paid_to == SKIP
330
+ @fee_item_id = fee_item_id unless fee_item_id == SKIP
331
+ @fee_rule_basis = fee_rule_basis unless fee_rule_basis == SKIP
332
+ @fee_item_currency_code = fee_item_currency_code unless fee_item_currency_code == SKIP
333
+ @fee_item_currency_symbol = fee_item_currency_symbol unless fee_item_currency_symbol == SKIP
334
+ @prorated_volume = prorated_volume unless prorated_volume == SKIP
335
+ @total_volume = total_volume unless total_volume == SKIP
336
+ @fee_product = fee_product unless fee_product == SKIP
337
+ @invoice_gross_amount = invoice_gross_amount unless invoice_gross_amount == SKIP
338
+ @invoice_net_amount = invoice_net_amount unless invoice_net_amount == SKIP
339
+ @invoice_vat_amount = invoice_vat_amount unless invoice_vat_amount == SKIP
340
+ @is_fee_cancelled = is_fee_cancelled unless is_fee_cancelled == SKIP
341
+ unless fee_item_tier_prorated_volume == SKIP
342
+ @fee_item_tier_prorated_volume =
343
+ fee_item_tier_prorated_volume
344
+ end
345
+ unless fee_item_tier_total_volume == SKIP
346
+ @fee_item_tier_total_volume =
347
+ fee_item_tier_total_volume
348
+ end
349
+ @tier_minimum = tier_minimum unless tier_minimum == SKIP
350
+ @tier_rate = tier_rate unless tier_rate == SKIP
351
+ end
352
+
353
+ # Creates an instance of the object from a hash.
354
+ def self.from_hash(hash)
355
+ return nil unless hash
356
+
357
+ # Extract variables from the hash.
358
+ payer_id = hash.key?('PayerId') ? hash['PayerId'] : SKIP
359
+ payer_number = hash.key?('PayerNumber') ? hash['PayerNumber'] : SKIP
360
+ payer_short_name =
361
+ hash.key?('PayerShortName') ? hash['PayerShortName'] : SKIP
362
+ payer_full_name =
363
+ hash.key?('PayerFullName') ? hash['PayerFullName'] : SKIP
364
+ account_id = hash.key?('AccountId') ? hash['AccountId'] : SKIP
365
+ account_number = hash.key?('AccountNumber') ? hash['AccountNumber'] : SKIP
366
+ account_short_name =
367
+ hash.key?('AccountShortName') ? hash['AccountShortName'] : SKIP
368
+ account_full_name =
369
+ hash.key?('AccountFullName') ? hash['AccountFullName'] : SKIP
370
+ invoice_account_id =
371
+ hash.key?('InvoiceAccountId') ? hash['InvoiceAccountId'] : SKIP
372
+ invoice_account_number =
373
+ hash.key?('InvoiceAccountNumber') ? hash['InvoiceAccountNumber'] : SKIP
374
+ invoice_account_short_name =
375
+ hash.key?('InvoiceAccountShortName') ? hash['InvoiceAccountShortName'] : SKIP
376
+ invoice_account_full_name =
377
+ hash.key?('InvoiceAccountFullName') ? hash['InvoiceAccountFullName'] : SKIP
378
+ fee_rule_id = hash.key?('FeeRuleId') ? hash['FeeRuleId'] : SKIP
379
+ fee_rule_description =
380
+ hash.key?('FeeRuleDescription') ? hash['FeeRuleDescription'] : SKIP
381
+ from_date = hash.key?('FromDate') ? hash['FromDate'] : SKIP
382
+ to_date = hash.key?('ToDate') ? hash['ToDate'] : SKIP
383
+ bonus_paid_to = hash.key?('BonusPaidTo') ? hash['BonusPaidTo'] : SKIP
384
+ fee_item_id = hash.key?('FeeItemId') ? hash['FeeItemId'] : SKIP
385
+ fee_rule_basis = hash.key?('FeeRuleBasis') ? hash['FeeRuleBasis'] : SKIP
386
+ fee_item_currency_code =
387
+ hash.key?('FeeItemCurrencyCode') ? hash['FeeItemCurrencyCode'] : SKIP
388
+ fee_item_currency_symbol =
389
+ hash.key?('FeeItemCurrencySymbol') ? hash['FeeItemCurrencySymbol'] : SKIP
390
+ prorated_volume =
391
+ hash.key?('ProratedVolume') ? hash['ProratedVolume'] : SKIP
392
+ total_volume = hash.key?('TotalVolume') ? hash['TotalVolume'] : SKIP
393
+ fee_product = hash.key?('FeeProduct') ? hash['FeeProduct'] : SKIP
394
+ invoice_gross_amount =
395
+ hash.key?('InvoiceGrossAmount') ? hash['InvoiceGrossAmount'] : SKIP
396
+ invoice_net_amount =
397
+ hash.key?('InvoiceNetAmount') ? hash['InvoiceNetAmount'] : SKIP
398
+ invoice_vat_amount =
399
+ hash.key?('InvoiceVATAmount') ? hash['InvoiceVATAmount'] : SKIP
400
+ is_fee_cancelled =
401
+ hash.key?('IsFeeCancelled') ? hash['IsFeeCancelled'] : SKIP
402
+ fee_item_tier_prorated_volume =
403
+ hash.key?('FeeItemTierProratedVolume') ? hash['FeeItemTierProratedVolume'] : SKIP
404
+ fee_item_tier_total_volume =
405
+ hash.key?('FeeItemTierTotalVolume') ? hash['FeeItemTierTotalVolume'] : SKIP
406
+ tier_minimum = hash.key?('TierMinimum') ? hash['TierMinimum'] : SKIP
407
+ tier_rate = hash.key?('TierRate') ? hash['TierRate'] : SKIP
408
+
409
+ # Create object from extracted values.
410
+ BonusHistory.new(payer_id,
411
+ payer_number,
412
+ payer_short_name,
413
+ payer_full_name,
414
+ account_id,
415
+ account_number,
416
+ account_short_name,
417
+ account_full_name,
418
+ invoice_account_id,
419
+ invoice_account_number,
420
+ invoice_account_short_name,
421
+ invoice_account_full_name,
422
+ fee_rule_id,
423
+ fee_rule_description,
424
+ from_date,
425
+ to_date,
426
+ bonus_paid_to,
427
+ fee_item_id,
428
+ fee_rule_basis,
429
+ fee_item_currency_code,
430
+ fee_item_currency_symbol,
431
+ prorated_volume,
432
+ total_volume,
433
+ fee_product,
434
+ invoice_gross_amount,
435
+ invoice_net_amount,
436
+ invoice_vat_amount,
437
+ is_fee_cancelled,
438
+ fee_item_tier_prorated_volume,
439
+ fee_item_tier_total_volume,
440
+ tier_minimum,
441
+ tier_rate)
442
+ end
443
+ end
444
+ 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
+ # CardDayTimeRestrictions Model.
8
+ class CardDayTimeRestrictions < 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
+ # Whether the transaction is allowed on Mondays or not.
20
+ # @return [TrueClass | FalseClass]
21
+ attr_accessor :monday
22
+
23
+ # Whether the transaction is allowed on Tuesdays or not.
24
+ # @return [TrueClass | FalseClass]
25
+ attr_accessor :tuesday
26
+
27
+ # Whether the transaction is allowed on Wednesdays or not.
28
+ # @return [TrueClass | FalseClass]
29
+ attr_accessor :wednesday
30
+
31
+ # Whether the transaction is allowed on Thursdays or not.
32
+ # @return [TrueClass | FalseClass]
33
+ attr_accessor :thursday
34
+
35
+ # Whether the transaction is allowed on Fridays or not.
36
+ # @return [TrueClass | FalseClass]
37
+ attr_accessor :friday
38
+
39
+ # Whether the transaction is allowed on Saturdays or not.
40
+ # @return [TrueClass | FalseClass]
41
+ attr_accessor :saturday
42
+
43
+ # Whether the transaction is allowed on Sundays or not.
44
+ # @return [TrueClass | FalseClass]
45
+ attr_accessor :sunday
46
+
47
+ # The time in the day from when the transaction is allowed.
48
+ # Format: HH:mm: ss
49
+ # E.g., 21:00:00
50
+ # Note:
51
+ # 1) The client application has to convert the value to the required
52
+ # date-time data type.
53
+ # 2) The value will be 00:00:00 when no restriction set for this field.
54
+ # @return [String]
55
+ attr_accessor :time_from
56
+
57
+ # allowed.
58
+ # Format: HH:mm: ss
59
+ # E.g., 21:00:00
60
+ # Note:
61
+ # 1) The client application has to convert the value to the required
62
+ # date-time data type.
63
+ # 2) The value will be 00:00:00 when no restriction set for this field.
64
+ # @return [String]
65
+ attr_accessor :time_to
66
+
67
+ # A mapping from model property names to API property names.
68
+ def self.names
69
+ @_hash = {} if @_hash.nil?
70
+ @_hash['level'] = 'Level'
71
+ @_hash['monday'] = 'Monday'
72
+ @_hash['tuesday'] = 'Tuesday'
73
+ @_hash['wednesday'] = 'Wednesday'
74
+ @_hash['thursday'] = 'Thursday'
75
+ @_hash['friday'] = 'Friday'
76
+ @_hash['saturday'] = 'Saturday'
77
+ @_hash['sunday'] = 'Sunday'
78
+ @_hash['time_from'] = 'TimeFrom'
79
+ @_hash['time_to'] = 'TimeTo'
80
+ @_hash
81
+ end
82
+
83
+ # An array for optional fields
84
+ def self.optionals
85
+ %w[
86
+ level
87
+ monday
88
+ tuesday
89
+ wednesday
90
+ thursday
91
+ friday
92
+ saturday
93
+ sunday
94
+ time_from
95
+ time_to
96
+ ]
97
+ end
98
+
99
+ # An array for nullable fields
100
+ def self.nullables
101
+ %w[
102
+ level
103
+ time_from
104
+ time_to
105
+ ]
106
+ end
107
+
108
+ def initialize(level = SKIP,
109
+ monday = SKIP,
110
+ tuesday = SKIP,
111
+ wednesday = SKIP,
112
+ thursday = SKIP,
113
+ friday = SKIP,
114
+ saturday = SKIP,
115
+ sunday = SKIP,
116
+ time_from = SKIP,
117
+ time_to = SKIP)
118
+ @level = level unless level == SKIP
119
+ @monday = monday unless monday == SKIP
120
+ @tuesday = tuesday unless tuesday == SKIP
121
+ @wednesday = wednesday unless wednesday == SKIP
122
+ @thursday = thursday unless thursday == SKIP
123
+ @friday = friday unless friday == SKIP
124
+ @saturday = saturday unless saturday == SKIP
125
+ @sunday = sunday unless sunday == SKIP
126
+ @time_from = time_from unless time_from == SKIP
127
+ @time_to = time_to unless time_to == SKIP
128
+ end
129
+
130
+ # Creates an instance of the object from a hash.
131
+ def self.from_hash(hash)
132
+ return nil unless hash
133
+
134
+ # Extract variables from the hash.
135
+ level = hash.key?('Level') ? hash['Level'] : SKIP
136
+ monday = hash.key?('Monday') ? hash['Monday'] : SKIP
137
+ tuesday = hash.key?('Tuesday') ? hash['Tuesday'] : SKIP
138
+ wednesday = hash.key?('Wednesday') ? hash['Wednesday'] : SKIP
139
+ thursday = hash.key?('Thursday') ? hash['Thursday'] : SKIP
140
+ friday = hash.key?('Friday') ? hash['Friday'] : SKIP
141
+ saturday = hash.key?('Saturday') ? hash['Saturday'] : SKIP
142
+ sunday = hash.key?('Sunday') ? hash['Sunday'] : SKIP
143
+ time_from = hash.key?('TimeFrom') ? hash['TimeFrom'] : SKIP
144
+ time_to = hash.key?('TimeTo') ? hash['TimeTo'] : SKIP
145
+
146
+ # Create object from extracted values.
147
+ CardDayTimeRestrictions.new(level,
148
+ monday,
149
+ tuesday,
150
+ wednesday,
151
+ thursday,
152
+ friday,
153
+ saturday,
154
+ sunday,
155
+ time_from,
156
+ time_to)
157
+ end
158
+ end
159
+ end