seatsio 22 → 23
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/seatsio.rb +1 -3
- data/lib/seatsio/domain.rb +15 -38
- data/lib/seatsio/events.rb +10 -1
- data/lib/seatsio/events/change_object_status_in_batch_request.rb +6 -0
- data/lib/seatsio/version.rb +1 -1
- metadata +3 -3
- data/lib/seatsio/accounts.rb +0 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b88d6d19b2c22781400c6ae47b2b56ad427ac9bad5c8ec5a3c6bff74ee51b669
|
4
|
+
data.tar.gz: 11bf8b67f7fee295ee84353f2d949b4394f74c503f62ad390629f4911d441e19
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 58861f8258b3054132b3cd5e9a58689a1f484da363da9a006c35829c59e21dd454bb3b284aa114c4b015158e2673d28a68f949f82905184d7e8adeda44a43839
|
7
|
+
data.tar.gz: 72b0cd80783a6ae96f5d029246fb602ed8e06390a98a301b78b87998ea076db2357b6466692d42573949aafd68a17e7494947189190e4eb5e5d100530f78a9c9
|
data/Gemfile.lock
CHANGED
data/lib/seatsio.rb
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
require 'seatsio/version'
|
2
2
|
require 'seatsio/charts'
|
3
|
-
require 'seatsio/accounts'
|
4
3
|
require 'seatsio/subaccounts'
|
5
4
|
require 'seatsio/workspaces'
|
6
5
|
require 'seatsio/events'
|
@@ -12,12 +11,11 @@ require 'seatsio/usage_reports'
|
|
12
11
|
module Seatsio
|
13
12
|
# Main Seatsio Class
|
14
13
|
class Client
|
15
|
-
attr_reader :charts, :
|
14
|
+
attr_reader :charts, :subaccounts, :workspaces, :events,
|
16
15
|
:hold_tokens, :chart_reports, :event_reports, :usage_reports
|
17
16
|
|
18
17
|
def initialize(secret_key, workspace_key = nil, base_url = 'https://api.seatsio.net')
|
19
18
|
@charts = ChartsClient.new(secret_key, workspace_key, base_url)
|
20
|
-
@accounts = AccountsClient.new(secret_key, workspace_key, base_url)
|
21
19
|
@subaccounts = SubaccountsClient.new(secret_key, workspace_key, base_url)
|
22
20
|
@workspaces = WorkspacesClient.new(secret_key, base_url)
|
23
21
|
@events = EventsClient.new(secret_key, workspace_key, base_url)
|
data/lib/seatsio/domain.rb
CHANGED
@@ -118,48 +118,16 @@ module Seatsio::Domain
|
|
118
118
|
end
|
119
119
|
end
|
120
120
|
|
121
|
-
class
|
122
|
-
attr_reader :
|
123
|
-
:validate_unlabeled_objects
|
124
|
-
|
125
|
-
def initialize(data)
|
126
|
-
@validate_duplicate_labels = data['VALIDATE_DUPLICATE_LABELS']
|
127
|
-
@validate_objects_without_categories = data['VALIDATE_OBJECTS_WITHOUT_CATEGORIES']
|
128
|
-
@validate_unlabeled_objects = data['VALIDATE_UNLABELED_OBJECTS']
|
129
|
-
end
|
130
|
-
end
|
131
|
-
|
132
|
-
class AccountSettings
|
133
|
-
attr_reader :draft_chart_drawings_enabled, :hold_on_select_for_gas, :chart_validation
|
134
|
-
|
135
|
-
def initialize(data)
|
136
|
-
@draft_chart_drawings_enabled = data['draftChartDrawingsEnabled']
|
137
|
-
@hold_on_select_for_gas = data['holdOnSelectForGAs']
|
138
|
-
@chart_validation = ChartValidationSettings.new(data['chartValidation'])
|
139
|
-
end
|
140
|
-
end
|
141
|
-
|
142
|
-
class Account
|
143
|
-
attr_reader :id, :secret_key, :designer_key, :name,
|
144
|
-
:email, :active, :settings
|
121
|
+
class Subaccount
|
122
|
+
attr_reader :id, :secret_key, :designer_key, :public_key, :name, :active
|
145
123
|
|
146
124
|
def initialize(data)
|
147
125
|
@id = data['id']
|
126
|
+
@public_key = data['publicKey']
|
148
127
|
@secret_key = data['secretKey']
|
149
128
|
@designer_key = data['designerKey']
|
150
129
|
@name = data['name']
|
151
|
-
@email = data['email']
|
152
130
|
@active = data['active']
|
153
|
-
@settings = AccountSettings.new(data['settings']) if data['settings'] != nil
|
154
|
-
end
|
155
|
-
end
|
156
|
-
|
157
|
-
class Subaccount < Account
|
158
|
-
attr_reader :public_key, :workspace
|
159
|
-
|
160
|
-
def initialize(data)
|
161
|
-
super
|
162
|
-
@public_key = data['publicKey']
|
163
131
|
end
|
164
132
|
end
|
165
133
|
|
@@ -203,6 +171,15 @@ module Seatsio::Domain
|
|
203
171
|
end
|
204
172
|
end
|
205
173
|
|
174
|
+
class ChangeObjectStatusInBatchResult
|
175
|
+
|
176
|
+
attr_reader :results
|
177
|
+
|
178
|
+
def initialize(data)
|
179
|
+
@results = data['results'].map { |r| ChangeObjectStatusResult.new(r) }
|
180
|
+
end
|
181
|
+
end
|
182
|
+
|
206
183
|
class HoldToken
|
207
184
|
|
208
185
|
attr_reader :hold_token, :expires_at, :expires_in_seconds, :workspace_key
|
@@ -338,7 +315,7 @@ module Seatsio::Domain
|
|
338
315
|
|
339
316
|
def initialize(data)
|
340
317
|
@subaccount = data['subaccount'] ? UsageSubaccount.new(data['subaccount']) : nil
|
341
|
-
@usage_by_chart = data['usageByChart'].map {|usage| UsageByChart.new(usage)}
|
318
|
+
@usage_by_chart = data['usageByChart'].map { |usage| UsageByChart.new(usage) }
|
342
319
|
end
|
343
320
|
end
|
344
321
|
|
@@ -356,8 +333,8 @@ module Seatsio::Domain
|
|
356
333
|
attr_reader :chart, :usage_by_event
|
357
334
|
|
358
335
|
def initialize(data)
|
359
|
-
@chart = data['chart'] ? UsageChart.new(data['chart']) :
|
360
|
-
@usage_by_event = data['usageByEvent'].map {|usage| UsageByEvent.new(usage)}
|
336
|
+
@chart = data['chart'] ? UsageChart.new(data['chart']) : nil
|
337
|
+
@usage_by_event = data['usageByEvent'].map { |usage| UsageByEvent.new(usage) }
|
361
338
|
end
|
362
339
|
end
|
363
340
|
|
data/lib/seatsio/events.rb
CHANGED
@@ -59,12 +59,21 @@ module Seatsio
|
|
59
59
|
def change_object_status(event_key_or_keys, object_or_objects, status, hold_token = nil, order_id = nil, keep_extra_data = nil)
|
60
60
|
request = create_change_object_status_request(object_or_objects, status, hold_token, order_id, event_key_or_keys, keep_extra_data)
|
61
61
|
request[:params] = {
|
62
|
-
|
62
|
+
:expand => 'objects'
|
63
63
|
}
|
64
64
|
response = @http_client.post("seasons/actions/change-object-status", request)
|
65
65
|
Domain::ChangeObjectStatusResult.new(response)
|
66
66
|
end
|
67
67
|
|
68
|
+
def change_object_status_in_batch(status_change_requests)
|
69
|
+
request = {
|
70
|
+
:statusChanges => status_change_requests,
|
71
|
+
:params => { :expand => 'objects' }
|
72
|
+
}
|
73
|
+
response = @http_client.post("events/actions/change-object-status", request)
|
74
|
+
Domain::ChangeObjectStatusInBatchResult.new(response).results
|
75
|
+
end
|
76
|
+
|
68
77
|
def hold(event_key_or_keys, object_or_objects, hold_token, order_id = nil, keep_extra_data = nil)
|
69
78
|
change_object_status(event_key_or_keys, object_or_objects, Domain::ObjectStatus::HELD, hold_token, order_id, keep_extra_data)
|
70
79
|
end
|
@@ -0,0 +1,6 @@
|
|
1
|
+
def create_change_object_status_jn_batch_request(event_key, object_or_objects, status, hold_token = nil , order_id = nil, keep_extra_data = nil)
|
2
|
+
result = create_change_object_status_request(object_or_objects, status, hold_token, order_id, '', keep_extra_data)
|
3
|
+
result.delete(:events)
|
4
|
+
result[:event] = event_key
|
5
|
+
result
|
6
|
+
end
|
data/lib/seatsio/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: seatsio
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '
|
4
|
+
version: '23'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Seats.io
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-02
|
11
|
+
date: 2020-03-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -109,13 +109,13 @@ files:
|
|
109
109
|
- bin/console
|
110
110
|
- bin/setup
|
111
111
|
- lib/seatsio.rb
|
112
|
-
- lib/seatsio/accounts.rb
|
113
112
|
- lib/seatsio/chart_reports.rb
|
114
113
|
- lib/seatsio/charts.rb
|
115
114
|
- lib/seatsio/domain.rb
|
116
115
|
- lib/seatsio/event_reports.rb
|
117
116
|
- lib/seatsio/events.rb
|
118
117
|
- lib/seatsio/events/change_best_available_object_status_request.rb
|
118
|
+
- lib/seatsio/events/change_object_status_in_batch_request.rb
|
119
119
|
- lib/seatsio/events/change_object_status_request.rb
|
120
120
|
- lib/seatsio/exception.rb
|
121
121
|
- lib/seatsio/hold_tokens.rb
|
data/lib/seatsio/accounts.rb
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
require "seatsio/exception"
|
2
|
-
require "base64"
|
3
|
-
require "seatsio/httpClient"
|
4
|
-
require "seatsio/domain"
|
5
|
-
require "json"
|
6
|
-
require "cgi"
|
7
|
-
require "seatsio/domain"
|
8
|
-
|
9
|
-
module Seatsio
|
10
|
-
class AccountsClient
|
11
|
-
def initialize(secret_key, workspace_key, base_url)
|
12
|
-
@http_client = ::Seatsio::HttpClient.new(secret_key, workspace_key, base_url)
|
13
|
-
end
|
14
|
-
|
15
|
-
def retrieve_my_account
|
16
|
-
response = @http_client.get('accounts/me')
|
17
|
-
Domain::Account.new(response)
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|