vpsa 0.0.23 → 0.0.24

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
  SHA1:
3
- metadata.gz: f23262c3a25b0567dc11bdb3314225b29149e04c
4
- data.tar.gz: 4818849bda0ea46d1e6ed5caab06d66e8255739a
3
+ metadata.gz: 5dfa39f31909f7b3b8c24d0fc77c8af59a465dbe
4
+ data.tar.gz: de14e5651f1c64f01d8b8c3529c76e690df91d21
5
5
  SHA512:
6
- metadata.gz: 84c336bed07a36bac651d96361b3097f5f8a60a3dac239c2b0800a64b7ae0f390a7395e5a30a4659a3a7ca8edc4d5fbceb3f7e7850c312ffdfc239d649dd7e5e
7
- data.tar.gz: 0df9e86b4051947959aebdbe3ebec7d7f0b857fe058ed791b7052efa769c88246af6c415060e407b2847ea5c6d86e3d7b44a12655b708ec234e3b33f5ddfbb33
6
+ metadata.gz: 06a3c28265941b73787cebbaa25c87f96d6281a57b20fcf0bdee33dd5d822878b6261e3d022ba05c30799dc3820d8b2b8c4bdff7ab1a164b1d3488bc12785fda
7
+ data.tar.gz: 50902f8bc67f2e40a33bcd7e37e98451eb9ba1a03c991913e7d0365137d44d9e25aeebc6bddbafa6331d5b94cba3bd1449fa2ae220de48710eb906c54a082e07
data/README.md CHANGED
@@ -31,16 +31,18 @@ Create a new instance of VPSA class passing your access token:
31
31
  With the client instance, you can access the following resources:
32
32
 
33
33
  * Classes de Clientes (client.client_classes) **Listing and finding**
34
- * Limite de Créditos (client.credit_limits) ** Listing and block history **
35
- * Lançamentos Padrões (client.default_entries) **Listing and finding**
36
- * Entidades (client.entities) **Listing and finding**
37
34
  * Configuração de crédito (client.installments) **Saving and information**
38
- * Pedidos de venda (client.orders) **Listing and finding**
39
- * Provisões (client.provisions) **Only Creation**
40
35
  * Contas a Receber (client.receipts) **Listing and finding**
36
+ * Dados Login (client.user_data)
37
+ * Empresas (client.companies) **Listing and finding**
38
+ * Entidades (client.entities) **Listing and finding**
41
39
  * Histórico de Vendas (client.sales_history) **Finding and more details **
40
+ * Lançamentos Padrões (client.default_entries) **Listing and finding**
41
+ * Limite de Créditos (client.credit_limits) **Listing and block history**
42
+ * Pedidos de venda (client.orders) **Listing and finding**
43
+ * Provisões (client.provisions) **Only Creation**
44
+ * Representantes (client.sellers) **Listing and finding**
42
45
  * Terceiros (client.third_parties) **Listing, finding, creation, credit limit information, credit limit updating, blocking/unblocking credit**
43
- * Dados Login (client.user_data)
44
46
 
45
47
  ## Using the resources
46
48
  ### Listing
@@ -50,13 +52,15 @@ It can accept an Entity object that reflects the searchable API fields.
50
52
 
51
53
  Currently the following entities are implemented:
52
54
 
53
- * [Terceiros](lib/vpsa/searcher/administrative/third_party_searcher.rb)
55
+ * [Classes de Clientes](lib/vpsa/searcher/operational/client_class_searcher.rb)
56
+ * [Contas a Receber](lib/vpsa/searcher/financial/receipt_searcher.rb)
57
+ * [Empresas](lib/vpsa/searcher/administrative/company_searcher.rb)
54
58
  * [Entidades](lib/vpsa/searcher/administrative/entity_searcher.rb)
55
- * [Limite de Crédito](lib/vpsa/searcher/commercial/credit_limit_searcher.rb)
56
59
  * [Lançamentos Padrões](lib/vpsa/searcher/financial/default_entry_searcher.rb)
57
- * [Contas a Receber](lib/vpsa/searcher/financial/receipt_searcher.rb)
58
- * [Classes de Clientes](lib/vpsa/searcher/operational/client_class_searcher.rb)
60
+ * [Limite de Crédito](lib/vpsa/searcher/commercial/credit_limit_searcher.rb)
59
61
  * [Pedidos de Venda](lib/vpsa/searcher/operational/order_searcher.rb)
62
+ * [Representantes](lib/vpsa/searcher/operational/seller_searcher.rb)
63
+ * [Terceiros](lib/vpsa/searcher/administrative/third_party_searcher.rb)
60
64
 
61
65
  ### Finding
62
66
  All resources implement a **find** method.
@@ -0,0 +1,20 @@
1
+ module Vpsa
2
+ module Api
3
+ class Companies < Client
4
+ require_all 'vpsa/searcher/administrative', 'company_searcher'
5
+
6
+ base_uri "#{Vpsa::API_ADDRESS}/empresas"
7
+
8
+ def list(searcher = nil)
9
+ raise ArgumentError unless searcher.nil? || searcher.is_a?(Vpsa::Searcher::Administrative::CompanySearcher)
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
@@ -0,0 +1,20 @@
1
+ module Vpsa
2
+ module Api
3
+ class Sellers < Client
4
+ require_all 'vpsa/searcher/operational', 'seller_searcher'
5
+
6
+ base_uri "#{Vpsa::API_ADDRESS}/representantes"
7
+
8
+ def list(searcher = nil)
9
+ raise ArgumentError unless searcher.nil? || searcher.is_a?(Vpsa::Searcher::Operational::SellerSearcher)
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
data/lib/vpsa/client.rb CHANGED
@@ -11,7 +11,7 @@ module Vpsa
11
11
  parser Proc.new {|b| JSON.parse(b) rescue b}
12
12
 
13
13
  require_all 'vpsa/api', 'third_parties', 'entities', 'default_entries', 'provisions', 'user_data', 'installments', 'credit_limits',
14
- 'client_classes', 'receipts', 'sales_history', 'orders'
14
+ 'client_classes', 'receipts', 'sales_history', 'orders', 'companies', 'sellers'
15
15
 
16
16
  attr_accessor :access_token
17
17
 
@@ -63,6 +63,14 @@ module Vpsa
63
63
  def orders
64
64
  Vpsa::Api::Orders.new(@access_token)
65
65
  end
66
+
67
+ def companies
68
+ Vpsa::Api::Companies.new(@access_token)
69
+ end
70
+
71
+ def sellers
72
+ Vpsa::Api::Sellers.new(@access_token)
73
+ end
66
74
 
67
75
  protected
68
76
  def header
@@ -0,0 +1,10 @@
1
+ require 'vpsa/searcher/base'
2
+
3
+ module Vpsa
4
+ module Searcher
5
+ module Administrative
6
+ class CompanySearcher < Base
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,11 @@
1
+ require 'vpsa/searcher/base'
2
+
3
+ module Vpsa
4
+ module Searcher
5
+ module Operational
6
+ class SellerSearcher < Base
7
+ attr_accessor :"alteradoApos"
8
+ end
9
+ end
10
+ end
11
+ end
data/lib/vpsa/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Vpsa
2
- VERSION = "0.0.23"
2
+ VERSION = "0.0.24"
3
3
  end
@@ -0,0 +1,41 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe Vpsa::Api::Companies 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}/empresas/").to_return(:status => 200)
9
+ end
10
+
11
+ it "should issue a get to the companies url" do
12
+ expect(Vpsa::Api::Companies).to receive(:get).with("/", :body => {:token => "abc"}.to_json, :headers => header).and_call_original
13
+
14
+ Vpsa.new("abc").companies.list()
15
+ end
16
+
17
+ it "should issue a get to the companies url using the searcher" do
18
+ searcher = Vpsa::Searcher::Administrative::CompanySearcher.new({:quantidade => 10, :inicio => 0})
19
+
20
+ expect(Vpsa::Api::Companies).to receive(:get).with("/", :body => searcher.as_parameter.merge!({:token => "abc"}).to_json, :headers => header).and_call_original
21
+
22
+ Vpsa.new("abc").companies.list(searcher)
23
+ end
24
+
25
+ it "should raise ArgumentError if the parameter is not a CompanySearcher" do
26
+ expect{Vpsa.new("abc").companies.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}/empresas/5").to_return(:status => 200)
33
+ end
34
+
35
+ it "should issue a get to the company url" do
36
+ expect(Vpsa::Api::Companies).to receive(:get).with("/5", :body => {:token => "abc"}.to_json, :headers => header).and_call_original
37
+
38
+ Vpsa.new("abc").companies.find(5)
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,41 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe Vpsa::Api::Sellers 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}/representantes/").to_return(:status => 200)
9
+ end
10
+
11
+ it "should issue a get to the sellers url" do
12
+ expect(Vpsa::Api::Sellers).to receive(:get).with("/", :body => {:token => "abc"}.to_json, :headers => header).and_call_original
13
+
14
+ Vpsa.new("abc").sellers.list()
15
+ end
16
+
17
+ it "should issue a get to the sellers url using the searcher" do
18
+ searcher = Vpsa::Searcher::Operational::SellerSearcher.new({:quantidade => 10, :inicio => 0})
19
+
20
+ expect(Vpsa::Api::Sellers).to receive(:get).with("/", :body => searcher.as_parameter.merge!({:token => "abc"}).to_json, :headers => header).and_call_original
21
+
22
+ Vpsa.new("abc").sellers.list(searcher)
23
+ end
24
+
25
+ it "should raise ArgumentError if the parameter is not a SellerSearcher" do
26
+ expect{Vpsa.new("abc").sellers.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}/representantes/5").to_return(:status => 200)
33
+ end
34
+
35
+ it "should issue a get to the seller url" do
36
+ expect(Vpsa::Api::Sellers).to receive(:get).with("/5", :body => {:token => "abc"}.to_json, :headers => header).and_call_original
37
+
38
+ Vpsa.new("abc").sellers.find(5)
39
+ end
40
+ end
41
+ end
@@ -40,4 +40,12 @@ RSpec.describe Vpsa::Client do
40
40
  it "should return a new Vpsa::Api::Orders" do
41
41
  expect(Vpsa.new("abc").orders.class).to eq(Vpsa::Api::Orders)
42
42
  end
43
+
44
+ it "should return a new Vpsa::Api::Companies" do
45
+ expect(Vpsa.new("abc").companies.class).to eq(Vpsa::Api::Companies)
46
+ end
47
+
48
+ it "should return a new Vpsa::Api::Sellers" do
49
+ expect(Vpsa.new("abc").sellers.class).to eq(Vpsa::Api::Sellers)
50
+ end
43
51
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vpsa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.23
4
+ version: 0.0.24
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gustavo Berdugo
@@ -54,6 +54,7 @@ files:
54
54
  - Rakefile
55
55
  - lib/vpsa.rb
56
56
  - lib/vpsa/api/client_classes.rb
57
+ - lib/vpsa/api/companies.rb
57
58
  - lib/vpsa/api/credit_limits.rb
58
59
  - lib/vpsa/api/default_entries.rb
59
60
  - lib/vpsa/api/entities.rb
@@ -62,6 +63,7 @@ files:
62
63
  - lib/vpsa/api/provisions.rb
63
64
  - lib/vpsa/api/receipts.rb
64
65
  - lib/vpsa/api/sales_history.rb
66
+ - lib/vpsa/api/sellers.rb
65
67
  - lib/vpsa/api/third_parties.rb
66
68
  - lib/vpsa/api/user_data.rb
67
69
  - lib/vpsa/client.rb
@@ -72,6 +74,7 @@ files:
72
74
  - lib/vpsa/entity/commercial/credit_limit.rb
73
75
  - lib/vpsa/entity/commercial/installment.rb
74
76
  - lib/vpsa/init_from_hash.rb
77
+ - lib/vpsa/searcher/administrative/company_searcher.rb
75
78
  - lib/vpsa/searcher/administrative/entity_searcher.rb
76
79
  - lib/vpsa/searcher/administrative/third_party_searcher.rb
77
80
  - lib/vpsa/searcher/base.rb
@@ -80,9 +83,11 @@ files:
80
83
  - lib/vpsa/searcher/financial/receipt_searcher.rb
81
84
  - lib/vpsa/searcher/operational/client_class_searcher.rb
82
85
  - lib/vpsa/searcher/operational/order_searcher.rb
86
+ - lib/vpsa/searcher/operational/seller_searcher.rb
83
87
  - lib/vpsa/version.rb
84
88
  - spec/spec_helper.rb
85
89
  - spec/vpsa/api/client_classes_spec.rb
90
+ - spec/vpsa/api/companies_spec.rb
86
91
  - spec/vpsa/api/credit_limits_spec.rb
87
92
  - spec/vpsa/api/default_entries_spec.rb
88
93
  - spec/vpsa/api/entities_spec.rb
@@ -91,6 +96,7 @@ files:
91
96
  - spec/vpsa/api/provisions_spec.rb
92
97
  - spec/vpsa/api/receipts_spec.rb
93
98
  - spec/vpsa/api/sales_history_spec.rb
99
+ - spec/vpsa/api/sellers_spec.rb
94
100
  - spec/vpsa/api/third_parties_spec.rb
95
101
  - spec/vpsa/api/user_data_spec.rb
96
102
  - spec/vpsa/client_spec.rb
@@ -128,6 +134,7 @@ summary: This gem provides integration with VPSA APIs (http://www.vpsa.com.br/)
128
134
  test_files:
129
135
  - spec/spec_helper.rb
130
136
  - spec/vpsa/api/client_classes_spec.rb
137
+ - spec/vpsa/api/companies_spec.rb
131
138
  - spec/vpsa/api/credit_limits_spec.rb
132
139
  - spec/vpsa/api/default_entries_spec.rb
133
140
  - spec/vpsa/api/entities_spec.rb
@@ -136,6 +143,7 @@ test_files:
136
143
  - spec/vpsa/api/provisions_spec.rb
137
144
  - spec/vpsa/api/receipts_spec.rb
138
145
  - spec/vpsa/api/sales_history_spec.rb
146
+ - spec/vpsa/api/sellers_spec.rb
139
147
  - spec/vpsa/api/third_parties_spec.rb
140
148
  - spec/vpsa/api/user_data_spec.rb
141
149
  - spec/vpsa/client_spec.rb