tessitura_rest 0.9.1.3 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c3100b55b92c58b20a9ae1b1ffc3f597d4726de02f3b5b02ed7ca8cb4d04246b
4
- data.tar.gz: 19e9edda27905c7c64337f1afa726ebe4e9944c78b778fae3e084792f4bb2434
3
+ metadata.gz: d389659acbd0708676aa00cd8349f0baf3d8eec0e444f0f72caa663c36bec033
4
+ data.tar.gz: c3280a330937ced3c7e5a84c882e28f7909321da1abfb93a336cb4224238db28
5
5
  SHA512:
6
- metadata.gz: 3780e7bca5e5955fe1ab04ad727ee9f97bc9c142451921e8facf0c283f49bf76f1e570fb51653412f5c5c6ab0ef13a97f658f29106607acb6a8b96932b8aee12
7
- data.tar.gz: 8bfcd262368963d16ccf66321aa7238a58e60866893eaf6920141259b73c777eb12e1e33c9f277c8b2b367c72a0bd7efcd08ecca44e670e49a5776af04b00851
6
+ metadata.gz: 879249884e531e398661825bd58f1675f34598bc9e2b9a9a4c408781f1b16ebf43bad8c241fcd6cc2b94402b42a042edfb6e221782a660de7ba8b849d1285418
7
+ data.tar.gz: d839caa1ba44bb4d113862c3c66bb9b2489d225d4b9e9af023484d88b7624aea1400fa2a4d31e9f53cfcdaaf673449c4f1ee05480b2d7777c7b546c14485f6f2
data/README.md CHANGED
@@ -46,7 +46,6 @@ followed by the method and arguments you would like to use.
46
46
  * USERNAME # the username to authenticate to your TessituraRest REST instance
47
47
  * PASSWORD # the password to authenticate to your TessituraRest REST instance
48
48
  * WEB_CART_TEXT # the ID to the pricing rule you have setup for Cart
49
- * ORDER_CONFIRM_TEXT # the ID to the pricing rule you have setup for Order Confirmations
50
49
  * SESSION_KEY # an existing session key in your TessituraRest instance
51
50
  * EMAIL # an email tied to an existing web login in your TessituraRest instance
52
51
  * CONSTITUENT_ID # an active constituent in your TessituraRest instance
@@ -105,6 +105,7 @@ module Constituents
105
105
 
106
106
  def update_household(params, current, options={})
107
107
  constituents = current['Affiliates'].map{|c| c['RelatedConstituentId']}
108
+ update = []
108
109
  constituents.each_with_index do |constituent, i|
109
110
  snapshot = get_constituent_snapshot(constituent)
110
111
  parameters =
@@ -133,8 +134,9 @@ module Constituents
133
134
  }
134
135
  options.merge!(basic_auth: @auth, headers: @headers)
135
136
  options.merge!(:body => parameters)
136
- self.class.put(base_api_endpoint("CRM/Constituents/#{constituent}"), options)
137
+ update << self.class.put(base_api_endpoint("CRM/Constituents/#{constituent}"), options)
137
138
  end
139
+ update.last if update.present?
138
140
  end
139
141
 
140
142
 
@@ -0,0 +1,7 @@
1
+ module Payments
2
+ def get_on_account_balance(current_user, payment_method_id, options={})
3
+ options.merge!(basic_auth: @auth, headers: @headers)
4
+ response = self.class.get(base_api_endpoint("TXN/Payments/OnAccount?constituentId=#{current_user}&paymentMethodId=#{payment_method_id}"), options)
5
+ JSON.parse(response.body)
6
+ end
7
+ end
@@ -1,3 +1,3 @@
1
1
  class TessituraRest
2
- VERSION = '0.9.1.3'.freeze
2
+ VERSION = '1.1.2'.freeze
3
3
  end
@@ -2,7 +2,7 @@ module Cart
2
2
 
3
3
  def get_cart(session_key, options={})
4
4
  options.merge!(basic_auth: @auth, headers: @headers)
5
- self.class.get(base_api_endpoint("Web/Cart/#{session_key}"), options)
5
+ self.class.get(base_api_endpoint("Web/Cart/#{session_key}?messageTypes=-11"), options)
6
6
  end
7
7
 
8
8
  def get_checkout_complete(session_key, options={})
@@ -15,16 +15,6 @@ module Cart
15
15
  self.class.delete(base_api_endpoint("Web/Cart/#{session_key}"), options)
16
16
  end
17
17
 
18
- def web_cart_text(session_key, options={})
19
- options.merge!(basic_auth: @auth, headers: @headers)
20
- self.class.get(base_api_endpoint("Web/Cart/#{session_key}/Messages?messageTypes=#{ENV['WEB_CART_TEXT']}&savedCart=false"), options)
21
- end
22
-
23
- def order_confirm_text(session_key, options={})
24
- options.merge!(basic_auth: @auth, headers: @headers)
25
- self.class.get(base_api_endpoint("Web/Cart/#{session_key}?messageTypes=#{ENV['ORDER_CONFIRM_TEXT']}&savedCart=true"), options)
26
- end
27
-
28
18
  def change_mode_of_sale(session_key, code, options={})
29
19
  parameters =
30
20
  {
@@ -99,6 +89,17 @@ module Cart
99
89
  self.class.post(base_api_endpoint("Web/Cart/#{session_key}/OnAccount"), options)
100
90
  end
101
91
 
92
+ def apply_on_account(session_key, amount, payment_method_id, options={})
93
+ parameters =
94
+ {
95
+ 'Amount': amount,
96
+ "PaymentMethodId": payment_method_id
97
+ }
98
+ options.merge!(basic_auth: @auth, headers: @headers)
99
+ options.merge!(:body => parameters.to_json, :headers => {'Content-Type' => 'application/json'})
100
+ self.class.post(base_api_endpoint("Web/Cart/#{session_key}/Payments/OnAccount"), options)
101
+ end
102
+
102
103
  def remove_on_account(session_key, payment_id, options={})
103
104
  options.merge!(basic_auth: @auth, headers: @headers)
104
105
  self.class.delete(base_api_endpoint("Web/Cart/#{session_key}/OnAccount/#{payment_id}"), options)
@@ -115,17 +116,6 @@ module Cart
115
116
  self.class.put(base_api_endpoint("Web/Cart/#{session_key}/Properties"), options)
116
117
  end
117
118
 
118
- def update_source(session_key, source_no, solicitor='webapi', options={})
119
- options.merge!(basic_auth: @auth, headers: @headers)
120
- parameters =
121
- {
122
- "Solicitor": solicitor,
123
- "SourceId": source_no
124
- }
125
- options.merge!(:body => parameters)
126
- self.class.put(base_api_endpoint("Web/Cart/#{session_key}/Properties"), options)
127
- end
128
-
129
119
  def add_order_comment(session_key, notes, solicitor='webapi', options={})
130
120
  options.merge!(basic_auth: @auth, headers: @headers)
131
121
  parameters =
@@ -18,22 +18,22 @@ module Session
18
18
  JSON.parse(response.body)
19
19
  end
20
20
 
21
+ def get_expiration(key, options={})
22
+ options.merge!(basic_auth: @auth, headers: @headers)
23
+ response = self.class.get(base_api_endpoint("Web/Session/#{key}/Expiration"), options)
24
+ JSON.parse(response.body)
25
+ end
26
+
21
27
  def transfer_session(session_key, new_session_key, options={})
22
28
  parameters =
23
- {
24
- 'NewSessionKey': new_session_key,
25
- }
29
+ {
30
+ 'NewSessionKey': new_session_key,
31
+ }
26
32
  options.merge!(basic_auth: @auth, headers: @headers)
27
33
  options.merge!(body: parameters)
28
34
  self.class.post(base_api_endpoint("Web/Session/#{session_key}/Transfer"), options)
29
35
  end
30
36
 
31
- def get_expiration(key, options={})
32
- options.merge!(basic_auth: @auth, headers: @headers)
33
- response = self.class.get(base_api_endpoint("Web/Session/#{key}/Expiration"), options)
34
- JSON.parse(response.body)
35
- end
36
-
37
37
  def get_variables(key, options={})
38
38
  options.merge!(basic_auth: @auth, headers: @headers)
39
39
  response = self.class.get(base_api_endpoint("Web/Session/#{key}/Variables"), options)
@@ -24,6 +24,7 @@ class TessituraRest
24
24
  include Login
25
25
  include Orders
26
26
  include Package
27
+ include Payments
27
28
  include PaymentPlanExtension
28
29
  include PerformanceExtension
29
30
  include PerformancePackageModeOfSales
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tessitura_rest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.1.3
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brittany Martin, Danielle Greaves, Craig Donavin, Patrick FitzGerald
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-06-16 00:00:00.000000000 Z
11
+ date: 2021-09-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -152,6 +152,7 @@ files:
152
152
  - lib/tessitura_rest/security/security_user_groups.rb
153
153
  - lib/tessitura_rest/txn/orders.rb
154
154
  - lib/tessitura_rest/txn/package.rb
155
+ - lib/tessitura_rest/txn/payments.rb
155
156
  - lib/tessitura_rest/txn/performance_extension.rb
156
157
  - lib/tessitura_rest/txn/performance_package_mode_of_sales.rb
157
158
  - lib/tessitura_rest/txn/price_types.rb
@@ -186,7 +187,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
186
187
  - !ruby/object:Gem::Version
187
188
  version: '0'
188
189
  requirements: []
189
- rubygems_version: 3.2.16
190
+ rubygems_version: 3.2.15
190
191
  signing_key:
191
192
  specification_version: 4
192
193
  summary: Rest API Endpoint for the Tessitura Rest API (v14+).