mr_speedy_ruby 1.0.0.pre.alpha.2 → 1.0.0.pre.alpha.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +2 -0
- data/Gemfile.lock +1 -1
- data/README.md +23 -1
- data/fixtures/vcr_cassettes/orders.yml +64 -0
- data/fixtures/vcr_cassettes/orders_by_status.yml +50 -0
- data/fixtures/vcr_cassettes/orders_with_limit.yml +52 -0
- data/fixtures/vcr_cassettes/orders_with_offset.yml +62 -0
- data/lib/mr_speedy_ruby/base.rb +29 -0
- data/lib/mr_speedy_ruby/client.rb +19 -9
- data/lib/mr_speedy_ruby/order.rb +27 -0
- data/lib/mr_speedy_ruby/version.rb +1 -1
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 165397e3f490933a9629fab7f1ccdbbc46f8dfb930c377c71435a8d719de64e1
|
4
|
+
data.tar.gz: fe00bea9f37148d44c08fcb6ec69b0c8b53db1e556afa828b89a542feca152d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3c0e07138c3bfc72d5ed0692dd896c754e9e5c42455b345b9b6c546a180c32ed646962ae583d86c20109b3f758682efeda2436c5758dad7021d83a437cfdb90b
|
7
|
+
data.tar.gz: 9013f4c7096f909db62dab0e812d682dc8a10f3bca1026cd50fcfdb912df815d0e60dc1b7824eb1e7a251aeb924daa4d6b1e857698149b2125e309c8f9f7b197
|
data/.travis.yml
CHANGED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -81,6 +81,8 @@ to make a request on mr.speedy sandbox server.
|
|
81
81
|
|
82
82
|
By default we set `MOTORBIKE` as default vehicle unless you pass `vehicle_type_id` as option for `opts`.
|
83
83
|
|
84
|
+
## Orders
|
85
|
+
|
84
86
|
### Placing an Order
|
85
87
|
Send request to mr.speedy api to create order.
|
86
88
|
|
@@ -118,6 +120,26 @@ parameter to true to test our implementation against sandbox server.
|
|
118
120
|
|
119
121
|
By default we set `MOTORBIKE` as default vehicle unless you pass `vehicle_type_id` as option for `opts`.
|
120
122
|
|
123
|
+
### Fetch Orders
|
124
|
+
|
125
|
+
Fetch Orders by initializing client and calling `MrSpeedyRuby::Client#orders`
|
126
|
+
method
|
127
|
+
|
128
|
+
```ruby
|
129
|
+
client = MrSpeedyRuby::Client.new(token: "mr-speedy-token")
|
130
|
+
client.orders(sandbox: true)
|
131
|
+
```
|
132
|
+
|
133
|
+
You can also control how orders will be fetch by supplying additional
|
134
|
+
[arguments](https://apitest.mrspeedy.ph/business-api/doc#orders) to your query
|
135
|
+
via payload argument.
|
136
|
+
|
137
|
+
```ruby
|
138
|
+
client = MrSpeedyRuby::Client.new(token: "mr-speedy-token")
|
139
|
+
# Fetch Completed Orders
|
140
|
+
client.orders(sandbox: true, payload: { status: "completed" })
|
141
|
+
```
|
142
|
+
|
121
143
|
## Development
|
122
144
|
|
123
145
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
@@ -131,7 +153,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
|
|
131
153
|
- [x] Create Order
|
132
154
|
- [ ] Update Order
|
133
155
|
- [ ] Cancel Order
|
134
|
-
- [
|
156
|
+
- [x] Order List
|
135
157
|
- [ ] Courier Info and Location Tracker
|
136
158
|
- [ ] Create Draft Deliveries
|
137
159
|
- [ ] Update Draft Deliveries
|
@@ -0,0 +1,64 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://robotapitest.mrspeedy.ph/api/business/1.1/orders
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: "{}"
|
9
|
+
headers:
|
10
|
+
Accept-Encoding:
|
11
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
12
|
+
Accept:
|
13
|
+
- "*/*"
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
Host:
|
17
|
+
- robotapitest.mrspeedy.ph
|
18
|
+
X-Dv-Auth-Token:
|
19
|
+
- 70B4ABCA8A35AC50E1585E27F217DF160F740D46
|
20
|
+
response:
|
21
|
+
status:
|
22
|
+
code: 200
|
23
|
+
message: OK
|
24
|
+
headers:
|
25
|
+
Server:
|
26
|
+
- nginx
|
27
|
+
Date:
|
28
|
+
- Wed, 13 May 2020 14:48:08 GMT
|
29
|
+
Content-Type:
|
30
|
+
- application/json; charset=utf-8
|
31
|
+
Transfer-Encoding:
|
32
|
+
- chunked
|
33
|
+
Connection:
|
34
|
+
- keep-alive
|
35
|
+
Vary:
|
36
|
+
- Accept-Encoding
|
37
|
+
X-Frame-Options:
|
38
|
+
- DENY
|
39
|
+
X-Content-Type-Options:
|
40
|
+
- nosniff
|
41
|
+
X-Xss-Protection:
|
42
|
+
- 1; mode=block;
|
43
|
+
Strict-Transport-Security:
|
44
|
+
- max-age=31536000; includeSubDomains
|
45
|
+
body:
|
46
|
+
encoding: ASCII-8BIT
|
47
|
+
string: '{"is_successful":true,"orders":[{"order_id":77802,"order_name":"77802","vehicle_type_id":8,"created_datetime":"2020-05-12T21:22:21+08:00","finish_datetime":null,"status":"available","status_description":"Available","matter":"Food","total_weight_kg":0,"is_client_notification_enabled":false,"is_contact_person_notification_enabled":false,"loaders_count":0,"backpayment_details":null,"points":[{"point_type":"plain","point_id":203156,"client_order_id":null,"address":"Zurich
|
48
|
+
Ave, Matandang Balara, Quezon City, Metro Manila, Philippines","latitude":"14.6710069","longitude":"121.0944076","required_start_datetime":"2020-05-13T22:52:21+08:00","required_finish_datetime":"2020-05-14T00:00:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Merchant","phone":"639123456789"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null},{"point_type":"plain","point_id":203157,"client_order_id":null,"address":"32nd
|
49
|
+
St. cor. 9th Ave, Taguig, Metro Manila, 32nd St, Taguig, Metro Manila, Philippines","latitude":"14.5528233","longitude":"121.0519364","required_start_datetime":"2020-05-13T22:52:21+08:00","required_finish_datetime":"2020-05-14T00:30:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Reciever","phone":"639123456789"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null}],"payment_amount":"170.00","delivery_fee_amount":"170.00","intercity_delivery_fee_amount":"0.00","weight_fee_amount":"0.00","insurance_amount":"0.00","insurance_fee_amount":"0.00","loading_fee_amount":"0.00","money_transfer_fee_amount":"0.00","suburban_delivery_fee_amount":"0.00","overnight_fee_amount":"0.00","discount_amount":"0.00","backpayment_amount":"0.00","cod_fee_amount":"0.00","backpayment_photo_url":null,"itinerary_document_url":null,"waybill_document_url":null,"courier":null,"is_motobox_required":false},{"order_id":77799,"order_name":"77799","vehicle_type_id":8,"created_datetime":"2020-05-12T20:28:12+08:00","finish_datetime":null,"status":"available","status_description":"Available","matter":"Food","total_weight_kg":0,"is_client_notification_enabled":false,"is_contact_person_notification_enabled":false,"loaders_count":0,"backpayment_details":null,"points":[{"point_type":"plain","point_id":203150,"client_order_id":null,"address":"Zurich
|
50
|
+
Ave, Matandang Balara, Quezon City, Metro Manila, Philippines","latitude":"14.6710069","longitude":"121.0944076","required_start_datetime":"2020-05-13T22:58:12+08:00","required_finish_datetime":"2020-05-14T00:00:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
51
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null},{"point_type":"plain","point_id":203151,"client_order_id":null,"address":"32nd
|
52
|
+
St. cor. 9th Ave, Taguig, Metro Manila, 32nd St, Taguig, Metro Manila, Philippines","latitude":"14.5528233","longitude":"121.0519364","required_start_datetime":"2020-05-13T22:58:12+08:00","required_finish_datetime":"2020-05-14T00:30:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
53
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null}],"payment_amount":"170.00","delivery_fee_amount":"170.00","intercity_delivery_fee_amount":"0.00","weight_fee_amount":"0.00","insurance_amount":"0.00","insurance_fee_amount":"0.00","loading_fee_amount":"0.00","money_transfer_fee_amount":"0.00","suburban_delivery_fee_amount":"0.00","overnight_fee_amount":"0.00","discount_amount":"0.00","backpayment_amount":"0.00","cod_fee_amount":"0.00","backpayment_photo_url":null,"itinerary_document_url":null,"waybill_document_url":null,"courier":null,"is_motobox_required":false},{"order_id":77778,"order_name":"77778","vehicle_type_id":8,"created_datetime":"2020-05-12T17:32:16+08:00","finish_datetime":null,"status":"available","status_description":"Available","matter":"Food","total_weight_kg":0,"is_client_notification_enabled":false,"is_contact_person_notification_enabled":false,"loaders_count":0,"backpayment_details":null,"points":[{"point_type":"plain","point_id":203114,"client_order_id":null,"address":"Zurich
|
54
|
+
Ave, Matandang Balara, Quezon City, Metro Manila, Philippines","latitude":"14.6710069","longitude":"121.0944076","required_start_datetime":"2020-05-13T22:32:16+08:00","required_finish_datetime":"2020-05-14T00:00:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
55
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null},{"point_type":"plain","point_id":203115,"client_order_id":null,"address":"32nd
|
56
|
+
St. cor. 9th Ave, Taguig, Metro Manila, 32nd St, Taguig, Metro Manila, Philippines","latitude":"14.5528233","longitude":"121.0519364","required_start_datetime":"2020-05-13T22:32:16+08:00","required_finish_datetime":"2020-05-14T00:30:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
57
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null}],"payment_amount":"170.00","delivery_fee_amount":"170.00","intercity_delivery_fee_amount":"0.00","weight_fee_amount":"0.00","insurance_amount":"0.00","insurance_fee_amount":"0.00","loading_fee_amount":"0.00","money_transfer_fee_amount":"0.00","suburban_delivery_fee_amount":"0.00","overnight_fee_amount":"0.00","discount_amount":"0.00","backpayment_amount":"0.00","cod_fee_amount":"0.00","backpayment_photo_url":null,"itinerary_document_url":null,"waybill_document_url":null,"courier":null,"is_motobox_required":false},{"order_id":77777,"order_name":"77777","vehicle_type_id":8,"created_datetime":"2020-05-12T17:13:08+08:00","finish_datetime":null,"status":"available","status_description":"Available","matter":"Food","total_weight_kg":0,"is_client_notification_enabled":false,"is_contact_person_notification_enabled":false,"loaders_count":0,"backpayment_details":null,"points":[{"point_type":"plain","point_id":203112,"client_order_id":null,"address":"Zurich
|
58
|
+
Ave, Matandang Balara, Quezon City, Metro Manila, Philippines","latitude":"14.6710069","longitude":"121.0944076","required_start_datetime":"2020-05-13T22:43:08+08:00","required_finish_datetime":"2020-05-14T00:00:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
59
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null},{"point_type":"plain","point_id":203113,"client_order_id":null,"address":"32nd
|
60
|
+
St. cor. 9th Ave, Taguig, Metro Manila, 32nd St, Taguig, Metro Manila, Philippines","latitude":"14.5528233","longitude":"121.0519364","required_start_datetime":"2020-05-13T22:43:08+08:00","required_finish_datetime":"2020-05-14T00:30:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
61
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null}],"payment_amount":"170.00","delivery_fee_amount":"170.00","intercity_delivery_fee_amount":"0.00","weight_fee_amount":"0.00","insurance_amount":"0.00","insurance_fee_amount":"0.00","loading_fee_amount":"0.00","money_transfer_fee_amount":"0.00","suburban_delivery_fee_amount":"0.00","overnight_fee_amount":"0.00","discount_amount":"0.00","backpayment_amount":"0.00","cod_fee_amount":"0.00","backpayment_photo_url":null,"itinerary_document_url":null,"waybill_document_url":null,"courier":null,"is_motobox_required":false}],"orders_count":4}'
|
62
|
+
http_version: null
|
63
|
+
recorded_at: Wed, 13 May 2020 14:48:08 GMT
|
64
|
+
recorded_with: VCR 5.1.0
|
@@ -0,0 +1,50 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://robotapitest.mrspeedy.ph/api/business/1.1/orders?status=completed
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: '{"status":"completed"}'
|
9
|
+
headers:
|
10
|
+
Accept-Encoding:
|
11
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
12
|
+
Accept:
|
13
|
+
- "*/*"
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
Host:
|
17
|
+
- robotapitest.mrspeedy.ph
|
18
|
+
X-Dv-Auth-Token:
|
19
|
+
- 70B4ABCA8A35AC50E1585E27F217DF160F740D46
|
20
|
+
response:
|
21
|
+
status:
|
22
|
+
code: 200
|
23
|
+
message: OK
|
24
|
+
headers:
|
25
|
+
Server:
|
26
|
+
- nginx
|
27
|
+
Date:
|
28
|
+
- Wed, 13 May 2020 14:47:45 GMT
|
29
|
+
Content-Type:
|
30
|
+
- application/json; charset=utf-8
|
31
|
+
Transfer-Encoding:
|
32
|
+
- chunked
|
33
|
+
Connection:
|
34
|
+
- keep-alive
|
35
|
+
Vary:
|
36
|
+
- Accept-Encoding
|
37
|
+
X-Frame-Options:
|
38
|
+
- DENY
|
39
|
+
X-Content-Type-Options:
|
40
|
+
- nosniff
|
41
|
+
X-Xss-Protection:
|
42
|
+
- 1; mode=block;
|
43
|
+
Strict-Transport-Security:
|
44
|
+
- max-age=31536000; includeSubDomains
|
45
|
+
body:
|
46
|
+
encoding: ASCII-8BIT
|
47
|
+
string: '{"is_successful":true,"orders":[],"orders_count":0}'
|
48
|
+
http_version: null
|
49
|
+
recorded_at: Wed, 13 May 2020 14:47:45 GMT
|
50
|
+
recorded_with: VCR 5.1.0
|
@@ -0,0 +1,52 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://robotapitest.mrspeedy.ph/api/business/1.1/orders?count=1
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: '{"count":1}'
|
9
|
+
headers:
|
10
|
+
Accept-Encoding:
|
11
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
12
|
+
Accept:
|
13
|
+
- "*/*"
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
Host:
|
17
|
+
- robotapitest.mrspeedy.ph
|
18
|
+
X-Dv-Auth-Token:
|
19
|
+
- 70B4ABCA8A35AC50E1585E27F217DF160F740D46
|
20
|
+
response:
|
21
|
+
status:
|
22
|
+
code: 200
|
23
|
+
message: OK
|
24
|
+
headers:
|
25
|
+
Server:
|
26
|
+
- nginx
|
27
|
+
Date:
|
28
|
+
- Wed, 13 May 2020 14:47:47 GMT
|
29
|
+
Content-Type:
|
30
|
+
- application/json; charset=utf-8
|
31
|
+
Transfer-Encoding:
|
32
|
+
- chunked
|
33
|
+
Connection:
|
34
|
+
- keep-alive
|
35
|
+
Vary:
|
36
|
+
- Accept-Encoding
|
37
|
+
X-Frame-Options:
|
38
|
+
- DENY
|
39
|
+
X-Content-Type-Options:
|
40
|
+
- nosniff
|
41
|
+
X-Xss-Protection:
|
42
|
+
- 1; mode=block;
|
43
|
+
Strict-Transport-Security:
|
44
|
+
- max-age=31536000; includeSubDomains
|
45
|
+
body:
|
46
|
+
encoding: ASCII-8BIT
|
47
|
+
string: '{"is_successful":true,"orders":[{"order_id":77802,"order_name":"77802","vehicle_type_id":8,"created_datetime":"2020-05-12T21:22:21+08:00","finish_datetime":null,"status":"available","status_description":"Available","matter":"Food","total_weight_kg":0,"is_client_notification_enabled":false,"is_contact_person_notification_enabled":false,"loaders_count":0,"backpayment_details":null,"points":[{"point_type":"plain","point_id":203156,"client_order_id":null,"address":"Zurich
|
48
|
+
Ave, Matandang Balara, Quezon City, Metro Manila, Philippines","latitude":"14.6710069","longitude":"121.0944076","required_start_datetime":"2020-05-13T22:52:21+08:00","required_finish_datetime":"2020-05-14T00:00:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Merchant","phone":"639123456789"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null},{"point_type":"plain","point_id":203157,"client_order_id":null,"address":"32nd
|
49
|
+
St. cor. 9th Ave, Taguig, Metro Manila, 32nd St, Taguig, Metro Manila, Philippines","latitude":"14.5528233","longitude":"121.0519364","required_start_datetime":"2020-05-13T22:52:21+08:00","required_finish_datetime":"2020-05-14T00:30:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Reciever","phone":"639123456789"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null}],"payment_amount":"170.00","delivery_fee_amount":"170.00","intercity_delivery_fee_amount":"0.00","weight_fee_amount":"0.00","insurance_amount":"0.00","insurance_fee_amount":"0.00","loading_fee_amount":"0.00","money_transfer_fee_amount":"0.00","suburban_delivery_fee_amount":"0.00","overnight_fee_amount":"0.00","discount_amount":"0.00","backpayment_amount":"0.00","cod_fee_amount":"0.00","backpayment_photo_url":null,"itinerary_document_url":null,"waybill_document_url":null,"courier":null,"is_motobox_required":false}],"orders_count":4}'
|
50
|
+
http_version: null
|
51
|
+
recorded_at: Wed, 13 May 2020 14:47:47 GMT
|
52
|
+
recorded_with: VCR 5.1.0
|
@@ -0,0 +1,62 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://robotapitest.mrspeedy.ph/api/business/1.1/orders?offset=1
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: '{"offset":1}'
|
9
|
+
headers:
|
10
|
+
Accept-Encoding:
|
11
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
12
|
+
Accept:
|
13
|
+
- "*/*"
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
Host:
|
17
|
+
- robotapitest.mrspeedy.ph
|
18
|
+
X-Dv-Auth-Token:
|
19
|
+
- 70B4ABCA8A35AC50E1585E27F217DF160F740D46
|
20
|
+
response:
|
21
|
+
status:
|
22
|
+
code: 200
|
23
|
+
message: OK
|
24
|
+
headers:
|
25
|
+
Server:
|
26
|
+
- nginx
|
27
|
+
Date:
|
28
|
+
- Wed, 13 May 2020 14:47:46 GMT
|
29
|
+
Content-Type:
|
30
|
+
- application/json; charset=utf-8
|
31
|
+
Transfer-Encoding:
|
32
|
+
- chunked
|
33
|
+
Connection:
|
34
|
+
- keep-alive
|
35
|
+
Vary:
|
36
|
+
- Accept-Encoding
|
37
|
+
X-Frame-Options:
|
38
|
+
- DENY
|
39
|
+
X-Content-Type-Options:
|
40
|
+
- nosniff
|
41
|
+
X-Xss-Protection:
|
42
|
+
- 1; mode=block;
|
43
|
+
Strict-Transport-Security:
|
44
|
+
- max-age=31536000; includeSubDomains
|
45
|
+
body:
|
46
|
+
encoding: ASCII-8BIT
|
47
|
+
string: '{"is_successful":true,"orders":[{"order_id":77799,"order_name":"77799","vehicle_type_id":8,"created_datetime":"2020-05-12T20:28:12+08:00","finish_datetime":null,"status":"available","status_description":"Available","matter":"Food","total_weight_kg":0,"is_client_notification_enabled":false,"is_contact_person_notification_enabled":false,"loaders_count":0,"backpayment_details":null,"points":[{"point_type":"plain","point_id":203150,"client_order_id":null,"address":"Zurich
|
48
|
+
Ave, Matandang Balara, Quezon City, Metro Manila, Philippines","latitude":"14.6710069","longitude":"121.0944076","required_start_datetime":"2020-05-13T22:58:12+08:00","required_finish_datetime":"2020-05-14T00:00:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
49
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null},{"point_type":"plain","point_id":203151,"client_order_id":null,"address":"32nd
|
50
|
+
St. cor. 9th Ave, Taguig, Metro Manila, 32nd St, Taguig, Metro Manila, Philippines","latitude":"14.5528233","longitude":"121.0519364","required_start_datetime":"2020-05-13T22:58:12+08:00","required_finish_datetime":"2020-05-14T00:30:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
51
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null}],"payment_amount":"170.00","delivery_fee_amount":"170.00","intercity_delivery_fee_amount":"0.00","weight_fee_amount":"0.00","insurance_amount":"0.00","insurance_fee_amount":"0.00","loading_fee_amount":"0.00","money_transfer_fee_amount":"0.00","suburban_delivery_fee_amount":"0.00","overnight_fee_amount":"0.00","discount_amount":"0.00","backpayment_amount":"0.00","cod_fee_amount":"0.00","backpayment_photo_url":null,"itinerary_document_url":null,"waybill_document_url":null,"courier":null,"is_motobox_required":false},{"order_id":77778,"order_name":"77778","vehicle_type_id":8,"created_datetime":"2020-05-12T17:32:16+08:00","finish_datetime":null,"status":"available","status_description":"Available","matter":"Food","total_weight_kg":0,"is_client_notification_enabled":false,"is_contact_person_notification_enabled":false,"loaders_count":0,"backpayment_details":null,"points":[{"point_type":"plain","point_id":203114,"client_order_id":null,"address":"Zurich
|
52
|
+
Ave, Matandang Balara, Quezon City, Metro Manila, Philippines","latitude":"14.6710069","longitude":"121.0944076","required_start_datetime":"2020-05-13T22:32:16+08:00","required_finish_datetime":"2020-05-14T00:00:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
53
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null},{"point_type":"plain","point_id":203115,"client_order_id":null,"address":"32nd
|
54
|
+
St. cor. 9th Ave, Taguig, Metro Manila, 32nd St, Taguig, Metro Manila, Philippines","latitude":"14.5528233","longitude":"121.0519364","required_start_datetime":"2020-05-13T22:32:16+08:00","required_finish_datetime":"2020-05-14T00:30:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
55
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null}],"payment_amount":"170.00","delivery_fee_amount":"170.00","intercity_delivery_fee_amount":"0.00","weight_fee_amount":"0.00","insurance_amount":"0.00","insurance_fee_amount":"0.00","loading_fee_amount":"0.00","money_transfer_fee_amount":"0.00","suburban_delivery_fee_amount":"0.00","overnight_fee_amount":"0.00","discount_amount":"0.00","backpayment_amount":"0.00","cod_fee_amount":"0.00","backpayment_photo_url":null,"itinerary_document_url":null,"waybill_document_url":null,"courier":null,"is_motobox_required":false},{"order_id":77777,"order_name":"77777","vehicle_type_id":8,"created_datetime":"2020-05-12T17:13:08+08:00","finish_datetime":null,"status":"available","status_description":"Available","matter":"Food","total_weight_kg":0,"is_client_notification_enabled":false,"is_contact_person_notification_enabled":false,"loaders_count":0,"backpayment_details":null,"points":[{"point_type":"plain","point_id":203112,"client_order_id":null,"address":"Zurich
|
56
|
+
Ave, Matandang Balara, Quezon City, Metro Manila, Philippines","latitude":"14.6710069","longitude":"121.0944076","required_start_datetime":"2020-05-13T22:43:08+08:00","required_finish_datetime":"2020-05-14T00:00:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
57
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null},{"point_type":"plain","point_id":203113,"client_order_id":null,"address":"32nd
|
58
|
+
St. cor. 9th Ave, Taguig, Metro Manila, 32nd St, Taguig, Metro Manila, Philippines","latitude":"14.5528233","longitude":"121.0519364","required_start_datetime":"2020-05-13T22:43:08+08:00","required_finish_datetime":"2020-05-14T00:30:00+08:00","arrival_start_datetime":null,"arrival_finish_datetime":null,"courier_visit_datetime":null,"contact_person":{"name":"Admin
|
59
|
+
One","phone":"639277876287"},"taking_amount":"0.00","buyout_amount":"0.00","note":null,"packages":[],"is_cod_cash_voucher_required":false,"is_order_payment_here":false,"building_number":null,"entrance_number":null,"intercom_code":null,"floor_number":null,"apartment_number":null,"invisible_mile_navigation_instructions":null}],"payment_amount":"170.00","delivery_fee_amount":"170.00","intercity_delivery_fee_amount":"0.00","weight_fee_amount":"0.00","insurance_amount":"0.00","insurance_fee_amount":"0.00","loading_fee_amount":"0.00","money_transfer_fee_amount":"0.00","suburban_delivery_fee_amount":"0.00","overnight_fee_amount":"0.00","discount_amount":"0.00","backpayment_amount":"0.00","cod_fee_amount":"0.00","backpayment_photo_url":null,"itinerary_document_url":null,"waybill_document_url":null,"courier":null,"is_motobox_required":false}],"orders_count":4}'
|
60
|
+
http_version: null
|
61
|
+
recorded_at: Wed, 13 May 2020 14:47:46 GMT
|
62
|
+
recorded_with: VCR 5.1.0
|
data/lib/mr_speedy_ruby/base.rb
CHANGED
@@ -10,6 +10,19 @@ module MrSpeedyRuby
|
|
10
10
|
PRODUCTION_BASE_URL="http://robot.mrspeedy.ph".freeze
|
11
11
|
STAGING_BASE_URL="https://robotapitest.mrspeedy.ph".freeze
|
12
12
|
|
13
|
+
# Constructor method
|
14
|
+
# @since 1.0.0-alpha.3
|
15
|
+
#
|
16
|
+
# @attr_reader [String] token authentication token
|
17
|
+
# @attr_reader [String] version api version
|
18
|
+
attr_reader :token, :version
|
19
|
+
|
20
|
+
def initialize(token:, version: "1.1")
|
21
|
+
@token = token
|
22
|
+
@version = version
|
23
|
+
end
|
24
|
+
|
25
|
+
|
13
26
|
# Endpoint Generator
|
14
27
|
# @since v0.1.0
|
15
28
|
#
|
@@ -38,6 +51,20 @@ module MrSpeedyRuby
|
|
38
51
|
response_body
|
39
52
|
end
|
40
53
|
|
54
|
+
# Send Get Request
|
55
|
+
# @since 1.0.0-alpha.3
|
56
|
+
# @param endpoint [String] request endpoint
|
57
|
+
# @param token [String] app token
|
58
|
+
# @param payload [Hash] message payload
|
59
|
+
#
|
60
|
+
# @return [Json] response
|
61
|
+
def get(endpoint:, token:, payload: {})
|
62
|
+
response = send_request("get", endpoint, token, payload)
|
63
|
+
|
64
|
+
response_body = JSON.parse(response.body)
|
65
|
+
response_body
|
66
|
+
end
|
67
|
+
|
41
68
|
private
|
42
69
|
|
43
70
|
# Request sender
|
@@ -56,6 +83,8 @@ module MrSpeedyRuby
|
|
56
83
|
request = if method == "post"
|
57
84
|
Net::HTTP::Post.new(uri)
|
58
85
|
else
|
86
|
+
# Encode payload as query parameters for GET method
|
87
|
+
uri.query = URI.encode_www_form( payload )
|
59
88
|
Net::HTTP::Get.new(uri)
|
60
89
|
end
|
61
90
|
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require "mr_speedy_ruby/base"
|
2
|
+
require "mr_speedy_ruby/order"
|
2
3
|
require "mr_speedy_ruby/lib/hash_refinement"
|
3
4
|
|
4
5
|
module MrSpeedyRuby
|
@@ -11,15 +12,6 @@ module MrSpeedyRuby
|
|
11
12
|
CAR = 7.freeze
|
12
13
|
MOTORBIKE = 8.freeze
|
13
14
|
|
14
|
-
# @attr_reader [String] token authentication token
|
15
|
-
# @attr_reader [String] version api version
|
16
|
-
attr_reader :token, :version
|
17
|
-
|
18
|
-
def initialize(token:, version: "1.1")
|
19
|
-
@token = token
|
20
|
-
@version = version
|
21
|
-
end
|
22
|
-
|
23
15
|
# Delivery Fee Calculation
|
24
16
|
# @since 0.1.0
|
25
17
|
#
|
@@ -96,6 +88,24 @@ module MrSpeedyRuby
|
|
96
88
|
post(endpoint: url, token: @token, payload: payload)
|
97
89
|
end
|
98
90
|
|
91
|
+
# Order List
|
92
|
+
# @since 1.0.0-alpha.3
|
93
|
+
#
|
94
|
+
# @param [Boolean] sandbox sandbox mode
|
95
|
+
# @param [Hash] payload order query payload
|
96
|
+
# @param payload [Integer, Array<Integer>] :order_id order id
|
97
|
+
# @param payload [String] :status order status
|
98
|
+
# @param payload [Integer] :offset order record offset count
|
99
|
+
# @param payload [Integer] :count order record limit
|
100
|
+
#
|
101
|
+
# @see https://apitest.mrspeedy.ph/business-api/doc#orders
|
102
|
+
#
|
103
|
+
# @return [Json]
|
104
|
+
def orders(sandbox: false, payload: {})
|
105
|
+
order_client = MrSpeedyRuby::Order.new(token: @token, version: @version)
|
106
|
+
order_client.orders(sandbox: sandbox, payload: payload)
|
107
|
+
end
|
108
|
+
|
99
109
|
private
|
100
110
|
|
101
111
|
# Options Required Keys
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require "mr_speedy_ruby/base"
|
2
|
+
|
3
|
+
module MrSpeedyRuby
|
4
|
+
# Mr Speedy API Order
|
5
|
+
# @since 1.0.0-alpha.3
|
6
|
+
class Order < Base
|
7
|
+
# Order List
|
8
|
+
# @since 1.0.0-alpha.3
|
9
|
+
#
|
10
|
+
# @param [Boolean] sandbox sandbox mode
|
11
|
+
# @param [Hash] payload order query payload
|
12
|
+
# @param payload [Integer, Array<Integer>] :order_id order id
|
13
|
+
# @param payload [String] :status order status
|
14
|
+
# @param payload [Integer] :offset order record offset count
|
15
|
+
# @param payload [Integer] :count order record limit
|
16
|
+
#
|
17
|
+
# @see https://apitest.mrspeedy.ph/business-api/doc#orders
|
18
|
+
#
|
19
|
+
# @return [Json]
|
20
|
+
def orders(payload: {}, sandbox: false)
|
21
|
+
endpoint = "/api/business/#{version}/orders"
|
22
|
+
url = build_url(endpoint, sandbox)
|
23
|
+
|
24
|
+
get(endpoint: url, token: token, payload: payload)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mr_speedy_ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.pre.alpha.
|
4
|
+
version: 1.0.0.pre.alpha.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter John Alvarado
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-05-
|
11
|
+
date: 2020-05-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -128,11 +128,16 @@ files:
|
|
128
128
|
- bin/console
|
129
129
|
- bin/setup
|
130
130
|
- fixtures/vcr_cassettes/delivery_fee.yml
|
131
|
+
- fixtures/vcr_cassettes/orders.yml
|
132
|
+
- fixtures/vcr_cassettes/orders_by_status.yml
|
133
|
+
- fixtures/vcr_cassettes/orders_with_limit.yml
|
134
|
+
- fixtures/vcr_cassettes/orders_with_offset.yml
|
131
135
|
- fixtures/vcr_cassettes/place_order.yml
|
132
136
|
- lib/mr_speedy_ruby.rb
|
133
137
|
- lib/mr_speedy_ruby/base.rb
|
134
138
|
- lib/mr_speedy_ruby/client.rb
|
135
139
|
- lib/mr_speedy_ruby/lib/hash_refinement.rb
|
140
|
+
- lib/mr_speedy_ruby/order.rb
|
136
141
|
- lib/mr_speedy_ruby/version.rb
|
137
142
|
- mr_speedy_ruby.gemspec
|
138
143
|
homepage: https://github.com/redjoker011/mr_speedy_ruby
|