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,82 @@
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
+ # CustomerPriceListResponse Model.
8
+ class CustomerPriceListResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # UUID (according to RFC 4122 standards) for requests and responses. This
13
+ # will be played back in the response from the request.
14
+ # @return [String]
15
+ attr_accessor :request_id
16
+
17
+ # UUID (according to RFC 4122 standards) for requests and responses. This
18
+ # will be played back in the response from the request.
19
+ # @return [Array[PriceList]]
20
+ attr_accessor :price_list
21
+
22
+ # UUID (according to RFC 4122 standards) for requests and responses. This
23
+ # will be played back in the response from the request.
24
+ # @return [ErrorStatus]
25
+ attr_accessor :error
26
+
27
+ # A mapping from model property names to API property names.
28
+ def self.names
29
+ @_hash = {} if @_hash.nil?
30
+ @_hash['request_id'] = 'RequestId'
31
+ @_hash['price_list'] = 'PriceList'
32
+ @_hash['error'] = 'Error'
33
+ @_hash
34
+ end
35
+
36
+ # An array for optional fields
37
+ def self.optionals
38
+ %w[
39
+ request_id
40
+ price_list
41
+ error
42
+ ]
43
+ end
44
+
45
+ # An array for nullable fields
46
+ def self.nullables
47
+ []
48
+ end
49
+
50
+ def initialize(request_id = SKIP,
51
+ price_list = SKIP,
52
+ error = SKIP)
53
+ @request_id = request_id unless request_id == SKIP
54
+ @price_list = price_list unless price_list == SKIP
55
+ @error = error unless error == SKIP
56
+ end
57
+
58
+ # Creates an instance of the object from a hash.
59
+ def self.from_hash(hash)
60
+ return nil unless hash
61
+
62
+ # Extract variables from the hash.
63
+ request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
64
+ # Parameter is an array, so we need to iterate through it
65
+ price_list = nil
66
+ unless hash['PriceList'].nil?
67
+ price_list = []
68
+ hash['PriceList'].each do |structure|
69
+ price_list << (PriceList.from_hash(structure) if structure)
70
+ end
71
+ end
72
+
73
+ price_list = SKIP unless hash.key?('PriceList')
74
+ error = ErrorStatus.from_hash(hash['Error']) if hash['Error']
75
+
76
+ # Create object from extracted values.
77
+ CustomerPriceListResponse.new(request_id,
78
+ price_list,
79
+ error)
80
+ end
81
+ end
82
+ 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
+ # Error object
8
+ class DefaultErrorFault < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Error Description
13
+ # @return [String]
14
+ attr_accessor :faultstring
15
+
16
+ # Details about the error
17
+ # @return [DefaultErrorFaultDetail]
18
+ attr_accessor :detail
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['faultstring'] = 'faultstring'
24
+ @_hash['detail'] = 'detail'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ faultstring
32
+ detail
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(faultstring = SKIP,
42
+ detail = SKIP)
43
+ @faultstring = faultstring unless faultstring == SKIP
44
+ @detail = detail unless detail == 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
+ faultstring = hash.key?('faultstring') ? hash['faultstring'] : SKIP
53
+ detail = DefaultErrorFaultDetail.from_hash(hash['detail']) if hash['detail']
54
+
55
+ # Create object from extracted values.
56
+ DefaultErrorFault.new(faultstring,
57
+ detail)
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,50 @@
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
+ # Details about the error
8
+ class DefaultErrorFaultDetail < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Error code
13
+ # @return [String]
14
+ attr_accessor :errorcode
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['errorcode'] = 'errorcode'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ errorcode
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(errorcode = SKIP)
36
+ @errorcode = errorcode unless errorcode == SKIP
37
+ end
38
+
39
+ # Creates an instance of the object from a hash.
40
+ def self.from_hash(hash)
41
+ return nil unless hash
42
+
43
+ # Extract variables from the hash.
44
+ errorcode = hash.key?('errorcode') ? hash['errorcode'] : SKIP
45
+
46
+ # Create object from extracted values.
47
+ DefaultErrorFaultDetail.new(errorcode)
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,258 @@
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
+ # DeliveryAddresses Model.
8
+ class DeliveryAddresses < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Address Id
13
+ # @return [Integer]
14
+ attr_accessor :address_id
15
+
16
+ # AddressLine1
17
+ # @return [String]
18
+ attr_accessor :address_line1
19
+
20
+ # AddressLine2
21
+ # @return [String]
22
+ attr_accessor :address_line2
23
+
24
+ # AddressLine3
25
+ # @return [String]
26
+ attr_accessor :address_line3
27
+
28
+ # City
29
+ # @return [String]
30
+ attr_accessor :city
31
+
32
+ # Account Name
33
+ # @return [String]
34
+ attr_accessor :company_name
35
+
36
+ # Contact fore name of the delivery address.
37
+ # @return [String]
38
+ attr_accessor :contact_fore_name
39
+
40
+ # Contact last name of the delivery address.
41
+ # @return [String]
42
+ attr_accessor :contact_last_name
43
+
44
+ # Contact middle name of the delivery address.
45
+ # @return [String]
46
+ attr_accessor :contact_middle_name
47
+
48
+ # ContactTitle
49
+ # @return [String]
50
+ attr_accessor :contact_title
51
+
52
+ # Country
53
+ # @return [String]
54
+ attr_accessor :country
55
+
56
+ # Country Id
57
+ # @return [Integer]
58
+ attr_accessor :country_id
59
+
60
+ # Country ISO code
61
+ # @return [String]
62
+ attr_accessor :country_iso_code
63
+
64
+ # Fax number of the address contact.
65
+ # @return [String]
66
+ attr_accessor :fax
67
+
68
+ # Region of the Card Delivery address
69
+ # @return [String]
70
+ attr_accessor :region
71
+
72
+ # Region Id of the address.
73
+ # @return [Integer]
74
+ attr_accessor :region_id
75
+
76
+ # Telephone number of the address contact
77
+ # @return [String]
78
+ attr_accessor :telephone
79
+
80
+ # Delivery Zip code
81
+ # @return [String]
82
+ attr_accessor :zip_code
83
+
84
+ # Delivery address type.
85
+ # Possible Values:
86
+ # 1 – Card and PIN delivery address
87
+ # 2 – Card delivery address
88
+ # 3 – PIN delivery address
89
+ # @return [Integer]
90
+ attr_accessor :address_type
91
+
92
+ # A mapping from model property names to API property names.
93
+ def self.names
94
+ @_hash = {} if @_hash.nil?
95
+ @_hash['address_id'] = 'AddressId'
96
+ @_hash['address_line1'] = 'AddressLine1'
97
+ @_hash['address_line2'] = 'AddressLine2'
98
+ @_hash['address_line3'] = 'AddressLine3'
99
+ @_hash['city'] = 'City'
100
+ @_hash['company_name'] = 'CompanyName'
101
+ @_hash['contact_fore_name'] = 'ContactForeName'
102
+ @_hash['contact_last_name'] = 'ContactLastName'
103
+ @_hash['contact_middle_name'] = 'ContactMiddleName'
104
+ @_hash['contact_title'] = 'ContactTitle'
105
+ @_hash['country'] = 'Country'
106
+ @_hash['country_id'] = 'CountryId'
107
+ @_hash['country_iso_code'] = 'CountryISOCode'
108
+ @_hash['fax'] = 'Fax'
109
+ @_hash['region'] = 'Region'
110
+ @_hash['region_id'] = 'RegionId'
111
+ @_hash['telephone'] = 'Telephone'
112
+ @_hash['zip_code'] = 'ZipCode'
113
+ @_hash['address_type'] = 'AddressType'
114
+ @_hash
115
+ end
116
+
117
+ # An array for optional fields
118
+ def self.optionals
119
+ %w[
120
+ address_id
121
+ address_line1
122
+ address_line2
123
+ address_line3
124
+ city
125
+ company_name
126
+ contact_fore_name
127
+ contact_last_name
128
+ contact_middle_name
129
+ contact_title
130
+ country
131
+ country_id
132
+ country_iso_code
133
+ fax
134
+ region
135
+ region_id
136
+ telephone
137
+ zip_code
138
+ address_type
139
+ ]
140
+ end
141
+
142
+ # An array for nullable fields
143
+ def self.nullables
144
+ %w[
145
+ address_id
146
+ address_line1
147
+ address_line2
148
+ address_line3
149
+ city
150
+ company_name
151
+ contact_fore_name
152
+ contact_last_name
153
+ contact_middle_name
154
+ contact_title
155
+ country
156
+ country_id
157
+ country_iso_code
158
+ fax
159
+ region
160
+ region_id
161
+ telephone
162
+ zip_code
163
+ address_type
164
+ ]
165
+ end
166
+
167
+ def initialize(address_id = SKIP,
168
+ address_line1 = SKIP,
169
+ address_line2 = SKIP,
170
+ address_line3 = SKIP,
171
+ city = SKIP,
172
+ company_name = SKIP,
173
+ contact_fore_name = SKIP,
174
+ contact_last_name = SKIP,
175
+ contact_middle_name = SKIP,
176
+ contact_title = SKIP,
177
+ country = SKIP,
178
+ country_id = SKIP,
179
+ country_iso_code = SKIP,
180
+ fax = SKIP,
181
+ region = SKIP,
182
+ region_id = SKIP,
183
+ telephone = SKIP,
184
+ zip_code = SKIP,
185
+ address_type = SKIP)
186
+ @address_id = address_id unless address_id == SKIP
187
+ @address_line1 = address_line1 unless address_line1 == SKIP
188
+ @address_line2 = address_line2 unless address_line2 == SKIP
189
+ @address_line3 = address_line3 unless address_line3 == SKIP
190
+ @city = city unless city == SKIP
191
+ @company_name = company_name unless company_name == SKIP
192
+ @contact_fore_name = contact_fore_name unless contact_fore_name == SKIP
193
+ @contact_last_name = contact_last_name unless contact_last_name == SKIP
194
+ @contact_middle_name = contact_middle_name unless contact_middle_name == SKIP
195
+ @contact_title = contact_title unless contact_title == SKIP
196
+ @country = country unless country == SKIP
197
+ @country_id = country_id unless country_id == SKIP
198
+ @country_iso_code = country_iso_code unless country_iso_code == SKIP
199
+ @fax = fax unless fax == SKIP
200
+ @region = region unless region == SKIP
201
+ @region_id = region_id unless region_id == SKIP
202
+ @telephone = telephone unless telephone == SKIP
203
+ @zip_code = zip_code unless zip_code == SKIP
204
+ @address_type = address_type unless address_type == SKIP
205
+ end
206
+
207
+ # Creates an instance of the object from a hash.
208
+ def self.from_hash(hash)
209
+ return nil unless hash
210
+
211
+ # Extract variables from the hash.
212
+ address_id = hash.key?('AddressId') ? hash['AddressId'] : SKIP
213
+ address_line1 = hash.key?('AddressLine1') ? hash['AddressLine1'] : SKIP
214
+ address_line2 = hash.key?('AddressLine2') ? hash['AddressLine2'] : SKIP
215
+ address_line3 = hash.key?('AddressLine3') ? hash['AddressLine3'] : SKIP
216
+ city = hash.key?('City') ? hash['City'] : SKIP
217
+ company_name = hash.key?('CompanyName') ? hash['CompanyName'] : SKIP
218
+ contact_fore_name =
219
+ hash.key?('ContactForeName') ? hash['ContactForeName'] : SKIP
220
+ contact_last_name =
221
+ hash.key?('ContactLastName') ? hash['ContactLastName'] : SKIP
222
+ contact_middle_name =
223
+ hash.key?('ContactMiddleName') ? hash['ContactMiddleName'] : SKIP
224
+ contact_title = hash.key?('ContactTitle') ? hash['ContactTitle'] : SKIP
225
+ country = hash.key?('Country') ? hash['Country'] : SKIP
226
+ country_id = hash.key?('CountryId') ? hash['CountryId'] : SKIP
227
+ country_iso_code =
228
+ hash.key?('CountryISOCode') ? hash['CountryISOCode'] : SKIP
229
+ fax = hash.key?('Fax') ? hash['Fax'] : SKIP
230
+ region = hash.key?('Region') ? hash['Region'] : SKIP
231
+ region_id = hash.key?('RegionId') ? hash['RegionId'] : SKIP
232
+ telephone = hash.key?('Telephone') ? hash['Telephone'] : SKIP
233
+ zip_code = hash.key?('ZipCode') ? hash['ZipCode'] : SKIP
234
+ address_type = hash.key?('AddressType') ? hash['AddressType'] : SKIP
235
+
236
+ # Create object from extracted values.
237
+ DeliveryAddresses.new(address_id,
238
+ address_line1,
239
+ address_line2,
240
+ address_line3,
241
+ city,
242
+ company_name,
243
+ contact_fore_name,
244
+ contact_last_name,
245
+ contact_middle_name,
246
+ contact_title,
247
+ country,
248
+ country_id,
249
+ country_iso_code,
250
+ fax,
251
+ region,
252
+ region_id,
253
+ telephone,
254
+ zip_code,
255
+ address_type)
256
+ end
257
+ end
258
+ end
@@ -0,0 +1,75 @@
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
+ # EIDAccess Model.
8
+ class EIDAccess < 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 [Integer]
18
+ attr_accessor :col_co_code
19
+
20
+ # Identifier for the EID account group configured for the user.
21
+ # @return [String]
22
+ attr_accessor :account_group_id
23
+
24
+ # A mapping from model property names to API property names.
25
+ def self.names
26
+ @_hash = {} if @_hash.nil?
27
+ @_hash['col_co_id'] = 'ColCoId'
28
+ @_hash['col_co_code'] = 'ColCoCode'
29
+ @_hash['account_group_id'] = 'AccountGroupId'
30
+ @_hash
31
+ end
32
+
33
+ # An array for optional fields
34
+ def self.optionals
35
+ %w[
36
+ col_co_id
37
+ col_co_code
38
+ account_group_id
39
+ ]
40
+ end
41
+
42
+ # An array for nullable fields
43
+ def self.nullables
44
+ %w[
45
+ col_co_id
46
+ col_co_code
47
+ account_group_id
48
+ ]
49
+ end
50
+
51
+ def initialize(col_co_id = SKIP,
52
+ col_co_code = SKIP,
53
+ account_group_id = SKIP)
54
+ @col_co_id = col_co_id unless col_co_id == SKIP
55
+ @col_co_code = col_co_code unless col_co_code == SKIP
56
+ @account_group_id = account_group_id unless account_group_id == SKIP
57
+ end
58
+
59
+ # Creates an instance of the object from a hash.
60
+ def self.from_hash(hash)
61
+ return nil unless hash
62
+
63
+ # Extract variables from the hash.
64
+ col_co_id = hash.key?('ColCoId') ? hash['ColCoId'] : SKIP
65
+ col_co_code = hash.key?('ColCoCode') ? hash['ColCoCode'] : SKIP
66
+ account_group_id =
67
+ hash.key?('AccountGroupId') ? hash['AccountGroupId'] : SKIP
68
+
69
+ # Create object from extracted values.
70
+ EIDAccess.new(col_co_id,
71
+ col_co_code,
72
+ account_group_id)
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,166 @@
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
+ # EIDDocument Model.
8
+ class EIDDocument < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Technical identifier for the EID file. Should not be stored in database as
13
+ # it is not guaranteed to stay unchanged over time.
14
+ # @return [Integer]
15
+ attr_accessor :document_id
16
+
17
+ # Account Group Id
18
+ # @return [String]
19
+ attr_accessor :account_group_id
20
+
21
+ # Account group name
22
+ # @return [String]
23
+ attr_accessor :account_group_name
24
+
25
+ # Document type.
26
+ # Possible values:
27
+ # • NAT (National)
28
+ # • INT (International)
29
+ # @return [String]
30
+ attr_accessor :document_type
31
+
32
+ # Document format (CHORUS, DIFI etc.)
33
+ # @return [String]
34
+ attr_accessor :document_format
35
+
36
+ # Document date.
37
+ # Example: 20170101
38
+ # @return [String]
39
+ attr_accessor :document_date
40
+
41
+ # Number of invoices
42
+ # @return [Integer]
43
+ attr_accessor :number_of_invoices
44
+
45
+ # Document size
46
+ # @return [Integer]
47
+ attr_accessor :file_size
48
+
49
+ # Document status.
50
+ # Possible values:
51
+ # • NEW
52
+ # • VIEWED
53
+ # • DOWNLOADED
54
+ # • RESTORED
55
+ # @return [String]
56
+ attr_accessor :document_status
57
+
58
+ # Document file name.
59
+ # @return [String]
60
+ attr_accessor :document_name
61
+
62
+ # A mapping from model property names to API property names.
63
+ def self.names
64
+ @_hash = {} if @_hash.nil?
65
+ @_hash['document_id'] = 'DocumentId'
66
+ @_hash['account_group_id'] = 'AccountGroupId'
67
+ @_hash['account_group_name'] = 'AccountGroupName'
68
+ @_hash['document_type'] = 'DocumentType'
69
+ @_hash['document_format'] = 'DocumentFormat'
70
+ @_hash['document_date'] = 'DocumentDate'
71
+ @_hash['number_of_invoices'] = 'NumberOfInvoices'
72
+ @_hash['file_size'] = 'FileSize'
73
+ @_hash['document_status'] = 'DocumentStatus'
74
+ @_hash['document_name'] = 'DocumentName'
75
+ @_hash
76
+ end
77
+
78
+ # An array for optional fields
79
+ def self.optionals
80
+ %w[
81
+ document_id
82
+ account_group_id
83
+ account_group_name
84
+ document_type
85
+ document_format
86
+ document_date
87
+ number_of_invoices
88
+ file_size
89
+ document_status
90
+ document_name
91
+ ]
92
+ end
93
+
94
+ # An array for nullable fields
95
+ def self.nullables
96
+ %w[
97
+ document_id
98
+ account_group_id
99
+ account_group_name
100
+ document_type
101
+ document_format
102
+ document_date
103
+ number_of_invoices
104
+ file_size
105
+ document_status
106
+ document_name
107
+ ]
108
+ end
109
+
110
+ def initialize(document_id = SKIP,
111
+ account_group_id = SKIP,
112
+ account_group_name = SKIP,
113
+ document_type = SKIP,
114
+ document_format = SKIP,
115
+ document_date = SKIP,
116
+ number_of_invoices = SKIP,
117
+ file_size = SKIP,
118
+ document_status = SKIP,
119
+ document_name = SKIP)
120
+ @document_id = document_id unless document_id == SKIP
121
+ @account_group_id = account_group_id unless account_group_id == SKIP
122
+ @account_group_name = account_group_name unless account_group_name == SKIP
123
+ @document_type = document_type unless document_type == SKIP
124
+ @document_format = document_format unless document_format == SKIP
125
+ @document_date = document_date unless document_date == SKIP
126
+ @number_of_invoices = number_of_invoices unless number_of_invoices == SKIP
127
+ @file_size = file_size unless file_size == SKIP
128
+ @document_status = document_status unless document_status == SKIP
129
+ @document_name = document_name unless document_name == SKIP
130
+ end
131
+
132
+ # Creates an instance of the object from a hash.
133
+ def self.from_hash(hash)
134
+ return nil unless hash
135
+
136
+ # Extract variables from the hash.
137
+ document_id = hash.key?('DocumentId') ? hash['DocumentId'] : SKIP
138
+ account_group_id =
139
+ hash.key?('AccountGroupId') ? hash['AccountGroupId'] : SKIP
140
+ account_group_name =
141
+ hash.key?('AccountGroupName') ? hash['AccountGroupName'] : SKIP
142
+ document_type = hash.key?('DocumentType') ? hash['DocumentType'] : SKIP
143
+ document_format =
144
+ hash.key?('DocumentFormat') ? hash['DocumentFormat'] : SKIP
145
+ document_date = hash.key?('DocumentDate') ? hash['DocumentDate'] : SKIP
146
+ number_of_invoices =
147
+ hash.key?('NumberOfInvoices') ? hash['NumberOfInvoices'] : SKIP
148
+ file_size = hash.key?('FileSize') ? hash['FileSize'] : SKIP
149
+ document_status =
150
+ hash.key?('DocumentStatus') ? hash['DocumentStatus'] : SKIP
151
+ document_name = hash.key?('DocumentName') ? hash['DocumentName'] : SKIP
152
+
153
+ # Create object from extracted values.
154
+ EIDDocument.new(document_id,
155
+ account_group_id,
156
+ account_group_name,
157
+ document_type,
158
+ document_format,
159
+ document_date,
160
+ number_of_invoices,
161
+ file_size,
162
+ document_status,
163
+ document_name)
164
+ end
165
+ end
166
+ end