zanders 2.2.1 → 2.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/zanders/order.rb +47 -0
- data/lib/zanders/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 80f6a8f8fb898fc00a32f8f9354926a70370b7c4
|
4
|
+
data.tar.gz: 2dcbbb94dcfada4dbe64ea11b70f28e2fc99a095
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f84c6b4e296388b675e367b0b9bf9220ea3b90748bf032a7e45b10ba1cc928e290f7c04999a7dacdf43f571a0ecfdf5004c78434f7c37d4bd204f234ddeed128
|
7
|
+
data.tar.gz: 38b98f28016dc8b67423bb2610ba80e1c21c08893ad288925319ea35145501acfd0d987653e28cfcc0f9050398309bd8acb29a1cfdbe9acd72a36f0cc77f18b3
|
data/lib/zanders/order.rb
CHANGED
@@ -175,6 +175,53 @@ module Zanders
|
|
175
175
|
end
|
176
176
|
end
|
177
177
|
|
178
|
+
def get_shipments(order_number)
|
179
|
+
order = build_order_data.merge({ ordernumber: order_number })
|
180
|
+
|
181
|
+
response = soap_client(ORDER_API_URL).call(:get_tracking_info, message: order)
|
182
|
+
response = response.body[:get_tracking_info_response][:return][:item]
|
183
|
+
|
184
|
+
if response.first[:value] == "0"
|
185
|
+
info = Hash.new
|
186
|
+
info[:number_of_shipments] = response.find { |i| i[:key] == "numberOfShipments" }[:value].to_i
|
187
|
+
info[:shipments] = Array.new
|
188
|
+
|
189
|
+
if info[:number_of_shipments] > 0
|
190
|
+
tracking_numbers = response.find { |i| i[:key] == "trackingNumbers" }[:value]
|
191
|
+
|
192
|
+
tracking_numbers[:item].each do |part|
|
193
|
+
part = part[:item]
|
194
|
+
shipment = Hash.new
|
195
|
+
|
196
|
+
part.each do |info|
|
197
|
+
case info[:key]
|
198
|
+
when 'shipCompany'
|
199
|
+
shipment[:company] = info[:value]
|
200
|
+
when 'shipVia'
|
201
|
+
shipment[:via] = info[:value]
|
202
|
+
when 'trackingNumber'
|
203
|
+
shipment[:tracking_number] = info[:value]
|
204
|
+
when 'weight'
|
205
|
+
shipment[:weight] = info[:value]
|
206
|
+
when 'url'
|
207
|
+
shipment[:url] = info[:value]
|
208
|
+
end
|
209
|
+
end
|
210
|
+
|
211
|
+
info[:shipments].push shipment
|
212
|
+
end
|
213
|
+
|
214
|
+
info[:success] = true
|
215
|
+
|
216
|
+
info
|
217
|
+
else
|
218
|
+
{ success: false, error_code: response.first[:value], error_message: "No present tracking information" }
|
219
|
+
end
|
220
|
+
else
|
221
|
+
{ success: false, error_code: response.first[:value] }
|
222
|
+
end
|
223
|
+
end
|
224
|
+
|
178
225
|
def get_tracking_info(order_number)
|
179
226
|
order = build_order_data.merge({ ordernumber: order_number })
|
180
227
|
|
data/lib/zanders/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zanders
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Knight
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-05-
|
11
|
+
date: 2018-05-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|