tachain-sdk 0.1.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 (82) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE +21 -0
  4. data/README.md +226 -0
  5. data/Rakefile +10 -0
  6. data/git_push.sh +54 -0
  7. data/lib/tachain-sdk/api/api_declaration_api.rb +396 -0
  8. data/lib/tachain-sdk/api/api_delivery_api.rb +676 -0
  9. data/lib/tachain-sdk/api/api_enum_api.rb +94 -0
  10. data/lib/tachain-sdk/api/api_order_api.rb +846 -0
  11. data/lib/tachain-sdk/api/api_order_workflow_api.rb +170 -0
  12. data/lib/tachain-sdk/api/api_production_api.rb +466 -0
  13. data/lib/tachain-sdk/api_client.rb +397 -0
  14. data/lib/tachain-sdk/api_error.rb +58 -0
  15. data/lib/tachain-sdk/api_model_base.rb +88 -0
  16. data/lib/tachain-sdk/configuration.rb +329 -0
  17. data/lib/tachain-sdk/models/api_declaration_delete_request.rb +341 -0
  18. data/lib/tachain-sdk/models/api_declaration_document_request.rb +209 -0
  19. data/lib/tachain-sdk/models/api_declaration_list_dto.rb +251 -0
  20. data/lib/tachain-sdk/models/api_declaration_submit_request.rb +251 -0
  21. data/lib/tachain-sdk/models/api_declaration_submit_result_dto.rb +197 -0
  22. data/lib/tachain-sdk/models/api_integration_delete_request.rb +209 -0
  23. data/lib/tachain-sdk/models/api_order_confirm_receipt_request.rb +216 -0
  24. data/lib/tachain-sdk/models/api_order_submit_audit_request.rb +243 -0
  25. data/lib/tachain-sdk/models/api_response_api_declaration_list_dto.rb +199 -0
  26. data/lib/tachain-sdk/models/api_response_api_declaration_submit_result_dto.rb +199 -0
  27. data/lib/tachain-sdk/models/api_response_delivery_note_api_dto.rb +199 -0
  28. data/lib/tachain-sdk/models/api_response_order_api_dto.rb +199 -0
  29. data/lib/tachain-sdk/models/api_response_production_api_dto.rb +199 -0
  30. data/lib/tachain-sdk/models/api_response_string.rb +200 -0
  31. data/lib/tachain-sdk/models/attachment_in_api_create_dto.rb +262 -0
  32. data/lib/tachain-sdk/models/attachment_in_api_dto.rb +363 -0
  33. data/lib/tachain-sdk/models/brand_kpi_policy_result.rb +334 -0
  34. data/lib/tachain-sdk/models/brand_order_kpi_snapshot_dto.rb +880 -0
  35. data/lib/tachain-sdk/models/brand_order_supplier_order_snapshot_dto.rb +749 -0
  36. data/lib/tachain-sdk/models/brand_order_uncompleted_declare_snapshot_dto.rb +513 -0
  37. data/lib/tachain-sdk/models/company.rb +780 -0
  38. data/lib/tachain-sdk/models/company_compliance_profile.rb +547 -0
  39. data/lib/tachain-sdk/models/company_utility_declaration.rb +592 -0
  40. data/lib/tachain-sdk/models/customer.rb +569 -0
  41. data/lib/tachain-sdk/models/delivery_note_api_dto.rb +597 -0
  42. data/lib/tachain-sdk/models/delivery_note_detail_api_dto.rb +682 -0
  43. data/lib/tachain-sdk/models/document_type_api_dto.rb +480 -0
  44. data/lib/tachain-sdk/models/factory.rb +545 -0
  45. data/lib/tachain-sdk/models/get_v1_enum_get_list200_response.rb +201 -0
  46. data/lib/tachain-sdk/models/microsoft_asp_net_core_mvc_problem_details.rb +188 -0
  47. data/lib/tachain-sdk/models/model1.rb +157 -0
  48. data/lib/tachain-sdk/models/model3.rb +202 -0
  49. data/lib/tachain-sdk/models/model4.rb +202 -0
  50. data/lib/tachain-sdk/models/order.rb +974 -0
  51. data/lib/tachain-sdk/models/order_api_dto.rb +918 -0
  52. data/lib/tachain-sdk/models/order_line.rb +1184 -0
  53. data/lib/tachain-sdk/models/order_line_api_dto.rb +1277 -0
  54. data/lib/tachain-sdk/models/order_stage_form_api_dto.rb +270 -0
  55. data/lib/tachain-sdk/models/order_stage_form_datum_api_dto.rb +260 -0
  56. data/lib/tachain-sdk/models/order_stage_form_dto.rb +254 -0
  57. data/lib/tachain-sdk/models/paged_response_delivery_note_api_dto.rb +296 -0
  58. data/lib/tachain-sdk/models/paged_response_order_api_dto.rb +296 -0
  59. data/lib/tachain-sdk/models/paged_response_production_api_dto.rb +296 -0
  60. data/lib/tachain-sdk/models/product_bom_grouping_dto.rb +280 -0
  61. data/lib/tachain-sdk/models/production_api_dto.rb +639 -0
  62. data/lib/tachain-sdk/models/production_raw_material_api_dto.rb +481 -0
  63. data/lib/tachain-sdk/models/production_raw_material_dto.rb +548 -0
  64. data/lib/tachain-sdk/models/production_sales_order_api_dto.rb +436 -0
  65. data/lib/tachain-sdk/models/result_api_enum.rb +270 -0
  66. data/lib/tachain-sdk/models/result_brand_report_allocated_delivery_kpi_detail.rb +331 -0
  67. data/lib/tachain-sdk/models/result_brand_report_unlinked_order_detail.rb +229 -0
  68. data/lib/tachain-sdk/models/result_kpi_archived_data_change_detail.rb +418 -0
  69. data/lib/tachain-sdk/models/result_mapping_order_select.rb +335 -0
  70. data/lib/tachain-sdk/models/result_order_trace_report.rb +721 -0
  71. data/lib/tachain-sdk/models/stage_attachment_api_dto.rb +398 -0
  72. data/lib/tachain-sdk/models/supplier.rb +585 -0
  73. data/lib/tachain-sdk/models/supplier_onboarding_ext.rb +383 -0
  74. data/lib/tachain-sdk/models/template_dto_business_risk_warn_info_dto.rb +456 -0
  75. data/lib/tachain-sdk/models/template_dto_multi_so_line_complete_status.rb +227 -0
  76. data/lib/tachain-sdk/models/trader.rb +506 -0
  77. data/lib/tachain-sdk/signed_api_client.rb +65 -0
  78. data/lib/tachain-sdk/version.rb +15 -0
  79. data/lib/tachain-sdk.rb +108 -0
  80. data/spec/spec_helper.rb +111 -0
  81. data/tachain-sdk.gemspec +39 -0
  82. metadata +165 -0
@@ -0,0 +1,383 @@
1
+ =begin
2
+ #Tactic Chain Public API
3
+
4
+ #Public integration endpoints. Set your own base URL and credential before calling.
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.25.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module TachainSdk
17
+ # 供应商上线进度附表(替代线下Excel人工维护列)
18
+ class SupplierOnboardingExt < ApiModelBase
19
+ # 关联 company.id
20
+ attr_accessor :company_id
21
+
22
+ # 跟踪显示名称覆盖;为空时默认显示 company.navite_name / short_name / name
23
+ attr_accessor :tracking_name_override
24
+
25
+ # 1V1培训状态:0未开始,10已邀约待确认,20已排期,30进行中,40已完成,50改期中,60未出席,70已取消,80已豁免
26
+ attr_accessor :training_status
27
+
28
+ # 首单完成情况:0未开始,10已创建未提交,20已提交待审核,30退回补充中,40审核通过未完结,50已完成,60已撤回/终止
29
+ attr_accessor :first_order_status
30
+
31
+ # 培训专员审核意见
32
+ attr_accessor :training_specialist_comment
33
+
34
+ # 再可业务专家审核意见
35
+ attr_accessor :biz_expert_comment
36
+
37
+ # 上线状态:0未邀请,10已邀请,20已注册,30已激活,40试点中,50已上线,60暂停,70已下线/终止,80冻结/黑名单
38
+ attr_accessor :online_status
39
+
40
+ # 首次培训时间;历史 Excel 只有日期时默认写 00:00:00
41
+ attr_accessor :first_training_at
42
+
43
+ # 首次培训补充说明,例如:发了视频资料、微信截图辅导
44
+ attr_accessor :first_training_note
45
+
46
+ # 备注
47
+ attr_accessor :remark
48
+
49
+ # 创建人
50
+ attr_accessor :created_by
51
+
52
+ # 更新人
53
+ attr_accessor :updated_by
54
+
55
+ # 创建时间
56
+ attr_accessor :created_at
57
+
58
+ # 更新时间
59
+ attr_accessor :updated_at
60
+
61
+ attr_accessor :company
62
+
63
+ # Attribute mapping from ruby-style variable name to JSON key.
64
+ def self.attribute_map
65
+ {
66
+ :'company_id' => :'companyId',
67
+ :'tracking_name_override' => :'trackingNameOverride',
68
+ :'training_status' => :'trainingStatus',
69
+ :'first_order_status' => :'firstOrderStatus',
70
+ :'training_specialist_comment' => :'trainingSpecialistComment',
71
+ :'biz_expert_comment' => :'bizExpertComment',
72
+ :'online_status' => :'onlineStatus',
73
+ :'first_training_at' => :'firstTrainingAt',
74
+ :'first_training_note' => :'firstTrainingNote',
75
+ :'remark' => :'remark',
76
+ :'created_by' => :'createdBy',
77
+ :'updated_by' => :'updatedBy',
78
+ :'created_at' => :'createdAt',
79
+ :'updated_at' => :'updatedAt',
80
+ :'company' => :'company'
81
+ }
82
+ end
83
+
84
+ # Returns attribute mapping this model knows about
85
+ def self.acceptable_attribute_map
86
+ attribute_map
87
+ end
88
+
89
+ # Returns all the JSON keys this model knows about
90
+ def self.acceptable_attributes
91
+ acceptable_attribute_map.values
92
+ end
93
+
94
+ # Attribute type mapping.
95
+ def self.openapi_types
96
+ {
97
+ :'company_id' => :'String',
98
+ :'tracking_name_override' => :'String',
99
+ :'training_status' => :'Integer',
100
+ :'first_order_status' => :'Integer',
101
+ :'training_specialist_comment' => :'String',
102
+ :'biz_expert_comment' => :'String',
103
+ :'online_status' => :'Integer',
104
+ :'first_training_at' => :'Time',
105
+ :'first_training_note' => :'String',
106
+ :'remark' => :'String',
107
+ :'created_by' => :'String',
108
+ :'updated_by' => :'String',
109
+ :'created_at' => :'Time',
110
+ :'updated_at' => :'Time',
111
+ :'company' => :'Company'
112
+ }
113
+ end
114
+
115
+ # List of attributes with nullable: true
116
+ def self.openapi_nullable
117
+ Set.new([
118
+ :'tracking_name_override',
119
+ :'training_status',
120
+ :'first_order_status',
121
+ :'training_specialist_comment',
122
+ :'biz_expert_comment',
123
+ :'online_status',
124
+ :'first_training_at',
125
+ :'first_training_note',
126
+ :'remark',
127
+ :'updated_by',
128
+ ])
129
+ end
130
+
131
+ # Initializes the object
132
+ # @param [Hash] attributes Model attributes in the form of hash
133
+ def initialize(attributes = {})
134
+ if (!attributes.is_a?(Hash))
135
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TachainSdk::SupplierOnboardingExt` initialize method"
136
+ end
137
+
138
+ # check to see if the attribute exists and convert string to symbol for hash key
139
+ acceptable_attribute_map = self.class.acceptable_attribute_map
140
+ attributes = attributes.each_with_object({}) { |(k, v), h|
141
+ if (!acceptable_attribute_map.key?(k.to_sym))
142
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TachainSdk::SupplierOnboardingExt`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
143
+ end
144
+ h[k.to_sym] = v
145
+ }
146
+
147
+ if attributes.key?(:'company_id')
148
+ self.company_id = attributes[:'company_id']
149
+ else
150
+ self.company_id = nil
151
+ end
152
+
153
+ if attributes.key?(:'tracking_name_override')
154
+ self.tracking_name_override = attributes[:'tracking_name_override']
155
+ end
156
+
157
+ if attributes.key?(:'training_status')
158
+ self.training_status = attributes[:'training_status']
159
+ end
160
+
161
+ if attributes.key?(:'first_order_status')
162
+ self.first_order_status = attributes[:'first_order_status']
163
+ end
164
+
165
+ if attributes.key?(:'training_specialist_comment')
166
+ self.training_specialist_comment = attributes[:'training_specialist_comment']
167
+ end
168
+
169
+ if attributes.key?(:'biz_expert_comment')
170
+ self.biz_expert_comment = attributes[:'biz_expert_comment']
171
+ end
172
+
173
+ if attributes.key?(:'online_status')
174
+ self.online_status = attributes[:'online_status']
175
+ end
176
+
177
+ if attributes.key?(:'first_training_at')
178
+ self.first_training_at = attributes[:'first_training_at']
179
+ end
180
+
181
+ if attributes.key?(:'first_training_note')
182
+ self.first_training_note = attributes[:'first_training_note']
183
+ end
184
+
185
+ if attributes.key?(:'remark')
186
+ self.remark = attributes[:'remark']
187
+ end
188
+
189
+ if attributes.key?(:'created_by')
190
+ self.created_by = attributes[:'created_by']
191
+ else
192
+ self.created_by = nil
193
+ end
194
+
195
+ if attributes.key?(:'updated_by')
196
+ self.updated_by = attributes[:'updated_by']
197
+ end
198
+
199
+ if attributes.key?(:'created_at')
200
+ self.created_at = attributes[:'created_at']
201
+ else
202
+ self.created_at = nil
203
+ end
204
+
205
+ if attributes.key?(:'updated_at')
206
+ self.updated_at = attributes[:'updated_at']
207
+ else
208
+ self.updated_at = nil
209
+ end
210
+
211
+ if attributes.key?(:'company')
212
+ self.company = attributes[:'company']
213
+ else
214
+ self.company = nil
215
+ end
216
+ end
217
+
218
+ # Show invalid properties with the reasons. Usually used together with valid?
219
+ # @return Array for valid properties with the reasons
220
+ def list_invalid_properties
221
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
222
+ invalid_properties = Array.new
223
+ if @company_id.nil?
224
+ invalid_properties.push('invalid value for "company_id", company_id cannot be nil.')
225
+ end
226
+
227
+ if @created_by.nil?
228
+ invalid_properties.push('invalid value for "created_by", created_by cannot be nil.')
229
+ end
230
+
231
+ if @created_at.nil?
232
+ invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
233
+ end
234
+
235
+ if @updated_at.nil?
236
+ invalid_properties.push('invalid value for "updated_at", updated_at cannot be nil.')
237
+ end
238
+
239
+ if @company.nil?
240
+ invalid_properties.push('invalid value for "company", company cannot be nil.')
241
+ end
242
+
243
+ invalid_properties
244
+ end
245
+
246
+ # Check to see if the all the properties in the model are valid
247
+ # @return true if the model is valid
248
+ def valid?
249
+ warn '[DEPRECATED] the `valid?` method is obsolete'
250
+ return false if @company_id.nil?
251
+ return false if @created_by.nil?
252
+ return false if @created_at.nil?
253
+ return false if @updated_at.nil?
254
+ return false if @company.nil?
255
+ true
256
+ end
257
+
258
+ # Custom attribute writer method with validation
259
+ # @param [Object] company_id Value to be assigned
260
+ def company_id=(company_id)
261
+ if company_id.nil?
262
+ fail ArgumentError, 'company_id cannot be nil'
263
+ end
264
+
265
+ @company_id = company_id
266
+ end
267
+
268
+ # Custom attribute writer method with validation
269
+ # @param [Object] created_by Value to be assigned
270
+ def created_by=(created_by)
271
+ if created_by.nil?
272
+ fail ArgumentError, 'created_by cannot be nil'
273
+ end
274
+
275
+ @created_by = created_by
276
+ end
277
+
278
+ # Custom attribute writer method with validation
279
+ # @param [Object] created_at Value to be assigned
280
+ def created_at=(created_at)
281
+ if created_at.nil?
282
+ fail ArgumentError, 'created_at cannot be nil'
283
+ end
284
+
285
+ @created_at = created_at
286
+ end
287
+
288
+ # Custom attribute writer method with validation
289
+ # @param [Object] updated_at Value to be assigned
290
+ def updated_at=(updated_at)
291
+ if updated_at.nil?
292
+ fail ArgumentError, 'updated_at cannot be nil'
293
+ end
294
+
295
+ @updated_at = updated_at
296
+ end
297
+
298
+ # Custom attribute writer method with validation
299
+ # @param [Object] company Value to be assigned
300
+ def company=(company)
301
+ if company.nil?
302
+ fail ArgumentError, 'company cannot be nil'
303
+ end
304
+
305
+ @company = company
306
+ end
307
+
308
+ # Checks equality by comparing each attribute.
309
+ # @param [Object] Object to be compared
310
+ def ==(o)
311
+ return true if self.equal?(o)
312
+ self.class == o.class &&
313
+ company_id == o.company_id &&
314
+ tracking_name_override == o.tracking_name_override &&
315
+ training_status == o.training_status &&
316
+ first_order_status == o.first_order_status &&
317
+ training_specialist_comment == o.training_specialist_comment &&
318
+ biz_expert_comment == o.biz_expert_comment &&
319
+ online_status == o.online_status &&
320
+ first_training_at == o.first_training_at &&
321
+ first_training_note == o.first_training_note &&
322
+ remark == o.remark &&
323
+ created_by == o.created_by &&
324
+ updated_by == o.updated_by &&
325
+ created_at == o.created_at &&
326
+ updated_at == o.updated_at &&
327
+ company == o.company
328
+ end
329
+
330
+ # @see the `==` method
331
+ # @param [Object] Object to be compared
332
+ def eql?(o)
333
+ self == o
334
+ end
335
+
336
+ # Calculates hash code according to all attributes.
337
+ # @return [Integer] Hash code
338
+ def hash
339
+ [company_id, tracking_name_override, training_status, first_order_status, training_specialist_comment, biz_expert_comment, online_status, first_training_at, first_training_note, remark, created_by, updated_by, created_at, updated_at, company].hash
340
+ end
341
+
342
+ # Builds the object from hash
343
+ # @param [Hash] attributes Model attributes in the form of hash
344
+ # @return [Object] Returns the model itself
345
+ def self.build_from_hash(attributes)
346
+ return nil unless attributes.is_a?(Hash)
347
+ attributes = attributes.transform_keys(&:to_sym)
348
+ transformed_hash = {}
349
+ openapi_types.each_pair do |key, type|
350
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
351
+ transformed_hash["#{key}"] = nil
352
+ elsif type =~ /\AArray<(.*)>/i
353
+ # check to ensure the input is an array given that the attribute
354
+ # is documented as an array but the input is not
355
+ if attributes[attribute_map[key]].is_a?(Array)
356
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
357
+ end
358
+ elsif !attributes[attribute_map[key]].nil?
359
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
360
+ end
361
+ end
362
+ new(transformed_hash)
363
+ end
364
+
365
+ # Returns the object in the form of hash
366
+ # @return [Hash] Returns the object in the form of hash
367
+ def to_hash
368
+ hash = {}
369
+ self.class.attribute_map.each_pair do |attr, param|
370
+ value = self.send(attr)
371
+ if value.nil?
372
+ is_nullable = self.class.openapi_nullable.include?(attr)
373
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
374
+ end
375
+
376
+ hash[param] = _to_hash(value)
377
+ end
378
+ hash
379
+ end
380
+
381
+ end
382
+
383
+ end