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,470 @@
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
+ # CardTypeResponseCustomerCardTypesItems Model.
8
+ class CardTypeResponseCustomerCardTypesItems < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # True/False – Whether the cards of this card type can have PIN.
13
+ # @return [TrueClass | FalseClass]
14
+ attr_accessor :can_have_pin
15
+
16
+ # Card Type Id
17
+ # @return [Integer]
18
+ attr_accessor :card_type_id
19
+
20
+ # Card Type Name.
21
+ # @return [String]
22
+ attr_accessor :card_type_name
23
+
24
+ # ISO currency code of the country.
25
+ # @return [String]
26
+ attr_accessor :col_co_currency_code
27
+
28
+ # Customer Card Type Id
29
+ # @return [Integer]
30
+ attr_accessor :customer_card_type_id
31
+
32
+ # Customer Card Type Id
33
+ # @return [CardDayTimeRestrictions]
34
+ attr_accessor :day_time_restrictions
35
+
36
+ # Default Purchase category of the card type.
37
+ # @return [Integer]
38
+ attr_accessor :default_purchase_category_id
39
+
40
+ # Default Name to be embossed on the card
41
+ # @return [String]
42
+ attr_accessor :emboss_account_name
43
+
44
+ # Default Expiry period.
45
+ # @return [Integer]
46
+ attr_accessor :expiry_period
47
+
48
+ # True/False – Wether it is a CRT Card type or not.
49
+ # @return [TrueClass | FalseClass]
50
+ attr_accessor :is_crt
51
+
52
+ # True/False – Whether it is it a Fleet Card typeor not.
53
+ # @return [TrueClass | FalseClass]
54
+ attr_accessor :is_fleet
55
+
56
+ # True/False – Whether it is an International Card type or not.
57
+ # @return [TrueClass | FalseClass]
58
+ attr_accessor :is_international
59
+
60
+ # True/False – Whether it is a National Card type or not.
61
+ # @return [TrueClass | FalseClass]
62
+ attr_accessor :is_national
63
+
64
+ # True/False – Whether this card type is allowed in partner Stations.
65
+ # @return [TrueClass | FalseClass]
66
+ attr_accessor :is_partner_sites_included
67
+
68
+ # True/False – Whether it is only allowed in Shell Stations or not.
69
+ # @return [TrueClass | FalseClass]
70
+ attr_accessor :is_shell_sites_only
71
+
72
+ # True/False - Whether it is a Virtual Card type or not.
73
+ # @return [TrueClass | FalseClass]
74
+ attr_accessor :is_virtual
75
+
76
+ # True/False – Whether this card type is visible in SFH for card ordering.
77
+ # @return [TrueClass | FalseClass]
78
+ attr_accessor :is_visible_to_customers
79
+
80
+ # Whether card type is active or not.
81
+ # @return [TrueClass | FalseClass]
82
+ attr_accessor :is_active
83
+
84
+ # Whether card type is active or not.
85
+ # @return [TrueClass | FalseClass]
86
+ attr_accessor :is_card_available_for_download
87
+
88
+ # Whether card type is active or not.
89
+ # @return [TrueClass | FalseClass]
90
+ attr_accessor :is_card_visible_to_customers
91
+
92
+ # PAN Length
93
+ # @return [Integer]
94
+ attr_accessor :pan_length
95
+
96
+ # PAN Length
97
+ # @return [Array[PurchaseCategories]]
98
+ attr_accessor :purchase_categories
99
+
100
+ # Token type identifier.
101
+ # @return [Integer]
102
+ attr_accessor :token_type_id
103
+
104
+ # Token Type Name.
105
+ # @return [String]
106
+ attr_accessor :token_type_name
107
+
108
+ # Token Type Name.
109
+ # @return [CardUsageRestrictions]
110
+ attr_accessor :usage_restrictions
111
+
112
+ # Is Europay, MasterCard, and Visa Contactless enabled or not
113
+ # @return [TrueClass | FalseClass]
114
+ attr_accessor :emv_contactless
115
+
116
+ # Whether the card type is enabled for RFID (Radio Frequency Identification)
117
+ # @return [TrueClass | FalseClass]
118
+ attr_accessor :rfid
119
+
120
+ # PIN change supported or not.
121
+ # @return [TrueClass | FalseClass]
122
+ attr_accessor :pin_change_supported
123
+
124
+ # Whether a PIN is mandatory for the cards of this card type.
125
+ # @return [TrueClass | FalseClass]
126
+ attr_accessor :require_pin
127
+
128
+ # Whether offline PIN is enabled or not.
129
+ # @return [TrueClass | FalseClass]
130
+ attr_accessor :offline_pin
131
+
132
+ # Whether card type is default or not.
133
+ # @return [TrueClass | FalseClass]
134
+ attr_accessor :is_default
135
+
136
+ # True/False
137
+ # Note: ApplicationsToShowNPIITokens will be set as ‘True’ when the
138
+ # accessing application API key exists in the “ApplicationsToShowNPIITokens”
139
+ # card type configuration else “False”.
140
+ # @return [TrueClass | FalseClass]
141
+ attr_accessor :applications_to_show_npii_tokens
142
+
143
+ # Id of the medium type identifier.
144
+ # Example: 1,2,4
145
+ # Full list below:
146
+ # 1 - Fuel Card
147
+ # 2 - Fuel Card with EV
148
+ # 3 - EV only
149
+ # 4 - Fuel Card and Key Fob
150
+ # 5 - Key Fob
151
+ # 6 - Virtual Card
152
+ # 7 - NPII Token
153
+ # 8 – Smartpay Token
154
+ # @return [Integer]
155
+ attr_accessor :medium_type_id
156
+
157
+ # Name of the medium type identifier.
158
+ # Example: Fuel Card, Fuel Card with EV, Key Fob
159
+ # Full list below:
160
+ # 1 - Fuel Card
161
+ # 2 - Fuel Card with EV
162
+ # 3 - EV only
163
+ # 4 - Fuel Card and Key Fob
164
+ # 5 - Key Fob
165
+ # 6 - Virtual Card
166
+ # 7 - NPII Token
167
+ # 8 - Smartpay Token
168
+ # @return [String]
169
+ attr_accessor :medium_type
170
+
171
+ # Currency symbol of the country.
172
+ # @return [String]
173
+ attr_accessor :col_co_currency_symbol
174
+
175
+ # A mapping from model property names to API property names.
176
+ def self.names
177
+ @_hash = {} if @_hash.nil?
178
+ @_hash['can_have_pin'] = 'CanHavePIN'
179
+ @_hash['card_type_id'] = 'CardTypeId'
180
+ @_hash['card_type_name'] = 'CardTypeName'
181
+ @_hash['col_co_currency_code'] = 'ColCoCurrencyCode'
182
+ @_hash['customer_card_type_id'] = 'CustomerCardTypeId'
183
+ @_hash['day_time_restrictions'] = 'DayTimeRestrictions'
184
+ @_hash['default_purchase_category_id'] = 'DefaultPurchaseCategoryId'
185
+ @_hash['emboss_account_name'] = 'EmbossAccountName'
186
+ @_hash['expiry_period'] = 'ExpiryPeriod'
187
+ @_hash['is_crt'] = 'IsCRT'
188
+ @_hash['is_fleet'] = 'IsFleet'
189
+ @_hash['is_international'] = 'IsInternational'
190
+ @_hash['is_national'] = 'IsNational'
191
+ @_hash['is_partner_sites_included'] = 'IsPartnerSitesIncluded'
192
+ @_hash['is_shell_sites_only'] = 'IsShellSitesOnly'
193
+ @_hash['is_virtual'] = 'IsVirtual'
194
+ @_hash['is_visible_to_customers'] = 'IsVisibleToCustomers'
195
+ @_hash['is_active'] = 'IsActive'
196
+ @_hash['is_card_available_for_download'] = 'IsCardAvailableForDownload'
197
+ @_hash['is_card_visible_to_customers'] = 'IsCardVisibleToCustomers'
198
+ @_hash['pan_length'] = 'PANLength'
199
+ @_hash['purchase_categories'] = 'PurchaseCategories'
200
+ @_hash['token_type_id'] = 'TokenTypeId'
201
+ @_hash['token_type_name'] = 'TokenTypeName'
202
+ @_hash['usage_restrictions'] = 'UsageRestrictions'
203
+ @_hash['emv_contactless'] = 'EMVContactless'
204
+ @_hash['rfid'] = 'RFID'
205
+ @_hash['pin_change_supported'] = 'PINChangeSupported'
206
+ @_hash['require_pin'] = 'RequirePIN'
207
+ @_hash['offline_pin'] = 'OfflinePIN'
208
+ @_hash['is_default'] = 'IsDefault'
209
+ @_hash['applications_to_show_npii_tokens'] =
210
+ 'ApplicationsToShowNPIITokens'
211
+ @_hash['medium_type_id'] = 'MediumTypeID'
212
+ @_hash['medium_type'] = 'MediumType'
213
+ @_hash['col_co_currency_symbol'] = 'ColCoCurrencySymbol'
214
+ @_hash
215
+ end
216
+
217
+ # An array for optional fields
218
+ def self.optionals
219
+ %w[
220
+ can_have_pin
221
+ card_type_id
222
+ card_type_name
223
+ col_co_currency_code
224
+ customer_card_type_id
225
+ day_time_restrictions
226
+ default_purchase_category_id
227
+ emboss_account_name
228
+ expiry_period
229
+ is_crt
230
+ is_fleet
231
+ is_international
232
+ is_national
233
+ is_partner_sites_included
234
+ is_shell_sites_only
235
+ is_virtual
236
+ is_visible_to_customers
237
+ is_active
238
+ is_card_available_for_download
239
+ is_card_visible_to_customers
240
+ pan_length
241
+ purchase_categories
242
+ token_type_id
243
+ token_type_name
244
+ usage_restrictions
245
+ emv_contactless
246
+ rfid
247
+ pin_change_supported
248
+ require_pin
249
+ offline_pin
250
+ is_default
251
+ applications_to_show_npii_tokens
252
+ medium_type_id
253
+ medium_type
254
+ col_co_currency_symbol
255
+ ]
256
+ end
257
+
258
+ # An array for nullable fields
259
+ def self.nullables
260
+ %w[
261
+ card_type_id
262
+ card_type_name
263
+ col_co_currency_code
264
+ customer_card_type_id
265
+ default_purchase_category_id
266
+ emboss_account_name
267
+ expiry_period
268
+ pan_length
269
+ purchase_categories
270
+ token_type_id
271
+ token_type_name
272
+ medium_type_id
273
+ medium_type
274
+ col_co_currency_symbol
275
+ ]
276
+ end
277
+
278
+ def initialize(can_have_pin = SKIP,
279
+ card_type_id = SKIP,
280
+ card_type_name = SKIP,
281
+ col_co_currency_code = SKIP,
282
+ customer_card_type_id = SKIP,
283
+ day_time_restrictions = SKIP,
284
+ default_purchase_category_id = SKIP,
285
+ emboss_account_name = SKIP,
286
+ expiry_period = SKIP,
287
+ is_crt = SKIP,
288
+ is_fleet = SKIP,
289
+ is_international = SKIP,
290
+ is_national = SKIP,
291
+ is_partner_sites_included = SKIP,
292
+ is_shell_sites_only = SKIP,
293
+ is_virtual = SKIP,
294
+ is_visible_to_customers = SKIP,
295
+ is_active = SKIP,
296
+ is_card_available_for_download = SKIP,
297
+ is_card_visible_to_customers = SKIP,
298
+ pan_length = SKIP,
299
+ purchase_categories = SKIP,
300
+ token_type_id = SKIP,
301
+ token_type_name = SKIP,
302
+ usage_restrictions = SKIP,
303
+ emv_contactless = SKIP,
304
+ rfid = SKIP,
305
+ pin_change_supported = SKIP,
306
+ require_pin = SKIP,
307
+ offline_pin = SKIP,
308
+ is_default = SKIP,
309
+ applications_to_show_npii_tokens = SKIP,
310
+ medium_type_id = SKIP,
311
+ medium_type = SKIP,
312
+ col_co_currency_symbol = SKIP)
313
+ @can_have_pin = can_have_pin unless can_have_pin == SKIP
314
+ @card_type_id = card_type_id unless card_type_id == SKIP
315
+ @card_type_name = card_type_name unless card_type_name == SKIP
316
+ @col_co_currency_code = col_co_currency_code unless col_co_currency_code == SKIP
317
+ @customer_card_type_id = customer_card_type_id unless customer_card_type_id == SKIP
318
+ @day_time_restrictions = day_time_restrictions unless day_time_restrictions == SKIP
319
+ unless default_purchase_category_id == SKIP
320
+ @default_purchase_category_id =
321
+ default_purchase_category_id
322
+ end
323
+ @emboss_account_name = emboss_account_name unless emboss_account_name == SKIP
324
+ @expiry_period = expiry_period unless expiry_period == SKIP
325
+ @is_crt = is_crt unless is_crt == SKIP
326
+ @is_fleet = is_fleet unless is_fleet == SKIP
327
+ @is_international = is_international unless is_international == SKIP
328
+ @is_national = is_national unless is_national == SKIP
329
+ unless is_partner_sites_included == SKIP
330
+ @is_partner_sites_included =
331
+ is_partner_sites_included
332
+ end
333
+ @is_shell_sites_only = is_shell_sites_only unless is_shell_sites_only == SKIP
334
+ @is_virtual = is_virtual unless is_virtual == SKIP
335
+ @is_visible_to_customers = is_visible_to_customers unless is_visible_to_customers == SKIP
336
+ @is_active = is_active unless is_active == SKIP
337
+ unless is_card_available_for_download == SKIP
338
+ @is_card_available_for_download =
339
+ is_card_available_for_download
340
+ end
341
+ unless is_card_visible_to_customers == SKIP
342
+ @is_card_visible_to_customers =
343
+ is_card_visible_to_customers
344
+ end
345
+ @pan_length = pan_length unless pan_length == SKIP
346
+ @purchase_categories = purchase_categories unless purchase_categories == SKIP
347
+ @token_type_id = token_type_id unless token_type_id == SKIP
348
+ @token_type_name = token_type_name unless token_type_name == SKIP
349
+ @usage_restrictions = usage_restrictions unless usage_restrictions == SKIP
350
+ @emv_contactless = emv_contactless unless emv_contactless == SKIP
351
+ @rfid = rfid unless rfid == SKIP
352
+ @pin_change_supported = pin_change_supported unless pin_change_supported == SKIP
353
+ @require_pin = require_pin unless require_pin == SKIP
354
+ @offline_pin = offline_pin unless offline_pin == SKIP
355
+ @is_default = is_default unless is_default == SKIP
356
+ unless applications_to_show_npii_tokens == SKIP
357
+ @applications_to_show_npii_tokens =
358
+ applications_to_show_npii_tokens
359
+ end
360
+ @medium_type_id = medium_type_id unless medium_type_id == SKIP
361
+ @medium_type = medium_type unless medium_type == SKIP
362
+ @col_co_currency_symbol = col_co_currency_symbol unless col_co_currency_symbol == SKIP
363
+ end
364
+
365
+ # Creates an instance of the object from a hash.
366
+ def self.from_hash(hash)
367
+ return nil unless hash
368
+
369
+ # Extract variables from the hash.
370
+ can_have_pin = hash.key?('CanHavePIN') ? hash['CanHavePIN'] : SKIP
371
+ card_type_id = hash.key?('CardTypeId') ? hash['CardTypeId'] : SKIP
372
+ card_type_name = hash.key?('CardTypeName') ? hash['CardTypeName'] : SKIP
373
+ col_co_currency_code =
374
+ hash.key?('ColCoCurrencyCode') ? hash['ColCoCurrencyCode'] : SKIP
375
+ customer_card_type_id =
376
+ hash.key?('CustomerCardTypeId') ? hash['CustomerCardTypeId'] : SKIP
377
+ day_time_restrictions = CardDayTimeRestrictions.from_hash(hash['DayTimeRestrictions']) if
378
+ hash['DayTimeRestrictions']
379
+ default_purchase_category_id =
380
+ hash.key?('DefaultPurchaseCategoryId') ? hash['DefaultPurchaseCategoryId'] : SKIP
381
+ emboss_account_name =
382
+ hash.key?('EmbossAccountName') ? hash['EmbossAccountName'] : SKIP
383
+ expiry_period = hash.key?('ExpiryPeriod') ? hash['ExpiryPeriod'] : SKIP
384
+ is_crt = hash.key?('IsCRT') ? hash['IsCRT'] : SKIP
385
+ is_fleet = hash.key?('IsFleet') ? hash['IsFleet'] : SKIP
386
+ is_international =
387
+ hash.key?('IsInternational') ? hash['IsInternational'] : SKIP
388
+ is_national = hash.key?('IsNational') ? hash['IsNational'] : SKIP
389
+ is_partner_sites_included =
390
+ hash.key?('IsPartnerSitesIncluded') ? hash['IsPartnerSitesIncluded'] : SKIP
391
+ is_shell_sites_only =
392
+ hash.key?('IsShellSitesOnly') ? hash['IsShellSitesOnly'] : SKIP
393
+ is_virtual = hash.key?('IsVirtual') ? hash['IsVirtual'] : SKIP
394
+ is_visible_to_customers =
395
+ hash.key?('IsVisibleToCustomers') ? hash['IsVisibleToCustomers'] : SKIP
396
+ is_active = hash.key?('IsActive') ? hash['IsActive'] : SKIP
397
+ is_card_available_for_download =
398
+ hash.key?('IsCardAvailableForDownload') ? hash['IsCardAvailableForDownload'] : SKIP
399
+ is_card_visible_to_customers =
400
+ hash.key?('IsCardVisibleToCustomers') ? hash['IsCardVisibleToCustomers'] : SKIP
401
+ pan_length = hash.key?('PANLength') ? hash['PANLength'] : SKIP
402
+ # Parameter is an array, so we need to iterate through it
403
+ purchase_categories = nil
404
+ unless hash['PurchaseCategories'].nil?
405
+ purchase_categories = []
406
+ hash['PurchaseCategories'].each do |structure|
407
+ purchase_categories << (PurchaseCategories.from_hash(structure) if structure)
408
+ end
409
+ end
410
+
411
+ purchase_categories = SKIP unless hash.key?('PurchaseCategories')
412
+ token_type_id = hash.key?('TokenTypeId') ? hash['TokenTypeId'] : SKIP
413
+ token_type_name =
414
+ hash.key?('TokenTypeName') ? hash['TokenTypeName'] : SKIP
415
+ usage_restrictions = CardUsageRestrictions.from_hash(hash['UsageRestrictions']) if
416
+ hash['UsageRestrictions']
417
+ emv_contactless =
418
+ hash.key?('EMVContactless') ? hash['EMVContactless'] : SKIP
419
+ rfid = hash.key?('RFID') ? hash['RFID'] : SKIP
420
+ pin_change_supported =
421
+ hash.key?('PINChangeSupported') ? hash['PINChangeSupported'] : SKIP
422
+ require_pin = hash.key?('RequirePIN') ? hash['RequirePIN'] : SKIP
423
+ offline_pin = hash.key?('OfflinePIN') ? hash['OfflinePIN'] : SKIP
424
+ is_default = hash.key?('IsDefault') ? hash['IsDefault'] : SKIP
425
+ applications_to_show_npii_tokens =
426
+ hash.key?('ApplicationsToShowNPIITokens') ? hash['ApplicationsToShowNPIITokens'] : SKIP
427
+ medium_type_id = hash.key?('MediumTypeID') ? hash['MediumTypeID'] : SKIP
428
+ medium_type = hash.key?('MediumType') ? hash['MediumType'] : SKIP
429
+ col_co_currency_symbol =
430
+ hash.key?('ColCoCurrencySymbol') ? hash['ColCoCurrencySymbol'] : SKIP
431
+
432
+ # Create object from extracted values.
433
+ CardTypeResponseCustomerCardTypesItems.new(can_have_pin,
434
+ card_type_id,
435
+ card_type_name,
436
+ col_co_currency_code,
437
+ customer_card_type_id,
438
+ day_time_restrictions,
439
+ default_purchase_category_id,
440
+ emboss_account_name,
441
+ expiry_period,
442
+ is_crt,
443
+ is_fleet,
444
+ is_international,
445
+ is_national,
446
+ is_partner_sites_included,
447
+ is_shell_sites_only,
448
+ is_virtual,
449
+ is_visible_to_customers,
450
+ is_active,
451
+ is_card_available_for_download,
452
+ is_card_visible_to_customers,
453
+ pan_length,
454
+ purchase_categories,
455
+ token_type_id,
456
+ token_type_name,
457
+ usage_restrictions,
458
+ emv_contactless,
459
+ rfid,
460
+ pin_change_supported,
461
+ require_pin,
462
+ offline_pin,
463
+ is_default,
464
+ applications_to_show_npii_tokens,
465
+ medium_type_id,
466
+ medium_type,
467
+ col_co_currency_symbol)
468
+ end
469
+ end
470
+ end
@@ -0,0 +1,60 @@
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
+ # CardTypeResponseError Model.
8
+ class CardTypeResponseError < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :code
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [String]
18
+ attr_accessor :description
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['code'] = 'Code'
24
+ @_hash['description'] = 'Description'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ code
32
+ description
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(code = SKIP,
42
+ description = SKIP)
43
+ @code = code unless code == SKIP
44
+ @description = description unless description == SKIP
45
+ end
46
+
47
+ # Creates an instance of the object from a hash.
48
+ def self.from_hash(hash)
49
+ return nil unless hash
50
+
51
+ # Extract variables from the hash.
52
+ code = hash.key?('Code') ? hash['Code'] : SKIP
53
+ description = hash.key?('Description') ? hash['Description'] : SKIP
54
+
55
+ # Create object from extracted values.
56
+ CardTypeResponseError.new(code,
57
+ description)
58
+ end
59
+ end
60
+ end