netvisor 0.2.3 → 0.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.
- data/README.md +3 -1
- data/lib/netvisor.rb +2 -2
- data/lib/netvisor/base.rb +1 -1
- data/lib/netvisor/configuration.rb +0 -1
- data/lib/netvisor/dimension.rb +8 -0
- data/lib/netvisor/request.rb +1 -1
- data/lib/netvisor/sales_invoice.rb +40 -3
- data/lib/netvisor/sales_invoice_product_line.rb +8 -10
- data/lib/netvisor/version.rb +1 -1
- data/netvisor.gemspec +8 -6
- metadata +39 -9
data/README.md
CHANGED
@@ -36,9 +36,11 @@ Netvisor.configure do |config|
|
|
36
36
|
config.customer_key = Customer key
|
37
37
|
config.partner_ke = Partner key
|
38
38
|
|
39
|
+
```
|
40
|
+
|
39
41
|
## Contributing
|
40
42
|
|
41
|
-
1. Fork it ( https://github.com/
|
43
|
+
1. Fork it ( https://github.com/Eficode/netvisor/fork )
|
42
44
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|
43
45
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
44
46
|
4. Push to the branch (`git push origin my-new-feature`)
|
data/lib/netvisor.rb
CHANGED
@@ -16,10 +16,10 @@ module Netvisor
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def self.configuration
|
19
|
-
@configuration ||= Configuration.new
|
19
|
+
@configuration ||= Configuration.new(:sender => 'Netvisor gem')
|
20
20
|
end
|
21
21
|
|
22
22
|
def self.reset
|
23
|
-
@configuration = Configuration.new
|
23
|
+
@configuration = Configuration.new(:sender => 'Netvisor gem')
|
24
24
|
end
|
25
25
|
end
|
data/lib/netvisor/base.rb
CHANGED
data/lib/netvisor/request.rb
CHANGED
@@ -3,7 +3,7 @@ require 'faraday'
|
|
3
3
|
module Netvisor
|
4
4
|
class Request
|
5
5
|
|
6
|
-
def
|
6
|
+
def dispatch(xml, service, method = nil, id = nil)
|
7
7
|
url = self.class.build_url(service, method, id)
|
8
8
|
headers = self.class.build_headers(url)
|
9
9
|
xml.gsub!("<?xml version=\"1.0\"?>", '')
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'happymapper'
|
2
2
|
require 'netvisor/sales_invoice_line'
|
3
3
|
require 'netvisor/vat_percentage'
|
4
|
+
require 'netvisor/dimension'
|
4
5
|
|
5
6
|
module Netvisor
|
6
7
|
class SalesInvoice
|
@@ -91,6 +92,8 @@ module Netvisor
|
|
91
92
|
element :description, String, :tag => 'Description'
|
92
93
|
element :account_number, String, :tag => 'AccountNumber'
|
93
94
|
element :vat_percentage, VatPercentage, :tag => 'VatPercent'
|
95
|
+
element :skip_accrual, String, :tag => 'SkipAccrual'
|
96
|
+
has_many :dimensions, Dimension, :tag => 'Dimension'
|
94
97
|
end
|
95
98
|
|
96
99
|
has_many :lines, VoucherLine, :tag => 'VoucherLine'
|
@@ -146,6 +149,36 @@ module Netvisor
|
|
146
149
|
|
147
150
|
end
|
148
151
|
|
152
|
+
class ChannelFormat
|
153
|
+
include HappyMapper
|
154
|
+
|
155
|
+
attribute :type, String
|
156
|
+
content :format, String
|
157
|
+
end
|
158
|
+
|
159
|
+
class SecondName
|
160
|
+
include HappyMapper
|
161
|
+
|
162
|
+
attribute :type, String
|
163
|
+
content :format, String
|
164
|
+
end
|
165
|
+
|
166
|
+
class InvoiceAccrual
|
167
|
+
include HappyMapper
|
168
|
+
|
169
|
+
class AccrualVoucherEntry
|
170
|
+
include HappyMapper
|
171
|
+
|
172
|
+
element :month, Integer
|
173
|
+
element :year, Integer
|
174
|
+
element :sum, Float
|
175
|
+
end
|
176
|
+
|
177
|
+
element :overwrite_account_number, Integer, :tag => 'OverrideDefaultSalesAccrualAccountNumber'
|
178
|
+
element :accrual_type, String, :tag => 'SalesInvoiceAccrualType'
|
179
|
+
has_many :accrual_vouchers, AccrualVoucher, :tag => 'AccrualVoucherEntry'
|
180
|
+
end
|
181
|
+
|
149
182
|
element :invoice_number, String, :tag => 'SalesInvoiceNumber'
|
150
183
|
element :invoice_date, InvoiceDate, :tag => 'SalesInvoiceDate'
|
151
184
|
element :invoice_delivery_date, InvoiceDeliveryDate, :tag => 'SalesInvoiceDeliveryDate'
|
@@ -154,12 +187,12 @@ module Netvisor
|
|
154
187
|
element :seller_id, SellerId, :tag => 'SellerIdentifier'
|
155
188
|
element :seller_name, String, :tag => 'SellerName'
|
156
189
|
element :type, String, :tag => 'InvoiceType'
|
190
|
+
element :status, InvoiceStatus, :tag => 'SalesInvoiceStatus'
|
157
191
|
element :text_before_lines, String, :tag => 'SalesInvoiceFreeTextBeforeLines'
|
158
192
|
element :text_after_lines, String, :tag => 'SalesInvoiceFreeTextAfterLines'
|
159
193
|
element :our_reference, String, :tag => 'SalesInvoiceOurReference'
|
160
194
|
element :your_reference, String, :tag => 'SalesInvoiceYourReference'
|
161
195
|
element :comment, String, :tag => 'SalesInvoicePrivateComment'
|
162
|
-
element :status, InvoiceStatus, :tag => 'SalesInvoiceStatus'
|
163
196
|
|
164
197
|
element :customer_id, CustomerId, :tag => 'InvoicingCustomerIdentifier'
|
165
198
|
element :customer_firstname, String, :tag => 'InvoicingCustomerName'
|
@@ -169,14 +202,14 @@ module Netvisor
|
|
169
202
|
element :customer_city, String, :tag => 'InvoicingCustomerTown'
|
170
203
|
element :customer_country, CountryCode, :tag => 'InvoicingCustomerCountryCode'
|
171
204
|
|
172
|
-
element :delivery_method, String, :tag => 'DeliveryMethod'
|
173
|
-
element :delivery_term, String, :tag => 'DeliveryTerm'
|
174
205
|
element :delivery_address_name, String, :tag => 'DeliveryAddressName'
|
175
206
|
element :delivery_address_name_extension, String, :tag => 'DeliveryAddressNameExtension'
|
176
207
|
element :delivery_address_line, String, :tag => 'DeliveryAddressLine'
|
177
208
|
element :delivery_address_postal_code, String, :tag => 'DeliveryAddressPostNumber'
|
178
209
|
element :delivery_address_city, String, :tag => 'DeliveryAddressTown'
|
179
210
|
element :delivery_address_countrey, CountryCode, :tag => 'DeliveryAddressCountryCode'
|
211
|
+
element :delivery_method, String, :tag => 'DeliveryMethod'
|
212
|
+
element :delivery_term, String, :tag => 'DeliveryTerm'
|
180
213
|
|
181
214
|
element :tax_handling_type, String, :tag => 'SalesInvoiceTaxHandlingType'
|
182
215
|
element :payment_net_days, Integer, :tag => 'PaymentTermNetDays'
|
@@ -187,8 +220,12 @@ module Netvisor
|
|
187
220
|
element :overrise_account_number, Integer, :tag => 'OverrideVoucherSalesReceivablesAccountNumber'
|
188
221
|
element :subject_type, String, :tag => 'InvoiceSubjectType'
|
189
222
|
|
223
|
+
element :print_channel_format, ChannelFormat, :tag => 'printchannelformat'
|
224
|
+
element :second_name, SecondName, :tag => 'secondname'
|
225
|
+
|
190
226
|
has_many :invoice_lines, SalesInvoiceLines, :tag => 'InvoiceLines'
|
191
227
|
has_many :voucher_lines, InvoiceVoucherLines, :tag => 'InvoiceVoucherLines'
|
228
|
+
has_many :invoice_accrual, InvoiceAccrual, :tag => 'SalesInvoiceAccrual'
|
192
229
|
has_many :attachments, SalesInvoiceAttachments, :tag => 'SalesInvoiceAttachments'
|
193
230
|
has_many :custom_tags, CustomTags, :tag => 'CustomTags'
|
194
231
|
end
|
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'happymapper'
|
2
2
|
require 'netvisor/vat_percentage'
|
3
|
+
require 'netvisor/dimension'
|
3
4
|
|
4
5
|
module Netvisor
|
5
6
|
class SalesInvoiceProductLine
|
@@ -15,14 +16,7 @@ module Netvisor
|
|
15
16
|
include HappyMapper
|
16
17
|
|
17
18
|
attribute :type, String
|
18
|
-
content :price,
|
19
|
-
end
|
20
|
-
|
21
|
-
class Dimension
|
22
|
-
include HappyMapper
|
23
|
-
|
24
|
-
element :name, String, :tag => 'DimensionName'
|
25
|
-
element :item, String, :tag => 'DimensionItem'
|
19
|
+
content :price, Float
|
26
20
|
end
|
27
21
|
|
28
22
|
tag self.name.split('::').last
|
@@ -30,11 +24,15 @@ module Netvisor
|
|
30
24
|
element :product_id, ProductId, :tag => 'ProductIdentifier'
|
31
25
|
element :name, String, :tag => 'ProductName'
|
32
26
|
element :unit_price, UnitPrice, :tag => 'ProductUnitPrice'
|
27
|
+
element :unit_purchase_price, UnitPrice, :tag => 'ProductUnitPurchasePrice'
|
33
28
|
element :vat_percentage, VatPercentage, :tag => 'ProductVatPercentage'
|
34
29
|
element :quantity, Integer, :tag => 'SalesInvoiceProductLineQuantity'
|
35
|
-
element :accounting_suggestion, Integer, :tag => 'AccountingAccountSuggestion'
|
36
|
-
element :AccountingAccountSuggestion, Integer, :tag => 'ProductUnitPurchasePrice'
|
37
30
|
element :discount_percentage, Integer, :tag => 'SalesInvoiceProductLineDiscountPercentage'
|
31
|
+
element :free_text, String, :tag => 'SalesInvoiceProductLineFreeText'
|
32
|
+
element :vat_sum, Float, :tag => 'SalesInvoiceProductLineVatSum'
|
33
|
+
element :line_sum, Float, :tag => 'SalesInvoiceProductLineSum'
|
34
|
+
element :accounting_suggestion, Integer, :tag => 'AccountingAccountSuggestion'
|
35
|
+
element :skip_accrual, Integer, :tag => 'SkipAccrual'
|
38
36
|
has_many :dimensions, Dimension, :tag => 'Dimension'
|
39
37
|
end
|
40
38
|
end
|
data/lib/netvisor/version.rb
CHANGED
data/netvisor.gemspec
CHANGED
@@ -22,14 +22,16 @@ EOF
|
|
22
22
|
|
23
23
|
spec.required_ruby_version = '>= 1.8.7'
|
24
24
|
|
25
|
-
spec.add_development_dependency
|
26
|
-
spec.add_development_dependency
|
27
|
-
spec.add_development_dependency
|
25
|
+
spec.add_development_dependency 'bundler', '~> 1.7'
|
26
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
27
|
+
spec.add_development_dependency 'pry', '~> 0.9.12'
|
28
28
|
spec.add_development_dependency 'rspec', '~> 3.1.0'
|
29
29
|
spec.add_development_dependency 'coveralls'
|
30
30
|
spec.add_development_dependency 'rest-client', '~> 1.6.8'
|
31
31
|
|
32
|
-
spec.add_runtime_dependency
|
33
|
-
spec.add_runtime_dependency
|
34
|
-
spec.add_runtime_dependency
|
32
|
+
spec.add_runtime_dependency 'faraday', '~> 0.9'
|
33
|
+
spec.add_runtime_dependency 'nokogiri-happymapper-deiga', '~> 0.5.10'
|
34
|
+
spec.add_runtime_dependency 'nokogiri', '~> 1.5.11'
|
35
|
+
spec.add_runtime_dependency 'ox'
|
36
|
+
spec.add_runtime_dependency 'activemodel', '~> 3.2.19'
|
35
37
|
end
|
metadata
CHANGED
@@ -1,13 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: netvisor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 27
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
|
10
|
-
version: 0.2.3
|
8
|
+
- 8
|
9
|
+
version: "0.8"
|
11
10
|
platform: ruby
|
12
11
|
authors:
|
13
12
|
- Timo Sand
|
@@ -15,7 +14,7 @@ autorequire:
|
|
15
14
|
bindir: bin
|
16
15
|
cert_chain: []
|
17
16
|
|
18
|
-
date: 2014-09-
|
17
|
+
date: 2014-09-11 00:00:00 Z
|
19
18
|
dependencies:
|
20
19
|
- !ruby/object:Gem::Dependency
|
21
20
|
version_requirements: &id001 !ruby/object:Gem::Requirement
|
@@ -130,16 +129,16 @@ dependencies:
|
|
130
129
|
requirements:
|
131
130
|
- - ~>
|
132
131
|
- !ruby/object:Gem::Version
|
133
|
-
hash:
|
132
|
+
hash: 31
|
134
133
|
segments:
|
135
134
|
- 0
|
136
135
|
- 5
|
137
|
-
-
|
138
|
-
version: 0.5.
|
136
|
+
- 10
|
137
|
+
version: 0.5.10
|
139
138
|
prerelease: false
|
140
139
|
requirement: *id008
|
141
140
|
type: :runtime
|
142
|
-
name: nokogiri-happymapper
|
141
|
+
name: nokogiri-happymapper-deiga
|
143
142
|
- !ruby/object:Gem::Dependency
|
144
143
|
version_requirements: &id009 !ruby/object:Gem::Requirement
|
145
144
|
none: false
|
@@ -156,6 +155,36 @@ dependencies:
|
|
156
155
|
requirement: *id009
|
157
156
|
type: :runtime
|
158
157
|
name: nokogiri
|
158
|
+
- !ruby/object:Gem::Dependency
|
159
|
+
version_requirements: &id010 !ruby/object:Gem::Requirement
|
160
|
+
none: false
|
161
|
+
requirements:
|
162
|
+
- - ">="
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
hash: 3
|
165
|
+
segments:
|
166
|
+
- 0
|
167
|
+
version: "0"
|
168
|
+
prerelease: false
|
169
|
+
requirement: *id010
|
170
|
+
type: :runtime
|
171
|
+
name: ox
|
172
|
+
- !ruby/object:Gem::Dependency
|
173
|
+
version_requirements: &id011 !ruby/object:Gem::Requirement
|
174
|
+
none: false
|
175
|
+
requirements:
|
176
|
+
- - ~>
|
177
|
+
- !ruby/object:Gem::Version
|
178
|
+
hash: 41
|
179
|
+
segments:
|
180
|
+
- 3
|
181
|
+
- 2
|
182
|
+
- 19
|
183
|
+
version: 3.2.19
|
184
|
+
prerelease: false
|
185
|
+
requirement: *id011
|
186
|
+
type: :runtime
|
187
|
+
name: activemodel
|
159
188
|
description: " This gem is a ruby implementation of the Netvisor invoicing API\n"
|
160
189
|
email:
|
161
190
|
- timo.j.sand@gmail.com
|
@@ -178,6 +207,7 @@ files:
|
|
178
207
|
- lib/netvisor.rb
|
179
208
|
- lib/netvisor/base.rb
|
180
209
|
- lib/netvisor/configuration.rb
|
210
|
+
- lib/netvisor/dimension.rb
|
181
211
|
- lib/netvisor/request.rb
|
182
212
|
- lib/netvisor/root.rb
|
183
213
|
- lib/netvisor/sales_invoice.rb
|