dadata 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +2 -0
- data/.rubocop.yml +9 -3
- data/CHANGELOG.md +4 -0
- data/README.md +4 -0
- data/dadata.gemspec +2 -1
- data/lib/dadata/suggestion.rb +16 -8
- data/lib/dadata/version.rb +1 -1
- metadata +22 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 96139da1318c0fd03e980d03f7352c08e9ec76987e4b3f9254c7c6e0835d53c3
|
4
|
+
data.tar.gz: f61aa03caaf8fc2accfa8fbc3cb4662b8ae542d9ba6c6795f90a4e5810d42bb4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cdeefa2206e0bf9313ecb8a19f8a31cccc6ff16ef2e38d808cc11bb2d4df14d8c4c9ebab51d875dda299d9efc8e8bd97276ec69c1a61f74281be1cb17bf8f313
|
7
|
+
data.tar.gz: 0dbd643b7643b1e037f75f46d42aa04dc134c574e42bd0db864137d1fcbfaeabb1ab6d84ab2dbb109f3010e5245b98e7672803d502ef897e9e58aecdcb9cd5a0
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
@@ -1,10 +1,16 @@
|
|
1
|
-
|
1
|
+
AllCops:
|
2
|
+
NewCops: enable
|
3
|
+
|
4
|
+
Layout/LineLength:
|
5
|
+
Max: 80
|
6
|
+
|
7
|
+
Metrics/BlockLength:
|
2
8
|
Exclude:
|
3
9
|
- test/**/*
|
4
10
|
|
5
|
-
|
11
|
+
Style/ClassAndModuleChildren:
|
6
12
|
Exclude:
|
7
13
|
- test/**/*
|
8
14
|
|
9
|
-
|
15
|
+
Style/StringLiterals:
|
10
16
|
EnforcedStyle: single_quotes
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -25,6 +25,10 @@ require 'dadata'
|
|
25
25
|
|
26
26
|
dadata = Dadata::Suggestion.new(api_key: 'YOURKEY')
|
27
27
|
dadata.organization('ООО Рога и копыта')
|
28
|
+
# => { suggestions: {{ value: "ПАО БАНК", ... }] }
|
29
|
+
|
30
|
+
dadata.address_by_id('203221a4-dde4-4954-99cb-e788df9d0ce8')
|
31
|
+
# => { suggestions: [{ value: "г Казань, ул Кремлевская, д 1", ... }] }
|
28
32
|
```
|
29
33
|
|
30
34
|
## Contributing
|
data/dadata.gemspec
CHANGED
@@ -32,7 +32,8 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.add_development_dependency 'bundler', '>= 1.17', '< 3.0'
|
33
33
|
spec.add_development_dependency 'ffaker', '~> 2.13'
|
34
34
|
spec.add_development_dependency 'minitest', '~> 5.0'
|
35
|
+
spec.add_development_dependency 'minitest-reporters', '~> 1.4'
|
35
36
|
spec.add_development_dependency 'rake', '~> 10.0'
|
36
|
-
spec.add_development_dependency 'rubocop', '~>
|
37
|
+
spec.add_development_dependency 'rubocop', '~> 1.3'
|
37
38
|
spec.add_development_dependency 'webmock', '~> 3.7'
|
38
39
|
end
|
data/lib/dadata/suggestion.rb
CHANGED
@@ -6,14 +6,24 @@ require 'net/http'
|
|
6
6
|
module Dadata
|
7
7
|
# Suggestion API
|
8
8
|
class Suggestion
|
9
|
-
BASE_URL = 'https://suggestions.dadata.ru/suggestions/api/4_1/rs/
|
9
|
+
BASE_URL = 'https://suggestions.dadata.ru/suggestions/api/4_1/rs/'
|
10
10
|
|
11
11
|
def initialize(config)
|
12
12
|
@config = config
|
13
13
|
end
|
14
14
|
|
15
|
-
def organization(term)
|
16
|
-
|
15
|
+
def organization(query: term)
|
16
|
+
call_method('suggest/party', query: query)
|
17
|
+
end
|
18
|
+
|
19
|
+
def address_by_fias_id(query: fias_id)
|
20
|
+
call_method('findById/address', query: query)
|
21
|
+
end
|
22
|
+
|
23
|
+
private
|
24
|
+
|
25
|
+
def call_method(method, **query_data)
|
26
|
+
url = URI(URI.join(BASE_URL, method))
|
17
27
|
|
18
28
|
req = Net::HTTP::Post.new(url)
|
19
29
|
|
@@ -21,19 +31,17 @@ module Dadata
|
|
21
31
|
req['Accept'] = 'application/json'
|
22
32
|
req['Authorization'] = "Token #{@config[:api_key]}"
|
23
33
|
|
24
|
-
req.body =
|
34
|
+
req.body = query_data.to_json
|
25
35
|
|
26
36
|
resp = perform_request(url, req)
|
27
37
|
|
28
38
|
if resp.code == '200'
|
29
|
-
[true, JSON.parse(resp.body, symbolize_names: true)]
|
39
|
+
[true, JSON.parse(resp.body, symbolize_names: true)[:suggestions]]
|
30
40
|
else
|
31
|
-
[false, code: resp.code.to_i, message: resp.body]
|
41
|
+
[false, { code: resp.code.to_i, message: resp.body }]
|
32
42
|
end
|
33
43
|
end
|
34
44
|
|
35
|
-
private
|
36
|
-
|
37
45
|
def perform_request(url, request)
|
38
46
|
http = Net::HTTP.new(url.host, url.port)
|
39
47
|
http.use_ssl = true
|
data/lib/dadata/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dadata
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rinat Garifullin
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-11-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -58,6 +58,20 @@ dependencies:
|
|
58
58
|
- - "~>"
|
59
59
|
- !ruby/object:Gem::Version
|
60
60
|
version: '5.0'
|
61
|
+
- !ruby/object:Gem::Dependency
|
62
|
+
name: minitest-reporters
|
63
|
+
requirement: !ruby/object:Gem::Requirement
|
64
|
+
requirements:
|
65
|
+
- - "~>"
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '1.4'
|
68
|
+
type: :development
|
69
|
+
prerelease: false
|
70
|
+
version_requirements: !ruby/object:Gem::Requirement
|
71
|
+
requirements:
|
72
|
+
- - "~>"
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '1.4'
|
61
75
|
- !ruby/object:Gem::Dependency
|
62
76
|
name: rake
|
63
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -78,14 +92,14 @@ dependencies:
|
|
78
92
|
requirements:
|
79
93
|
- - "~>"
|
80
94
|
- !ruby/object:Gem::Version
|
81
|
-
version: '
|
95
|
+
version: '1.3'
|
82
96
|
type: :development
|
83
97
|
prerelease: false
|
84
98
|
version_requirements: !ruby/object:Gem::Requirement
|
85
99
|
requirements:
|
86
100
|
- - "~>"
|
87
101
|
- !ruby/object:Gem::Version
|
88
|
-
version: '
|
102
|
+
version: '1.3'
|
89
103
|
- !ruby/object:Gem::Dependency
|
90
104
|
name: webmock
|
91
105
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,7 +114,7 @@ dependencies:
|
|
100
114
|
- - "~>"
|
101
115
|
- !ruby/object:Gem::Version
|
102
116
|
version: '3.7'
|
103
|
-
description:
|
117
|
+
description:
|
104
118
|
email:
|
105
119
|
- ringarifullin@gmail.com
|
106
120
|
executables: []
|
@@ -128,7 +142,7 @@ metadata:
|
|
128
142
|
homepage_uri: https://github.com/rgarifullin/dadata
|
129
143
|
source_code_uri: https://github.com/rgarifullin/dadata
|
130
144
|
changelog_uri: https://github.com/rgarifullin/dadata/blob/master/CHANGELOG.md
|
131
|
-
post_install_message:
|
145
|
+
post_install_message:
|
132
146
|
rdoc_options: []
|
133
147
|
require_paths:
|
134
148
|
- lib
|
@@ -144,7 +158,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
144
158
|
version: '0'
|
145
159
|
requirements: []
|
146
160
|
rubygems_version: 3.0.3
|
147
|
-
signing_key:
|
161
|
+
signing_key:
|
148
162
|
specification_version: 4
|
149
163
|
summary: Dadata.ru API integration
|
150
164
|
test_files: []
|