vpsa 0.0.22 → 0.0.23
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.
- checksums.yaml +4 -4
- data/README.md +14 -8
- data/lib/vpsa/api/orders.rb +20 -0
- data/lib/vpsa/api/{sales.rb → sales_history.rb} +4 -5
- data/lib/vpsa/client.rb +8 -3
- data/lib/vpsa/searcher/operational/order_searcher.rb +11 -0
- data/lib/vpsa/version.rb +1 -1
- data/spec/vpsa/api/orders_spec.rb +41 -0
- data/spec/vpsa/api/sales_history_spec.rb +35 -0
- data/spec/vpsa/client_spec.rb +8 -0
- metadata +9 -5
- data/spec/vpsa/api/sales_spec.rb +0 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f23262c3a25b0567dc11bdb3314225b29149e04c
|
4
|
+
data.tar.gz: 4818849bda0ea46d1e6ed5caab06d66e8255739a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 84c336bed07a36bac651d96361b3097f5f8a60a3dac239c2b0800a64b7ae0f390a7395e5a30a4659a3a7ca8edc4d5fbceb3f7e7850c312ffdfc239d649dd7e5e
|
7
|
+
data.tar.gz: 0df9e86b4051947959aebdbe3ebec7d7f0b857fe058ed791b7052efa769c88246af6c415060e407b2847ea5c6d86e3d7b44a12655b708ec234e3b33f5ddfbb33
|
data/README.md
CHANGED
@@ -30,13 +30,17 @@ Create a new instance of VPSA class passing your access token:
|
|
30
30
|
|
31
31
|
With the client instance, you can access the following resources:
|
32
32
|
|
33
|
-
*
|
34
|
-
*
|
33
|
+
* Classes de Clientes (client.client_classes) **Listing and finding**
|
34
|
+
* Limite de Créditos (client.credit_limits) ** Listing and block history **
|
35
35
|
* Lançamentos Padrões (client.default_entries) **Listing and finding**
|
36
|
+
* Entidades (client.entities) **Listing and finding**
|
37
|
+
* Configuração de crédito (client.installments) **Saving and information**
|
38
|
+
* Pedidos de venda (client.orders) **Listing and finding**
|
36
39
|
* Provisões (client.provisions) **Only Creation**
|
40
|
+
* Contas a Receber (client.receipts) **Listing and finding**
|
41
|
+
* Histórico de Vendas (client.sales_history) **Finding and more details **
|
42
|
+
* Terceiros (client.third_parties) **Listing, finding, creation, credit limit information, credit limit updating, blocking/unblocking credit**
|
37
43
|
* Dados Login (client.user_data)
|
38
|
-
* Classes de Clientes (client.client_classes) **Listing and finding**
|
39
|
-
* Contas a Receber (client.receipts) **Only listing**
|
40
44
|
|
41
45
|
## Using the resources
|
42
46
|
### Listing
|
@@ -48,9 +52,11 @@ Currently the following entities are implemented:
|
|
48
52
|
|
49
53
|
* [Terceiros](lib/vpsa/searcher/administrative/third_party_searcher.rb)
|
50
54
|
* [Entidades](lib/vpsa/searcher/administrative/entity_searcher.rb)
|
55
|
+
* [Limite de Crédito](lib/vpsa/searcher/commercial/credit_limit_searcher.rb)
|
51
56
|
* [Lançamentos Padrões](lib/vpsa/searcher/financial/default_entry_searcher.rb)
|
52
57
|
* [Contas a Receber](lib/vpsa/searcher/financial/receipt_searcher.rb)
|
53
58
|
* [Classes de Clientes](lib/vpsa/searcher/operational/client_class_searcher.rb)
|
59
|
+
* [Pedidos de Venda](lib/vpsa/searcher/operational/order_searcher.rb)
|
54
60
|
|
55
61
|
### Finding
|
56
62
|
All resources implement a **find** method.
|
@@ -78,14 +84,14 @@ You can get the token owner information by calling the following method:
|
|
78
84
|
```
|
79
85
|
|
80
86
|
### Reading the response
|
81
|
-
All methods return a Vpsa::Client::Response object. This
|
87
|
+
All methods return a Vpsa::Client::Response object. This object contains the following attributes:
|
82
88
|
|
83
89
|
```ruby
|
84
90
|
response = Vpsa.new(YOUR_ACCESS_TOKEN).third_parties.list
|
85
91
|
|
86
|
-
response.status
|
87
|
-
response.payload
|
88
|
-
response.raw_response
|
92
|
+
response.status # Contains the status code of the request
|
93
|
+
response.payload # Contains the return data (JSON) of the request
|
94
|
+
response.raw_response # Contains the HTTParty response object
|
89
95
|
```
|
90
96
|
|
91
97
|
## Contributing
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Vpsa
|
2
|
+
module Api
|
3
|
+
class Orders < Client
|
4
|
+
require_all 'vpsa/searcher/operational', 'order_searcher'
|
5
|
+
|
6
|
+
base_uri "#{Vpsa::API_ADDRESS}/pedidos"
|
7
|
+
|
8
|
+
def list(searcher = nil)
|
9
|
+
raise ArgumentError unless searcher.nil? || searcher.is_a?(Vpsa::Searcher::Operational::OrderSearcher)
|
10
|
+
|
11
|
+
return parse_response(self.class.get("/", :body => build_body(searcher.as_parameter), :headers => header)) if searcher
|
12
|
+
return parse_response(self.class.get("/", :body => build_body, :headers => header)) unless searcher
|
13
|
+
end
|
14
|
+
|
15
|
+
def find(id)
|
16
|
+
return parse_response(self.class.get("/#{id}", :body => build_body, :headers => header))
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -1,17 +1,16 @@
|
|
1
1
|
module Vpsa
|
2
2
|
module Api
|
3
|
-
class
|
3
|
+
class SalesHistory < Client
|
4
4
|
|
5
5
|
base_uri "#{Vpsa::API_ADDRESS}/externa/historico-vendas-terceiro"
|
6
6
|
|
7
|
-
def
|
7
|
+
def find(id)
|
8
8
|
return parse_response(self.class.get("/buscar?terceiro=#{id}", :body => build_body, :headers => header))
|
9
9
|
end
|
10
10
|
|
11
|
-
def
|
11
|
+
def more_details(idTerceiro)
|
12
12
|
return parse_response(self.class.get("/detalhar?terceiro=#{idTerceiro}", :body => build_body, :headers => header))
|
13
|
-
end
|
14
|
-
|
13
|
+
end
|
15
14
|
end
|
16
15
|
end
|
17
16
|
end
|
data/lib/vpsa/client.rb
CHANGED
@@ -10,7 +10,8 @@ module Vpsa
|
|
10
10
|
default_options.update(verify: false)
|
11
11
|
parser Proc.new {|b| JSON.parse(b) rescue b}
|
12
12
|
|
13
|
-
require_all 'vpsa/api', 'third_parties', 'entities', 'default_entries', 'provisions', 'user_data', 'installments', 'credit_limits',
|
13
|
+
require_all 'vpsa/api', 'third_parties', 'entities', 'default_entries', 'provisions', 'user_data', 'installments', 'credit_limits',
|
14
|
+
'client_classes', 'receipts', 'sales_history', 'orders'
|
14
15
|
|
15
16
|
attr_accessor :access_token
|
16
17
|
|
@@ -55,8 +56,12 @@ module Vpsa
|
|
55
56
|
Vpsa::Api::ClientClasses.new(@access_token)
|
56
57
|
end
|
57
58
|
|
58
|
-
def
|
59
|
-
Vpsa::Api::
|
59
|
+
def sales_history
|
60
|
+
Vpsa::Api::SalesHistory.new(@access_token)
|
61
|
+
end
|
62
|
+
|
63
|
+
def orders
|
64
|
+
Vpsa::Api::Orders.new(@access_token)
|
60
65
|
end
|
61
66
|
|
62
67
|
protected
|
data/lib/vpsa/version.rb
CHANGED
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
RSpec.describe Vpsa::Api::Orders do
|
4
|
+
let(:header) {{"Content-Type" => "application/json", "Accept" => "application/json"}}
|
5
|
+
|
6
|
+
describe "listing" do
|
7
|
+
before(:each) do
|
8
|
+
stub_request(:get, "#{Vpsa::API_ADDRESS}/pedidos/").to_return(:status => 200)
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should issue a get to the orders url" do
|
12
|
+
expect(Vpsa::Api::Orders).to receive(:get).with("/", :body => {:token => "abc"}.to_json, :headers => header).and_call_original
|
13
|
+
|
14
|
+
Vpsa.new("abc").orders.list()
|
15
|
+
end
|
16
|
+
|
17
|
+
it "should issue a get to the orders url using the searcher" do
|
18
|
+
searcher = Vpsa::Searcher::Operational::OrderSearcher.new({:quantidade => 10, :inicio => 0})
|
19
|
+
|
20
|
+
expect(Vpsa::Api::Orders).to receive(:get).with("/", :body => searcher.as_parameter.merge!({:token => "abc"}).to_json, :headers => header).and_call_original
|
21
|
+
|
22
|
+
Vpsa.new("abc").orders.list(searcher)
|
23
|
+
end
|
24
|
+
|
25
|
+
it "should raise ArgumentError if the parameter is not a OrderSearcher" do
|
26
|
+
expect{Vpsa.new("abc").orders.list(Array.new)}.to raise_error(ArgumentError)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
describe "finding" do
|
31
|
+
before(:each) do
|
32
|
+
stub_request(:get, "#{Vpsa::API_ADDRESS}/pedidos/5").to_return(:status => 200)
|
33
|
+
end
|
34
|
+
|
35
|
+
it "should issue a get to the order url" do
|
36
|
+
expect(Vpsa::Api::Orders).to receive(:get).with("/5", :body => {:token => "abc"}.to_json, :headers => header).and_call_original
|
37
|
+
|
38
|
+
Vpsa.new("abc").orders.find(5)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
RSpec.describe Vpsa::Api::SalesHistory do
|
4
|
+
let(:header) {{"Content-Type" => "application/json", "Accept" => "application/json"}}
|
5
|
+
|
6
|
+
describe "information" do
|
7
|
+
before(:each) do
|
8
|
+
stub_request(:get, "#{Vpsa::API_ADDRESS}/externa/historico-vendas-terceiro/buscar?terceiro=1").
|
9
|
+
with(:body => "{\"token\":\"abc\"}",
|
10
|
+
:headers => {'Accept'=>'application/json', 'Content-Type'=>'application/json'}).
|
11
|
+
to_return(:status => 200, :body => "", :headers => {})
|
12
|
+
end
|
13
|
+
|
14
|
+
it "should issue a get to the find url" do
|
15
|
+
expect(Vpsa::Api::SalesHistory).to receive(:get).with("/buscar?terceiro=1", :body => {:token => "abc"}.to_json, :headers => header).and_call_original
|
16
|
+
|
17
|
+
Vpsa.new("abc").sales_history.find(1)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
describe "more details" do
|
22
|
+
before(:each) do
|
23
|
+
stub_request(:get, "#{Vpsa::API_ADDRESS}/externa/historico-vendas-terceiro/detalhar?terceiro=1").
|
24
|
+
with(:body => "{\"token\":\"abc\"}",
|
25
|
+
:headers => {'Accept'=>'application/json', 'Content-Type'=>'application/json'}).
|
26
|
+
to_return(:status => 200, :body => "", :headers => {})
|
27
|
+
end
|
28
|
+
|
29
|
+
it "should issue a get to the more details url" do
|
30
|
+
expect(Vpsa::Api::SalesHistory).to receive(:get).with("/detalhar?terceiro=1", :body => {:token => "abc"}.to_json, :headers => header).and_call_original
|
31
|
+
|
32
|
+
Vpsa.new("abc").sales_history.more_details(1)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
data/spec/vpsa/client_spec.rb
CHANGED
@@ -32,4 +32,12 @@ RSpec.describe Vpsa::Client do
|
|
32
32
|
it "should return a new Vpsa::Api::ClientClasses" do
|
33
33
|
expect(Vpsa.new("abc").client_classes.class).to eq(Vpsa::Api::ClientClasses)
|
34
34
|
end
|
35
|
+
|
36
|
+
it "should return a new Vpsa::Api::SalesHistory" do
|
37
|
+
expect(Vpsa.new("abc").sales_history.class).to eq(Vpsa::Api::SalesHistory)
|
38
|
+
end
|
39
|
+
|
40
|
+
it "should return a new Vpsa::Api::Orders" do
|
41
|
+
expect(Vpsa.new("abc").orders.class).to eq(Vpsa::Api::Orders)
|
42
|
+
end
|
35
43
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vpsa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.23
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gustavo Berdugo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-08-
|
11
|
+
date: 2015-08-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -58,9 +58,10 @@ files:
|
|
58
58
|
- lib/vpsa/api/default_entries.rb
|
59
59
|
- lib/vpsa/api/entities.rb
|
60
60
|
- lib/vpsa/api/installments.rb
|
61
|
+
- lib/vpsa/api/orders.rb
|
61
62
|
- lib/vpsa/api/provisions.rb
|
62
63
|
- lib/vpsa/api/receipts.rb
|
63
|
-
- lib/vpsa/api/
|
64
|
+
- lib/vpsa/api/sales_history.rb
|
64
65
|
- lib/vpsa/api/third_parties.rb
|
65
66
|
- lib/vpsa/api/user_data.rb
|
66
67
|
- lib/vpsa/client.rb
|
@@ -78,6 +79,7 @@ files:
|
|
78
79
|
- lib/vpsa/searcher/financial/default_entry_searcher.rb
|
79
80
|
- lib/vpsa/searcher/financial/receipt_searcher.rb
|
80
81
|
- lib/vpsa/searcher/operational/client_class_searcher.rb
|
82
|
+
- lib/vpsa/searcher/operational/order_searcher.rb
|
81
83
|
- lib/vpsa/version.rb
|
82
84
|
- spec/spec_helper.rb
|
83
85
|
- spec/vpsa/api/client_classes_spec.rb
|
@@ -85,9 +87,10 @@ files:
|
|
85
87
|
- spec/vpsa/api/default_entries_spec.rb
|
86
88
|
- spec/vpsa/api/entities_spec.rb
|
87
89
|
- spec/vpsa/api/installments_spec.rb
|
90
|
+
- spec/vpsa/api/orders_spec.rb
|
88
91
|
- spec/vpsa/api/provisions_spec.rb
|
89
92
|
- spec/vpsa/api/receipts_spec.rb
|
90
|
-
- spec/vpsa/api/
|
93
|
+
- spec/vpsa/api/sales_history_spec.rb
|
91
94
|
- spec/vpsa/api/third_parties_spec.rb
|
92
95
|
- spec/vpsa/api/user_data_spec.rb
|
93
96
|
- spec/vpsa/client_spec.rb
|
@@ -129,9 +132,10 @@ test_files:
|
|
129
132
|
- spec/vpsa/api/default_entries_spec.rb
|
130
133
|
- spec/vpsa/api/entities_spec.rb
|
131
134
|
- spec/vpsa/api/installments_spec.rb
|
135
|
+
- spec/vpsa/api/orders_spec.rb
|
132
136
|
- spec/vpsa/api/provisions_spec.rb
|
133
137
|
- spec/vpsa/api/receipts_spec.rb
|
134
|
-
- spec/vpsa/api/
|
138
|
+
- spec/vpsa/api/sales_history_spec.rb
|
135
139
|
- spec/vpsa/api/third_parties_spec.rb
|
136
140
|
- spec/vpsa/api/user_data_spec.rb
|
137
141
|
- spec/vpsa/client_spec.rb
|
data/spec/vpsa/api/sales_spec.rb
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
RSpec.describe Vpsa::Api::Sales do
|
4
|
-
let(:header) {{"Content-Type" => "application/json", "Accept" => "application/json"}}
|
5
|
-
|
6
|
-
describe "information" do
|
7
|
-
|
8
|
-
before(:each) do
|
9
|
-
stub_request(:get, "#{Vpsa::API_ADDRESS}/externa/historico-vendas-terceiro/buscar?terceiro=1").
|
10
|
-
with(:body => "{\"token\":\"abc\"}",
|
11
|
-
:headers => {'Accept'=>'application/json', 'Content-Type'=>'application/json'}).
|
12
|
-
to_return(:status => 200, :body => "", :headers => {})
|
13
|
-
|
14
|
-
end
|
15
|
-
|
16
|
-
it "should issue a get to the sales url" do
|
17
|
-
expect(Vpsa::Api::Sales).to receive(:get).with("/buscar?terceiro=1", :body => {:token => "abc"}.to_json, :headers => header).and_call_original
|
18
|
-
|
19
|
-
Vpsa.new("abc").sales.sales_history(1)
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
end
|