gus_bir1 1.0.1 → 1.2.0
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 +5 -5
- data/.gitignore +1 -0
- data/.travis.yml +3 -2
- data/README.md +2 -2
- data/bin/test +3 -0
- data/gus_bir1.gemspec +9 -9
- data/lib/gus_bir1/client.rb +8 -8
- data/lib/gus_bir1/constants.rb +2 -3
- data/lib/gus_bir1/report/type_mapper.rb +2 -0
- data/lib/gus_bir1/response/search.rb +23 -14
- data/lib/gus_bir1/version.rb +1 -1
- metadata +27 -33
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 303c6dcab16075513fc7d7ec639eaa506eb80e71285fef8b947af71d56a2ee35
|
4
|
+
data.tar.gz: 2a2ef444e5cbd513ed4843bfd0aa54036fca276807f66695c75b524acea833f0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1e8d55e8934944df1de91e6ec513a30ae2973fbbe73157c112f92f5575a41daf37d7c06fe96435f9db8c899133971a03e3d5284ed81c4f72a0678147788bd8ea
|
7
|
+
data.tar.gz: fd3d7ffb44a5205bc36470d9a1cbfc517c9fd7861f89eff87069cf619b69df957ad317c1e9aee60afbfb12eded4b01a296aabea797cf1b736c9a1a8983945c53
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
@@ -5,8 +5,9 @@ env:
|
|
5
5
|
sudo: false
|
6
6
|
language: ruby
|
7
7
|
rvm:
|
8
|
-
- 2.
|
9
|
-
|
8
|
+
- 2.7.7
|
9
|
+
-3.0.5
|
10
|
+
before_install: gem install bundler
|
10
11
|
|
11
12
|
before_script:
|
12
13
|
- curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
data/README.md
CHANGED
@@ -4,8 +4,8 @@
|
|
4
4
|
[](https://codeclimate.com/github/espago/gus_bir1)
|
5
5
|
[](https://codeclimate.com/github/espago/gus_bir1)
|
6
6
|
|
7
|
-
Simple, ruby wrapper for REGON database (Baza Internetowa Regon (BIR))(web frontend is reachable at https://wyszukiwarkaregon.stat.gov.pl/appBIR/index.aspx). To access its SOAP API, one needs an USER_KEY issued by REGON administrators available at
|
8
|
-
Official GUS docs
|
7
|
+
Simple, ruby wrapper for REGON database (Baza Internetowa Regon (BIR))(web frontend is reachable at https://wyszukiwarkaregon.stat.gov.pl/appBIR/index.aspx). To access its SOAP API, one needs an USER_KEY issued by REGON administrators available at regon_bir@stat.gov.pl.
|
8
|
+
Official GUS docs https://api.stat.gov.pl/Home/RegonApi
|
9
9
|
|
10
10
|
|
11
11
|
## Installation
|
data/bin/test
ADDED
data/gus_bir1.gemspec
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
lib = File.expand_path('
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
4
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
5
|
require 'gus_bir1/version'
|
6
6
|
|
7
7
|
Gem::Specification.new do |spec|
|
8
8
|
spec.name = 'gus_bir1'
|
9
9
|
spec.version = GusBir1::VERSION
|
10
|
-
spec.authors = ['
|
10
|
+
spec.authors = ['Waclaw Luczak']
|
11
11
|
spec.email = ['waclaw@luczak.it']
|
12
12
|
|
13
13
|
spec.summary = 'Rails GUS API library based on official REGON SOAP api.'
|
@@ -21,12 +21,12 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
22
|
spec.require_paths = ['lib']
|
23
23
|
|
24
|
-
spec.add_development_dependency 'bundler'
|
25
|
-
spec.add_development_dependency 'minitest'
|
26
|
-
spec.add_development_dependency 'rake'
|
27
|
-
spec.add_development_dependency 'rubocop'
|
28
|
-
spec.add_development_dependency 'simplecov'
|
24
|
+
spec.add_development_dependency 'bundler'
|
25
|
+
spec.add_development_dependency 'minitest'
|
26
|
+
spec.add_development_dependency 'rake'
|
27
|
+
spec.add_development_dependency 'rubocop'
|
28
|
+
spec.add_development_dependency 'simplecov'
|
29
29
|
|
30
|
-
spec.add_dependency 'savon', '~> 2.
|
31
|
-
spec.add_dependency 'savon-multipart'
|
30
|
+
spec.add_dependency 'savon', '~> 2.14'
|
31
|
+
spec.add_dependency 'savon-multipart'
|
32
32
|
end
|
data/lib/gus_bir1/client.rb
CHANGED
@@ -42,7 +42,7 @@ module GusBir1
|
|
42
42
|
end
|
43
43
|
end
|
44
44
|
|
45
|
-
def get_full_data(regon, report = '
|
45
|
+
def get_full_data(regon, report = 'BIR11OsPrawna')
|
46
46
|
set_session_id
|
47
47
|
Response::FullData.new dane_pobierz_pelny_raport(
|
48
48
|
Constants::PARAM_REGON => regon,
|
@@ -58,7 +58,7 @@ module GusBir1
|
|
58
58
|
end
|
59
59
|
|
60
60
|
def find_and_get_full_data(hash)
|
61
|
-
r = find_by(hash)
|
61
|
+
r = find_by(**hash)
|
62
62
|
r.map { |h| get_full_data_from_response(h) }
|
63
63
|
end
|
64
64
|
|
@@ -67,7 +67,7 @@ module GusBir1
|
|
67
67
|
def search_by(search_by, search)
|
68
68
|
set_session_id
|
69
69
|
Response::Search.new(
|
70
|
-
|
70
|
+
dane_szukaj_podmioty(Constants::PARAM_SEARCH => { search_by => search })
|
71
71
|
).array
|
72
72
|
end
|
73
73
|
|
@@ -85,7 +85,7 @@ module GusBir1
|
|
85
85
|
|
86
86
|
def method_missing(method, *args)
|
87
87
|
if savon_client.operations.include? method
|
88
|
-
response_hash = call(method, args[0]).
|
88
|
+
response_hash = call(method, args[0]).full_hash
|
89
89
|
response_hash.dig(:envelope, :body, "#{method}_response".to_sym, "#{method}_result".to_sym)
|
90
90
|
else
|
91
91
|
super
|
@@ -96,7 +96,7 @@ module GusBir1
|
|
96
96
|
case method
|
97
97
|
when
|
98
98
|
:wyloguj,
|
99
|
-
:
|
99
|
+
:dane_szukaj_podmioty,
|
100
100
|
:dane_pobierz_pelny_raport,
|
101
101
|
:dane_komunikat,
|
102
102
|
:zaloguj
|
@@ -139,9 +139,8 @@ module GusBir1
|
|
139
139
|
|
140
140
|
def savon_options(publ: false)
|
141
141
|
params = {
|
142
|
-
wsdl:
|
142
|
+
wsdl: endpoint,
|
143
143
|
namespaces: namespaces(publ: publ),
|
144
|
-
endpoint: endpoint,
|
145
144
|
env_namespace: :soap,
|
146
145
|
use_wsa_headers: true,
|
147
146
|
soap_version: 2,
|
@@ -149,7 +148,8 @@ module GusBir1
|
|
149
148
|
element_form_default: :qualified,
|
150
149
|
multipart: true,
|
151
150
|
log_level: @log_level,
|
152
|
-
log: @logging
|
151
|
+
log: @logging,
|
152
|
+
proxy: ENV['GUS_BIR_PROXY_URL']
|
153
153
|
}
|
154
154
|
if defined?(@sid) && @sid.nil? == false
|
155
155
|
params.merge!({headers: { sid: @sid } })
|
data/lib/gus_bir1/constants.rb
CHANGED
@@ -2,9 +2,8 @@
|
|
2
2
|
|
3
3
|
module GusBir1
|
4
4
|
class Constants
|
5
|
-
|
6
|
-
|
7
|
-
WSDL_ADDRESS = 'https://wyszukiwarkaregon.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc'
|
5
|
+
WSDL_ADDRESS_TEST = 'https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/wsdl/UslugaBIRzewnPubl-ver11-test.wsdl'
|
6
|
+
WSDL_ADDRESS = 'https://wyszukiwarkaregon.stat.gov.pl/wsBIR/wsdl/UslugaBIRzewnPubl-ver11-prod.wsdl'
|
8
7
|
|
9
8
|
WSDL_NS_PUBL = 'http://CIS/BIR/PUBL/2014/07'
|
10
9
|
WSDL_NS = 'http://CIS/BIR/2014/07'
|
@@ -17,34 +17,43 @@ module GusBir1
|
|
17
17
|
private
|
18
18
|
|
19
19
|
def parse_dane(hash)
|
20
|
-
search_result
|
21
|
-
search_result.name
|
22
|
-
search_result.regon
|
23
|
-
search_result.province
|
24
|
-
search_result.district
|
25
|
-
search_result.community
|
26
|
-
search_result.city
|
27
|
-
search_result.zip_code
|
28
|
-
search_result.street
|
29
|
-
search_result.
|
30
|
-
search_result.
|
31
|
-
search_result.
|
32
|
-
search_result.
|
33
|
-
search_result.
|
20
|
+
search_result = OpenStruct.new
|
21
|
+
search_result.name = hash['Nazwa']
|
22
|
+
search_result.regon = hash['Regon']
|
23
|
+
search_result.province = hash['Wojewodztwo']
|
24
|
+
search_result.district = hash['Powiat']
|
25
|
+
search_result.community = hash['Gmina']
|
26
|
+
search_result.city = hash['Miejscowosc']
|
27
|
+
search_result.zip_code = hash['KodPocztowy']
|
28
|
+
search_result.street = hash['Ulica']
|
29
|
+
search_result.street_number = hash['NrNieruchomosci']
|
30
|
+
search_result.house_number = hash['NrLokalu']
|
31
|
+
search_result.street_address = street_address_from(hash)
|
32
|
+
search_result.type = hash['Typ']
|
33
|
+
search_result.silos_id = hash['SilosID']
|
34
|
+
search_result.type_desc = type_info(search_result)
|
35
|
+
search_result.silos_desc = silos_info(search_result)
|
36
|
+
search_result.report = report_info(search_result)
|
34
37
|
search_result
|
35
38
|
end
|
36
39
|
|
37
40
|
def type_info(search_result)
|
41
|
+
return unless search_result.type
|
38
42
|
Dictionary.szukaj_typ[search_result.type.to_sym]
|
39
43
|
end
|
40
44
|
|
41
45
|
def silos_info(search_result)
|
46
|
+
return unless search_result.silos_id
|
42
47
|
Dictionary.szukaj_silos_id[search_result.silos_id.to_sym]
|
43
48
|
end
|
44
49
|
|
45
50
|
def report_info(search_result)
|
46
51
|
Report::TypeMapper.get_report_type(search_result)
|
47
52
|
end
|
53
|
+
|
54
|
+
def street_address_from(data)
|
55
|
+
[data['Ulica'], [data['NrNieruchomosci'], data['NrLokalu']].compact.join('/')].join(' ')
|
56
|
+
end
|
48
57
|
end
|
49
58
|
end
|
50
59
|
end
|
data/lib/gus_bir1/version.rb
CHANGED
metadata
CHANGED
@@ -1,83 +1,83 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gus_bir1
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
7
|
+
- Waclaw Luczak
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '0'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: minitest
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rubocop
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '0
|
61
|
+
version: '0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '0
|
68
|
+
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: simplecov
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
@@ -86,34 +86,28 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '2.
|
89
|
+
version: '2.14'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '2.
|
96
|
+
version: '2.14'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: savon-multipart
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '2.1'
|
104
101
|
- - ">="
|
105
102
|
- !ruby/object:Gem::Version
|
106
|
-
version:
|
103
|
+
version: '0'
|
107
104
|
type: :runtime
|
108
105
|
prerelease: false
|
109
106
|
version_requirements: !ruby/object:Gem::Requirement
|
110
107
|
requirements:
|
111
|
-
- - "~>"
|
112
|
-
- !ruby/object:Gem::Version
|
113
|
-
version: '2.1'
|
114
108
|
- - ">="
|
115
109
|
- !ruby/object:Gem::Version
|
116
|
-
version:
|
110
|
+
version: '0'
|
117
111
|
description:
|
118
112
|
email:
|
119
113
|
- waclaw@luczak.it
|
@@ -129,6 +123,7 @@ files:
|
|
129
123
|
- Rakefile
|
130
124
|
- bin/console
|
131
125
|
- bin/setup
|
126
|
+
- bin/test
|
132
127
|
- gus_bir1.gemspec
|
133
128
|
- lib/gus_bir1.rb
|
134
129
|
- lib/gus_bir1/client.rb
|
@@ -160,8 +155,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
160
155
|
- !ruby/object:Gem::Version
|
161
156
|
version: '0'
|
162
157
|
requirements: []
|
163
|
-
|
164
|
-
rubygems_version: 2.6.13
|
158
|
+
rubygems_version: 3.4.5
|
165
159
|
signing_key:
|
166
160
|
specification_version: 4
|
167
161
|
summary: Rails GUS API library based on official REGON SOAP api.
|