economic-rest 0.1.6 → 0.1.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/economic/base.rb +6 -1
- data/lib/economic/base_repo.rb +25 -6
- data/lib/economic/journal.rb +11 -0
- data/lib/economic/journal_repo.rb +4 -0
- data/lib/economic/rest/version.rb +1 -1
- data/lib/economic/rest.rb +5 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 54c64f6375d3d4c521ca7d2fa65ad388cfd83ffb055ab1bd9182f3676d739f55
|
4
|
+
data.tar.gz: 714553722be2e463249e564300dd7df127ca33a9b7b437a7cd226952ea60df09
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b5680d2596c44bdc284753726e640e660504f78c80511cbe0be8229a5cc8258a3fba374b6cb8a51e79ca42773c6faba5c57fcf25416602d9434a2c9176b6a901
|
7
|
+
data.tar.gz: e97cdb878fbb4558f11d682a3c98e6c9ba35883e00138953571052fa4671f304b8973b254f45c91dd622af09c3f3185c5c52bda85bfc7ced224d7c2ae6173565
|
data/Gemfile.lock
CHANGED
data/lib/economic/base.rb
CHANGED
@@ -12,13 +12,18 @@ module Economic
|
|
12
12
|
(@attributes ||= []).push(name)
|
13
13
|
end
|
14
14
|
|
15
|
-
def self.field(name, id: false)
|
15
|
+
def self.field(name, id: false, model: nil)
|
16
16
|
economic_cased_attibute_name = name.to_s
|
17
17
|
attr_accessor economic_cased_attibute_name
|
18
18
|
alias_method snake_case(economic_cased_attibute_name), economic_cased_attibute_name
|
19
19
|
alias_method "#{snake_case(economic_cased_attibute_name)}=", "#{economic_cased_attibute_name}="
|
20
20
|
alias_method 'id_key', economic_cased_attibute_name if id
|
21
21
|
add_attribute economic_cased_attibute_name
|
22
|
+
if model
|
23
|
+
define_method("create_#{economic_cased_attibute_name[0...-1]}") do |class_instance|
|
24
|
+
repo.save(self, submodel: class_instance)
|
25
|
+
end
|
26
|
+
end
|
22
27
|
end
|
23
28
|
|
24
29
|
def values_based_on_hash(hash)
|
data/lib/economic/base_repo.rb
CHANGED
@@ -20,19 +20,31 @@ module Economic
|
|
20
20
|
"/#{page_or_id}"
|
21
21
|
end
|
22
22
|
url << "&filter=#{filter_text}" unless filter_text == ''
|
23
|
-
response = RestClient.get(url, headers)
|
23
|
+
response = RestClient.get(url, headers) do |response, _request, _result|
|
24
|
+
response
|
25
|
+
end
|
24
26
|
test_response(response)
|
25
27
|
end
|
26
28
|
|
27
|
-
def save(model)
|
29
|
+
def save(model, submodel: '')
|
28
30
|
url = ''
|
29
31
|
url << URL
|
30
32
|
url << endpoint_name.to_s if endpoint_name
|
31
33
|
url << "/#{model.id_key}"
|
32
|
-
|
33
|
-
|
34
|
+
url << sub_endpoint_name(submodel) unless submodel == ''
|
35
|
+
relevant_model = if submodel == ''
|
36
|
+
model
|
37
|
+
else
|
38
|
+
submodel
|
39
|
+
end
|
40
|
+
response = if relevant_model.id_key.nil?
|
41
|
+
RestClient.post(url, relevant_model.to_h.to_json, headers) do |response, _request, _result|
|
42
|
+
response
|
43
|
+
end
|
34
44
|
else
|
35
|
-
RestClient.
|
45
|
+
RestClient.put(url, relevant_model.to_h.to_json, headers) do |response, _request, _result|
|
46
|
+
response
|
47
|
+
end
|
36
48
|
end
|
37
49
|
test_response(response)
|
38
50
|
end
|
@@ -91,11 +103,18 @@ module Economic
|
|
91
103
|
else
|
92
104
|
end_p = end_p.gsub('Repo', 's')
|
93
105
|
end
|
106
|
+
end_p = end_p.gsub('Journals', 'Journals-Experimental')
|
107
|
+
end_p.downcase
|
108
|
+
end
|
109
|
+
|
110
|
+
def sub_endpoint_name(submodel)
|
111
|
+
end_p = submodel.class.name.sub('Economic::', '')
|
112
|
+
end_p = "/#{end_p}s"
|
94
113
|
end_p.downcase
|
95
114
|
end
|
96
115
|
|
97
116
|
def test_response(response)
|
98
|
-
raise response
|
117
|
+
raise response unless response.code.between?(200, 299)
|
99
118
|
|
100
119
|
response
|
101
120
|
end
|
data/lib/economic/rest.rb
CHANGED
@@ -14,6 +14,11 @@ require 'economic/orders/archived_repo'
|
|
14
14
|
require 'economic/orders/drafts_repo'
|
15
15
|
require 'economic/orders/sent_repo'
|
16
16
|
|
17
|
+
require 'economic/journal_repo'
|
18
|
+
require 'economic/journal'
|
19
|
+
|
20
|
+
require 'economic/voucher'
|
21
|
+
|
17
22
|
module Economic
|
18
23
|
class Demo
|
19
24
|
def self.hello
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: economic-rest
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Klogborg
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-01
|
11
|
+
date: 2019-02-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -101,6 +101,8 @@ files:
|
|
101
101
|
- lib/economic/base_repo.rb
|
102
102
|
- lib/economic/customer.rb
|
103
103
|
- lib/economic/customer_repo.rb
|
104
|
+
- lib/economic/journal.rb
|
105
|
+
- lib/economic/journal_repo.rb
|
104
106
|
- lib/economic/order.rb
|
105
107
|
- lib/economic/orders/archived_repo.rb
|
106
108
|
- lib/economic/orders/drafts_repo.rb
|