economic-rest 0.5.7 → 0.5.8
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 +4 -4
- data/Gemfile.lock +1 -1
- data/lib/economic/base.rb +2 -13
- data/lib/economic/base_repo.rb +8 -6
- data/lib/economic/invoices/repo.rb +15 -7
- data/lib/economic/nested_base_repo.rb +2 -1
- data/lib/economic/orders/repo.rb +15 -7
- data/lib/economic/rest/version.rb +1 -1
- metadata +2 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 76c90f66b43ea548df326ecb709ff8f88a6c2f3851c3614a140ae9c57f4e9aaa
|
4
|
+
data.tar.gz: b5c43c292e4a5ebc3fe6ec2b3d2ce0f0ee3bd8c9095837afbd60254bcb183412
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: afe07c891403a05e3efbd671e671489dd193c3a95ad2fd64a6d89df224519f4eca961bed2cea103ad3ae68313d385d6d7e707b728b66776dc89b484d228013de
|
7
|
+
data.tar.gz: fc7ffafe19d596a6fc8cca97b83d71e14b671fa2f4172c94e3ad3ed9eafbfbac043dc1c82f090a86d95cda0b543555427bd0fdf1c415877b8995829bcf77cb32
|
data/Gemfile.lock
CHANGED
data/lib/economic/base.rb
CHANGED
@@ -29,12 +29,8 @@ module Economic
|
|
29
29
|
def self.relation(name, fields:, multiple: false)
|
30
30
|
economic_cased_attibute_name = name.to_s
|
31
31
|
add_relation economic_cased_attibute_name, fields, multiple
|
32
|
-
|
33
|
-
|
34
|
-
alias_method "#{snake_case(economic_cased_attibute_name)}=", "#{economic_cased_attibute_name}="
|
35
|
-
else
|
36
|
-
attr_reader economic_cased_attibute_name
|
37
|
-
end
|
32
|
+
attr_accessor economic_cased_attibute_name
|
33
|
+
alias_method "#{snake_case(economic_cased_attibute_name)}=", "#{economic_cased_attibute_name}="
|
38
34
|
alias_method snake_case(economic_cased_attibute_name), economic_cased_attibute_name
|
39
35
|
end
|
40
36
|
|
@@ -94,13 +90,6 @@ module Economic
|
|
94
90
|
return_hash
|
95
91
|
end
|
96
92
|
|
97
|
-
def dirty?
|
98
|
-
self.class.attributes.each do |attribute|
|
99
|
-
return true unless send(attribute) == @internal_hash[attribute]
|
100
|
-
end
|
101
|
-
false
|
102
|
-
end
|
103
|
-
|
104
93
|
def self.snake_case(camel_cased)
|
105
94
|
camel_cased.to_s.gsub(/::/, "/")
|
106
95
|
.gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
|
data/lib/economic/base_repo.rb
CHANGED
@@ -10,19 +10,21 @@ module Economic
|
|
10
10
|
attr_accessor :endpoint
|
11
11
|
|
12
12
|
def save(model, url: endpoint_url)
|
13
|
-
|
14
|
-
|
13
|
+
if model.id_key.nil?
|
14
|
+
post_or_put = :post
|
15
|
+
else
|
16
|
+
post_or_put = :put
|
17
|
+
url += "/" + id_to_url_formatted_id(model.id_key)
|
18
|
+
end
|
15
19
|
|
16
20
|
response = send_request(method: post_or_put, url: url, payload: model.to_h.to_json)
|
17
21
|
|
18
22
|
modelize_response(response)
|
19
23
|
end
|
20
24
|
|
21
|
-
# TODO: This method does not seem to do anything that the save method cannot do - is there any reason to keep it? Posting to a not-existing id is apparenly fine
|
22
25
|
def send(model, url: endpoint_url)
|
23
|
-
|
24
|
-
|
25
|
-
modelize_response(response)
|
26
|
+
warn "use #{self}.save(). #{self}.send() is deprecated"
|
27
|
+
save(model, url: endpoint_url)
|
26
28
|
end
|
27
29
|
|
28
30
|
def all(filter_text: "", url: endpoint_url)
|
@@ -1,15 +1,23 @@
|
|
1
1
|
module Economic
|
2
2
|
module Invoices
|
3
3
|
class Repo < Economic::BaseRepo
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
invoice
|
8
|
-
|
9
|
-
|
4
|
+
class << self
|
5
|
+
def all
|
6
|
+
invoices = super
|
7
|
+
invoices.each do |invoice|
|
8
|
+
invoice.remove_instance_variable("@lines")
|
9
|
+
class << invoice
|
10
|
+
define_method(:lines) { raise NoMethodError }
|
11
|
+
end
|
10
12
|
end
|
13
|
+
invoices
|
14
|
+
end
|
15
|
+
|
16
|
+
def send(model, url: endpoint_url)
|
17
|
+
response = send_request(method: :post, url: url, payload: model.to_h.to_json)
|
18
|
+
|
19
|
+
modelize_response(response)
|
11
20
|
end
|
12
|
-
invoices
|
13
21
|
end
|
14
22
|
end
|
15
23
|
end
|
data/lib/economic/orders/repo.rb
CHANGED
@@ -1,15 +1,23 @@
|
|
1
1
|
module Economic
|
2
2
|
module Orders
|
3
3
|
class Repo < Economic::BaseRepo
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
order
|
8
|
-
|
9
|
-
|
4
|
+
class << self
|
5
|
+
def all
|
6
|
+
orders = super
|
7
|
+
orders.each do |order|
|
8
|
+
order.remove_instance_variable("@lines")
|
9
|
+
class << order
|
10
|
+
define_method(:lines) { raise NoMethodError }
|
11
|
+
end
|
10
12
|
end
|
13
|
+
orders
|
14
|
+
end
|
15
|
+
|
16
|
+
def send(model, url: endpoint_url)
|
17
|
+
response = send_request(method: :post, url: url, payload: model.to_h.to_json)
|
18
|
+
|
19
|
+
modelize_response(response)
|
11
20
|
end
|
12
|
-
orders
|
13
21
|
end
|
14
22
|
end
|
15
23
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: economic-rest
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Klogborg
|
@@ -317,8 +317,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
317
317
|
- !ruby/object:Gem::Version
|
318
318
|
version: '0'
|
319
319
|
requirements: []
|
320
|
-
|
321
|
-
rubygems_version: 2.7.6
|
320
|
+
rubygems_version: 3.0.3
|
322
321
|
signing_key:
|
323
322
|
specification_version: 4
|
324
323
|
summary: Ruby wrapper for the e-conomic REST API, that aims at making working with
|