vpsa 0.0.22 → 0.0.23
Sign up to get free protection for your applications and to get access to all the features.
- 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
|