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,140 @@
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
+ # EIDDocumentResponse Model.
8
+ class EIDDocumentResponse < 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
+ # Indicates overall status of the request. Allowed values: SUCCESS, FAILED
18
+ # @return [String]
19
+ attr_accessor :status
20
+
21
+ # Indicates overall status of the request. Allowed values: SUCCESS, FAILED
22
+ # @return [Array[EIDDocument]]
23
+ attr_accessor :data
24
+
25
+ # Number of records returned in the response
26
+ # @return [Integer]
27
+ attr_accessor :page_size
28
+
29
+ # Current page
30
+ # @return [Integer]
31
+ attr_accessor :page
32
+
33
+ # Total number of pages available for the requested data
34
+ # @return [Integer]
35
+ attr_accessor :total_pages
36
+
37
+ # Total number of elements corresponding to the request
38
+ # @return [Integer]
39
+ attr_accessor :total_records
40
+
41
+ # True if it is the first page, false otherwise
42
+ # @return [TrueClass | FalseClass]
43
+ attr_accessor :is_first_page
44
+
45
+ # True if it is the last page, false, otherwise.
46
+ # @return [TrueClass | FalseClass]
47
+ attr_accessor :is_last_page
48
+
49
+ # A mapping from model property names to API property names.
50
+ def self.names
51
+ @_hash = {} if @_hash.nil?
52
+ @_hash['request_id'] = 'RequestId'
53
+ @_hash['status'] = 'Status'
54
+ @_hash['data'] = 'Data'
55
+ @_hash['page_size'] = 'PageSize'
56
+ @_hash['page'] = 'Page'
57
+ @_hash['total_pages'] = 'TotalPages'
58
+ @_hash['total_records'] = 'TotalRecords'
59
+ @_hash['is_first_page'] = 'IsFirstPage'
60
+ @_hash['is_last_page'] = 'IsLastPage'
61
+ @_hash
62
+ end
63
+
64
+ # An array for optional fields
65
+ def self.optionals
66
+ %w[
67
+ request_id
68
+ status
69
+ data
70
+ page_size
71
+ page
72
+ total_pages
73
+ total_records
74
+ is_first_page
75
+ is_last_page
76
+ ]
77
+ end
78
+
79
+ # An array for nullable fields
80
+ def self.nullables
81
+ []
82
+ end
83
+
84
+ def initialize(request_id = SKIP,
85
+ status = SKIP,
86
+ data = SKIP,
87
+ page_size = SKIP,
88
+ page = SKIP,
89
+ total_pages = SKIP,
90
+ total_records = SKIP,
91
+ is_first_page = SKIP,
92
+ is_last_page = SKIP)
93
+ @request_id = request_id unless request_id == SKIP
94
+ @status = status unless status == SKIP
95
+ @data = data unless data == SKIP
96
+ @page_size = page_size unless page_size == SKIP
97
+ @page = page unless page == SKIP
98
+ @total_pages = total_pages unless total_pages == SKIP
99
+ @total_records = total_records unless total_records == SKIP
100
+ @is_first_page = is_first_page unless is_first_page == SKIP
101
+ @is_last_page = is_last_page unless is_last_page == SKIP
102
+ end
103
+
104
+ # Creates an instance of the object from a hash.
105
+ def self.from_hash(hash)
106
+ return nil unless hash
107
+
108
+ # Extract variables from the hash.
109
+ request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
110
+ status = hash.key?('Status') ? hash['Status'] : SKIP
111
+ # Parameter is an array, so we need to iterate through it
112
+ data = nil
113
+ unless hash['Data'].nil?
114
+ data = []
115
+ hash['Data'].each do |structure|
116
+ data << (EIDDocument.from_hash(structure) if structure)
117
+ end
118
+ end
119
+
120
+ data = SKIP unless hash.key?('Data')
121
+ page_size = hash.key?('PageSize') ? hash['PageSize'] : SKIP
122
+ page = hash.key?('Page') ? hash['Page'] : SKIP
123
+ total_pages = hash.key?('TotalPages') ? hash['TotalPages'] : SKIP
124
+ total_records = hash.key?('TotalRecords') ? hash['TotalRecords'] : SKIP
125
+ is_first_page = hash.key?('IsFirstPage') ? hash['IsFirstPage'] : SKIP
126
+ is_last_page = hash.key?('IsLastPage') ? hash['IsLastPage'] : SKIP
127
+
128
+ # Create object from extracted values.
129
+ EIDDocumentResponse.new(request_id,
130
+ status,
131
+ data,
132
+ page_size,
133
+ page,
134
+ total_pages,
135
+ total_records,
136
+ is_first_page,
137
+ is_last_page)
138
+ end
139
+ end
140
+ end
@@ -0,0 +1,86 @@
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
+ # EIDDownloadReq Model.
8
+ class EIDDownloadReq < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Collecting Company Code of the selected payer.
13
+ # Mandatory
14
+ # @return [Integer]
15
+ attr_accessor :col_co_code
16
+
17
+ # Collecting Company Code of the selected payer.
18
+ # Mandatory
19
+ # @return [Array[String]]
20
+ attr_accessor :eid_list
21
+
22
+ # ColCo code associated with the Account Group IDs of the given EID/EDI
23
+ # files.
24
+ # Mandatory
25
+ # @return [Integer]
26
+ attr_accessor :account_group_country
27
+
28
+ # ColCo code associated with the Account Group IDs of the given EID/EDI
29
+ # files.
30
+ # Mandatory
31
+ # @return [Array[String]]
32
+ attr_accessor :account_group_id_list
33
+
34
+ # A mapping from model property names to API property names.
35
+ def self.names
36
+ @_hash = {} if @_hash.nil?
37
+ @_hash['col_co_code'] = 'ColCoCode'
38
+ @_hash['eid_list'] = 'EIDList'
39
+ @_hash['account_group_country'] = 'AccountGroupCountry'
40
+ @_hash['account_group_id_list'] = 'AccountGroupIdList'
41
+ @_hash
42
+ end
43
+
44
+ # An array for optional fields
45
+ def self.optionals
46
+ []
47
+ end
48
+
49
+ # An array for nullable fields
50
+ def self.nullables
51
+ %w[
52
+ col_co_code
53
+ account_group_country
54
+ ]
55
+ end
56
+
57
+ def initialize(col_co_code = nil,
58
+ eid_list = nil,
59
+ account_group_country = nil,
60
+ account_group_id_list = nil)
61
+ @col_co_code = col_co_code
62
+ @eid_list = eid_list
63
+ @account_group_country = account_group_country
64
+ @account_group_id_list = account_group_id_list
65
+ end
66
+
67
+ # Creates an instance of the object from a hash.
68
+ def self.from_hash(hash)
69
+ return nil unless hash
70
+
71
+ # Extract variables from the hash.
72
+ col_co_code = hash.key?('ColCoCode') ? hash['ColCoCode'] : nil
73
+ eid_list = hash.key?('EIDList') ? hash['EIDList'] : nil
74
+ account_group_country =
75
+ hash.key?('AccountGroupCountry') ? hash['AccountGroupCountry'] : nil
76
+ account_group_id_list =
77
+ hash.key?('AccountGroupIdList') ? hash['AccountGroupIdList'] : nil
78
+
79
+ # Create object from extracted values.
80
+ EIDDownloadReq.new(col_co_code,
81
+ eid_list,
82
+ account_group_country,
83
+ account_group_id_list)
84
+ end
85
+ end
86
+ 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
+ # EIDDownloadRequest Model.
8
+ class EIDDownloadRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [EIDDownloadReq]
14
+ attr_accessor :filters
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['filters'] = 'Filters'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ filters
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(filters = SKIP)
36
+ @filters = filters unless filters == 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
+ filters = EIDDownloadReq.from_hash(hash['Filters']) if hash['Filters']
45
+
46
+ # Create object from extracted values.
47
+ EIDDownloadRequest.new(filters)
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,160 @@
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
+ # EIDSearchReq Model.
8
+ class EIDSearchReq < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Collecting Company Code of the selected payer.
13
+ # Mandatory
14
+ # @return [Integer]
15
+ attr_accessor :col_co_code
16
+
17
+ # Country code (colco code) of the account group.
18
+ # Mandatory
19
+ # @return [Integer]
20
+ attr_accessor :account_group_country
21
+
22
+ # List of IDs of the account groups that user has access to.
23
+ # Mandatory
24
+ # @return [Array[String]]
25
+ attr_accessor :account_group_id
26
+
27
+ # Account group name
28
+ # Optional.
29
+ # This input is a search criterion, if given.
30
+ # @return [String]
31
+ attr_accessor :account_group_name
32
+
33
+ # EID date searched from this date.
34
+ # Optional.
35
+ # @return [String]
36
+ attr_accessor :from_date
37
+
38
+ # Invoice date searched until this date.
39
+ # Optional.
40
+ # @return [String]
41
+ attr_accessor :to_date
42
+
43
+ # Invoice type.
44
+ # Optional.
45
+ # Possible values:
46
+ # • NAT (National)
47
+ # • INT (International)
48
+ # @return [String]
49
+ attr_accessor :invoice_type
50
+
51
+ # Status of the document.
52
+ # Optional.
53
+ # Possible values:
54
+ # • NEW
55
+ # • VIEWED
56
+ # • DOWNLOADED
57
+ # • RESTORED
58
+ # @return [String]
59
+ attr_accessor :invoice_status
60
+
61
+ # Sort option –
62
+ # • InvoiceNumber ASC
63
+ # • InvoiceDate ASC
64
+ # • InvoiceNumber DESC
65
+ # • InvoiceDate DESC
66
+ # Optional
67
+ # @return [Array[String]]
68
+ attr_accessor :sort_by
69
+
70
+ # A mapping from model property names to API property names.
71
+ def self.names
72
+ @_hash = {} if @_hash.nil?
73
+ @_hash['col_co_code'] = 'ColCoCode'
74
+ @_hash['account_group_country'] = 'AccountGroupCountry'
75
+ @_hash['account_group_id'] = 'AccountGroupId'
76
+ @_hash['account_group_name'] = 'AccountGroupName'
77
+ @_hash['from_date'] = 'FromDate'
78
+ @_hash['to_date'] = 'ToDate'
79
+ @_hash['invoice_type'] = 'InvoiceType'
80
+ @_hash['invoice_status'] = 'InvoiceStatus'
81
+ @_hash['sort_by'] = 'SortBy'
82
+ @_hash
83
+ end
84
+
85
+ # An array for optional fields
86
+ def self.optionals
87
+ %w[
88
+ account_group_name
89
+ from_date
90
+ to_date
91
+ invoice_type
92
+ invoice_status
93
+ sort_by
94
+ ]
95
+ end
96
+
97
+ # An array for nullable fields
98
+ def self.nullables
99
+ %w[
100
+ col_co_code
101
+ account_group_country
102
+ account_group_name
103
+ from_date
104
+ to_date
105
+ invoice_type
106
+ invoice_status
107
+ ]
108
+ end
109
+
110
+ def initialize(col_co_code = nil,
111
+ account_group_country = nil,
112
+ account_group_id = nil,
113
+ account_group_name = SKIP,
114
+ from_date = SKIP,
115
+ to_date = SKIP,
116
+ invoice_type = SKIP,
117
+ invoice_status = SKIP,
118
+ sort_by = SKIP)
119
+ @col_co_code = col_co_code
120
+ @account_group_country = account_group_country
121
+ @account_group_id = account_group_id
122
+ @account_group_name = account_group_name unless account_group_name == SKIP
123
+ @from_date = from_date unless from_date == SKIP
124
+ @to_date = to_date unless to_date == SKIP
125
+ @invoice_type = invoice_type unless invoice_type == SKIP
126
+ @invoice_status = invoice_status unless invoice_status == SKIP
127
+ @sort_by = sort_by unless sort_by == 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
+ col_co_code = hash.key?('ColCoCode') ? hash['ColCoCode'] : nil
136
+ account_group_country =
137
+ hash.key?('AccountGroupCountry') ? hash['AccountGroupCountry'] : nil
138
+ account_group_id =
139
+ hash.key?('AccountGroupId') ? hash['AccountGroupId'] : nil
140
+ account_group_name =
141
+ hash.key?('AccountGroupName') ? hash['AccountGroupName'] : SKIP
142
+ from_date = hash.key?('FromDate') ? hash['FromDate'] : SKIP
143
+ to_date = hash.key?('ToDate') ? hash['ToDate'] : SKIP
144
+ invoice_type = hash.key?('InvoiceType') ? hash['InvoiceType'] : SKIP
145
+ invoice_status = hash.key?('InvoiceStatus') ? hash['InvoiceStatus'] : SKIP
146
+ sort_by = hash.key?('SortBy') ? hash['SortBy'] : SKIP
147
+
148
+ # Create object from extracted values.
149
+ EIDSearchReq.new(col_co_code,
150
+ account_group_country,
151
+ account_group_id,
152
+ account_group_name,
153
+ from_date,
154
+ to_date,
155
+ invoice_type,
156
+ invoice_status,
157
+ sort_by)
158
+ end
159
+ end
160
+ end
@@ -0,0 +1,70 @@
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
+ # EIDSearchRequest Model.
8
+ class EIDSearchRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [EIDSearchReq]
14
+ attr_accessor :filters
15
+
16
+ # Specify the page of results to be returned.
17
+ # @return [Integer]
18
+ attr_accessor :page
19
+
20
+ # Specify the number of records to returned; Max 1000
21
+ # @return [Integer]
22
+ attr_accessor :page_size
23
+
24
+ # A mapping from model property names to API property names.
25
+ def self.names
26
+ @_hash = {} if @_hash.nil?
27
+ @_hash['filters'] = 'Filters'
28
+ @_hash['page'] = 'Page'
29
+ @_hash['page_size'] = 'PageSize'
30
+ @_hash
31
+ end
32
+
33
+ # An array for optional fields
34
+ def self.optionals
35
+ %w[
36
+ filters
37
+ page
38
+ page_size
39
+ ]
40
+ end
41
+
42
+ # An array for nullable fields
43
+ def self.nullables
44
+ []
45
+ end
46
+
47
+ def initialize(filters = SKIP,
48
+ page = SKIP,
49
+ page_size = SKIP)
50
+ @filters = filters unless filters == SKIP
51
+ @page = page unless page == SKIP
52
+ @page_size = page_size unless page_size == SKIP
53
+ end
54
+
55
+ # Creates an instance of the object from a hash.
56
+ def self.from_hash(hash)
57
+ return nil unless hash
58
+
59
+ # Extract variables from the hash.
60
+ filters = EIDSearchReq.from_hash(hash['Filters']) if hash['Filters']
61
+ page = hash.key?('Page') ? hash['Page'] : SKIP
62
+ page_size = hash.key?('PageSize') ? hash['PageSize'] : SKIP
63
+
64
+ # Create object from extracted values.
65
+ EIDSearchRequest.new(filters,
66
+ page,
67
+ page_size)
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,81 @@
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
+ # ErrorDetails Model.
8
+ class ErrorDetails < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Error code representing the error encountered
13
+ # @return [String]
14
+ attr_accessor :code
15
+
16
+ # Error type description
17
+ # @return [String]
18
+ attr_accessor :title
19
+
20
+ # Detailed inforamtion about the error
21
+ # @return [String]
22
+ attr_accessor :detail
23
+
24
+ # Applicable when more details related to error to be returned
25
+ # @return [Hash[String, String]]
26
+ attr_accessor :additional_info
27
+
28
+ # A mapping from model property names to API property names.
29
+ def self.names
30
+ @_hash = {} if @_hash.nil?
31
+ @_hash['code'] = 'Code'
32
+ @_hash['title'] = 'Title'
33
+ @_hash['detail'] = 'Detail'
34
+ @_hash['additional_info'] = 'AdditionalInfo'
35
+ @_hash
36
+ end
37
+
38
+ # An array for optional fields
39
+ def self.optionals
40
+ %w[
41
+ code
42
+ title
43
+ detail
44
+ additional_info
45
+ ]
46
+ end
47
+
48
+ # An array for nullable fields
49
+ def self.nullables
50
+ []
51
+ end
52
+
53
+ def initialize(code = SKIP,
54
+ title = SKIP,
55
+ detail = SKIP,
56
+ additional_info = SKIP)
57
+ @code = code unless code == SKIP
58
+ @title = title unless title == SKIP
59
+ @detail = detail unless detail == SKIP
60
+ @additional_info = additional_info unless additional_info == SKIP
61
+ end
62
+
63
+ # Creates an instance of the object from a hash.
64
+ def self.from_hash(hash)
65
+ return nil unless hash
66
+
67
+ # Extract variables from the hash.
68
+ code = hash.key?('Code') ? hash['Code'] : SKIP
69
+ title = hash.key?('Title') ? hash['Title'] : SKIP
70
+ detail = hash.key?('Detail') ? hash['Detail'] : SKIP
71
+ additional_info =
72
+ hash.key?('AdditionalInfo') ? hash['AdditionalInfo'] : SKIP
73
+
74
+ # Create object from extracted values.
75
+ ErrorDetails.new(code,
76
+ title,
77
+ detail,
78
+ additional_info)
79
+ end
80
+ end
81
+ 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
+ # ErrorStatus Model.
8
+ class ErrorStatus < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Error Code
13
+ # @return [String]
14
+ attr_accessor :code
15
+
16
+ # Error Description
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
+ ErrorStatus.new(code,
57
+ description)
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
+ # ErrorUserAccess Model.
8
+ class ErrorUserAccess < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [ErrorUserAccessError]
14
+ attr_accessor :error
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['error'] = 'Error'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ error
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(error = SKIP)
36
+ @error = error unless error == 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
+ error = ErrorUserAccessError.from_hash(hash['Error']) if hash['Error']
45
+
46
+ # Create object from extracted values.
47
+ ErrorUserAccess.new(error)
48
+ end
49
+ end
50
+ end