invoice_printer 1.3.0 → 2.0.0.alpha1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/Gemfile +2 -2
- data/Gemfile.lock +12 -17
- data/LICENSE.txt +1 -1
- data/Rakefile +3 -2
- data/bin/invoice_printer +2 -1
- data/docs/COMMAND_LINE.md +4 -0
- data/docs/LIBRARY.md +10 -12
- data/docs/SERVER.md +1 -1
- data/examples/clients/node.js +2 -12
- data/examples/complex_invoice.rb +2 -8
- data/examples/czech_invoice.rb +13 -9
- data/examples/czech_invoice_long.rb +13 -9
- data/examples/international_invoice.rb +14 -10
- data/examples/long_invoice.rb +2 -8
- data/examples/provider_purchaser_lines.rb +111 -0
- data/examples/simple_invoice.rb +4 -0
- data/invoice_printer.gemspec +11 -6
- data/invoice_printer_server.gemspec +35 -0
- data/lib/invoice_printer/document.rb +14 -12
- data/lib/invoice_printer/pdf_document.rb +113 -51
- data/lib/invoice_printer/version.rb +1 -1
- data/test/cli_test.rb +4 -1
- data/test/test_ext.rb +6 -10
- data/test/test_helper.rb +18 -12
- metadata +15 -45
- data/bin/invoice_printer_server +0 -69
- data/lib/invoice_printer/server.rb +0 -90
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: cdf5ab1be5ba608592e459feb3295450b61fb43d063adf9e250281bad74fa87e
|
4
|
+
data.tar.gz: ffbe76f56621e22d5e0020ba0a285305b4ce018f5923d7240e543140fb8b9acd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d5f1023dd14f26e190b579edf7a4def0f86530574d64024a4ebd49d82735efcd4294a0913e09c95a38ed44e8a12fe46ac56326e8e1d8db565d3a9df242a9441
|
7
|
+
data.tar.gz: f768d976020dc7397241344cecf5daa164e24e51f71815105cf37d781b8d9e278a6f98af3445cbb97deb8df3d46dbc082be5999e666016735ff411ae975d1059
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,12 +1,10 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
|
4
|
+
invoice_printer_server (2.0.0.alpha1)
|
5
5
|
json (~> 2.1)
|
6
|
-
|
7
|
-
|
8
|
-
puma (~> 3.9)
|
9
|
-
roda (= 3.5.0)
|
6
|
+
puma (>= 3.9.0)
|
7
|
+
roda (~> 3.5)
|
10
8
|
|
11
9
|
GEM
|
12
10
|
remote: https://rubygems.org/
|
@@ -20,9 +18,9 @@ GEM
|
|
20
18
|
gruff (0.7.0)
|
21
19
|
rmagick (~> 2.13, >= 2.13.4)
|
22
20
|
hashery (2.1.2)
|
23
|
-
json (2.
|
21
|
+
json (2.2.0)
|
24
22
|
minitest (5.11.3)
|
25
|
-
|
23
|
+
nio4r (2.3.1)
|
26
24
|
pdf-inspector (1.3.0)
|
27
25
|
pdf-reader (>= 1.0, < 3.0.a)
|
28
26
|
pdf-reader (2.2.0)
|
@@ -31,17 +29,14 @@ GEM
|
|
31
29
|
hashery (~> 2.0)
|
32
30
|
ruby-rc4
|
33
31
|
ttfunk
|
34
|
-
|
35
|
-
|
36
|
-
ttfunk (~> 1.4.0)
|
37
|
-
prawn-layout (0.8.4)
|
38
|
-
puma (3.12.0)
|
32
|
+
puma (4.0.0)
|
33
|
+
nio4r (~> 2.0)
|
39
34
|
rack (2.0.6)
|
40
35
|
rack-test (1.1.0)
|
41
36
|
rack (>= 1.0, < 3)
|
42
37
|
rake (10.5.0)
|
43
38
|
rmagick (2.16.0)
|
44
|
-
roda (3.
|
39
|
+
roda (3.21.0)
|
45
40
|
rack
|
46
41
|
ruby-rc4 (0.1.5)
|
47
42
|
ttfunk (1.4.0)
|
@@ -52,12 +47,12 @@ PLATFORMS
|
|
52
47
|
DEPENDENCIES
|
53
48
|
benchmark_driver (= 0.14.11)
|
54
49
|
benchmark_driver-output-gruff
|
55
|
-
bundler (
|
56
|
-
|
50
|
+
bundler (>= 1.7)
|
51
|
+
invoice_printer_server!
|
57
52
|
minitest
|
58
53
|
pdf-inspector
|
59
54
|
rack-test
|
60
|
-
rake (
|
55
|
+
rake (>= 10.0)
|
61
56
|
|
62
57
|
BUNDLED WITH
|
63
|
-
1.
|
58
|
+
1.17.2
|
data/LICENSE.txt
CHANGED
data/Rakefile
CHANGED
@@ -1,9 +1,10 @@
|
|
1
|
-
require 'bundler
|
2
|
-
|
1
|
+
require 'bundler'
|
2
|
+
Bundler::GemHelper.install_tasks(name: 'invoice_printer_server')
|
3
3
|
|
4
4
|
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), 'lib'))
|
5
5
|
require 'invoice_printer'
|
6
6
|
|
7
|
+
require 'rake/testtask'
|
7
8
|
Rake::TestTask.new('test') do |t|
|
8
9
|
t.libs << 'test'
|
9
10
|
t.pattern = 'test/**/*test.rb'
|
data/bin/invoice_printer
CHANGED
@@ -5,7 +5,7 @@ require 'optparse'
|
|
5
5
|
require 'invoice_printer'
|
6
6
|
|
7
7
|
def show_version
|
8
|
-
puts "InvoicePrinter v#{InvoicePrinter::VERSION}"
|
8
|
+
puts "InvoicePrinter Server v#{InvoicePrinter::VERSION}"
|
9
9
|
|
10
10
|
exit 0
|
11
11
|
end
|
@@ -25,6 +25,7 @@ def show_help
|
|
25
25
|
--page-size letter or a4 (letter is the default)
|
26
26
|
-f, --filename output path
|
27
27
|
-r, --render directly render PDF stream (filename option will be ignored)
|
28
|
+
-v, --version show version
|
28
29
|
|
29
30
|
HELP
|
30
31
|
|
data/docs/COMMAND_LINE.md
CHANGED
@@ -19,5 +19,9 @@ Options:
|
|
19
19
|
--page-size letter or a4 (letter is the default)
|
20
20
|
-f, --filename output path
|
21
21
|
-r, --render directly render PDF stream (filename option will be ignored)
|
22
|
+
```
|
23
|
+
## Examples
|
22
24
|
|
23
25
|
```
|
26
|
+
$ invoice_printer --document '{"number":"c. 198900000001","provider_name":"Petr Novy","provider_tax_id":"56565656","provider_tax_id2":"","provider_lines":"Rolnická 1\n747 05 Opava\nKateřinky","purchaser_name":"Adam Cerny","purchaser_tax_id":"","purchaser_tax_id2":"","purchaser_lines":"Ostravská 1\n747 70 Opava","issue_date":"05/03/2016","due_date":"19/03/2016","subtotal":"Kc 10.000","tax":"Kc 2.100","tax2":"","tax3":"","total":"Kc 12.100,-","bank_account_number":"156546546465","account_iban":"IBAN464545645","account_swift":"SWIFT5456","items":[{"name":"Konzultace","quantity":"2","unit":"hod","price":"Kc 500","tax":"","tax2":"","tax3":"","amount":"Kc 1.000"},{"name":"Programovani","quantity":"10","unit":"hod","price":"Kc 900","tax":"","tax2":"","tax3":"","amount":"Kc 9.000"}],"note":"Osoba je zapsána v zivnostenském rejstríku."}' --font Overpass-Regular.ttf --filename out.pdf
|
27
|
+
```
|
data/docs/LIBRARY.md
CHANGED
@@ -38,26 +38,22 @@ item = InvoicePrinter::Document::Item.new(
|
|
38
38
|
amount: '$ 100'
|
39
39
|
)
|
40
40
|
|
41
|
+
provider_address = <<~ADDRESS
|
42
|
+
Rolnická 1
|
43
|
+
747 05 Opava
|
44
|
+
Kateřinky
|
45
|
+
ADDRESS
|
46
|
+
|
41
47
|
invoice = InvoicePrinter::Document.new(
|
42
48
|
number: '201604030001',
|
43
49
|
provider_name: 'Business s.r.o.',
|
44
50
|
provider_tax_id: '56565656',
|
45
51
|
provider_tax_id2: '465454',
|
46
|
-
|
47
|
-
provider_street_number: '1',
|
48
|
-
provider_postcode: '747 05',
|
49
|
-
provider_city: 'Opava',
|
50
|
-
provider_city_part: 'Katerinky',
|
51
|
-
provider_extra_address_line: 'Czech Republic',
|
52
|
+
provider_lines: provider_address,
|
52
53
|
purchaser_name: 'Adam',
|
53
54
|
purchaser_tax_id: '',
|
54
55
|
purchaser_tax_id2: '',
|
55
|
-
|
56
|
-
purchaser_street_number: '1',
|
57
|
-
purchaser_postcode: '747 70',
|
58
|
-
purchaser_city: 'Opava',
|
59
|
-
purchaser_city_part: '',
|
60
|
-
purchaser_extra_address_line: '',
|
56
|
+
purchaser_lines: "Ostravská 1\n747 70 Opava",
|
61
57
|
issue_date: '19/03/3939',
|
62
58
|
due_date: '19/03/3939',
|
63
59
|
subtotal: '175',
|
@@ -73,6 +69,8 @@ invoice = InvoicePrinter::Document.new(
|
|
73
69
|
)
|
74
70
|
```
|
75
71
|
|
72
|
+
**Note**: `provider_lines` and `purchaser_lines` are 4 lines of data separated by new line character`\n`. Other lines are being stripped.
|
73
|
+
|
76
74
|
**Note**: There is `variable` field that can be used for any
|
77
75
|
extra column. `tax2` and `tax3` for more complex taxes are
|
78
76
|
available as well.
|
data/docs/SERVER.md
CHANGED
@@ -71,7 +71,7 @@ On error a `400` response is returned:
|
|
71
71
|
Example of calling the API to render a document using `curl`:
|
72
72
|
|
73
73
|
```
|
74
|
-
$ curl -X POST http://0.0.0.0:9393/render -H "Content-Type: application/json" --data '{"document":{"number":"c. 198900000001","provider_name":"Petr Novy","provider_tax_id":"56565656","provider_tax_id2":"","
|
74
|
+
$ curl -X POST http://0.0.0.0:9393/render -H "Content-Type: application/json" --data '{"document":{"number":"c. 198900000001","provider_name":"Petr Novy","provider_tax_id":"56565656","provider_tax_id2":"","provider_lines":"Rolnická 1\n747 05 Opava\nKateřinky","purchaser_name":"Adam Cerny","purchaser_tax_id":"","purchaser_tax_id2":"","purchaser_lines":"Ostravská 1\n747 70 Opava","issue_date":"05/03/2016","due_date":"19/03/2016","subtotal":"Kc 10.000","tax":"Kc 2.100","tax2":"","tax3":"","total":"Kc 12.100,-","bank_account_number":"156546546465","account_iban":"IBAN464545645","account_swift":"SWIFT5456","items":[{"name":"Konzultace","quantity":"2","unit":"hod","price":"Kc 500","tax":"","tax2":"","tax3":"","amount":"Kc 1.000"},{"name":"Programovani","quantity":"10","unit":"hod","price":"Kc 900","tax":"","tax2":"","tax3":"","amount":"Kc 9.000"}],"note":"Osoba je zapsána v zivnostenském rejstríku."}}'
|
75
75
|
```
|
76
76
|
|
77
77
|
##### Node.js
|
data/examples/clients/node.js
CHANGED
@@ -13,21 +13,11 @@ const invoice = {
|
|
13
13
|
"provider_name": "John White",
|
14
14
|
"provider_tax_id": "",
|
15
15
|
"provider_tax_id2": "",
|
16
|
-
"
|
17
|
-
"provider_street_number": "1",
|
18
|
-
"provider_postcode": "747 05",
|
19
|
-
"provider_city": "NYC",
|
20
|
-
"provider_city_part": "",
|
21
|
-
"provider_extra_address_line": "",
|
16
|
+
"provider_lines": "79 Stonybrook St.\nBronx, NY 10457",
|
22
17
|
"purchaser_name": "Will Black",
|
23
18
|
"purchaser_tax_id": "",
|
24
19
|
"purchaser_tax_id2": "",
|
25
|
-
"
|
26
|
-
"purchaser_street_number": "1",
|
27
|
-
"purchaser_postcode": "747 70",
|
28
|
-
"purchaser_city": "NYC",
|
29
|
-
"purchaser_city_part": "",
|
30
|
-
"purchaser_extra_address_line": "",
|
20
|
+
"purchaser_lines": "8648 Acacia Rd.\nBrooklyn, NY 11203",
|
31
21
|
"issue_date": "05/03/2016",
|
32
22
|
"due_date": "19/03/2016",
|
33
23
|
"subtotal": "$ 1,000",
|
data/examples/complex_invoice.rb
CHANGED
@@ -46,15 +46,9 @@ item3 = InvoicePrinter::Document::Item.new(
|
|
46
46
|
invoice = InvoicePrinter::Document.new(
|
47
47
|
number: 'NO. 198900000001',
|
48
48
|
provider_name: 'John White',
|
49
|
-
|
50
|
-
provider_street_number: '1',
|
51
|
-
provider_postcode: '747 05',
|
52
|
-
provider_city: 'NYC',
|
49
|
+
provider_lines: "79 Stonybrook St.\nBronx, NY 10457",
|
53
50
|
purchaser_name: 'Will Black',
|
54
|
-
|
55
|
-
purchaser_street_number: '1',
|
56
|
-
purchaser_postcode: '747 70',
|
57
|
-
purchaser_city: 'NYC',
|
51
|
+
purchaser_lines: "8648 Acacia Rd.\nBrooklyn, NY 11203",
|
58
52
|
issue_date: '05/03/2016',
|
59
53
|
due_date: '19/03/2016',
|
60
54
|
subtotal: '$ 1,000',
|
data/examples/czech_invoice.rb
CHANGED
@@ -45,21 +45,25 @@ second_item = InvoicePrinter::Document::Item.new(
|
|
45
45
|
amount: 'Kč 9.000'
|
46
46
|
)
|
47
47
|
|
48
|
+
provider_address = <<ADDRESS
|
49
|
+
Rolnická 1
|
50
|
+
747 05 Opava
|
51
|
+
Kateřinky
|
52
|
+
ADDRESS
|
53
|
+
|
54
|
+
purchaser_address = <<ADDRESS
|
55
|
+
Ostravská 1
|
56
|
+
747 70 Opava
|
57
|
+
ADDRESS
|
58
|
+
|
48
59
|
invoice = InvoicePrinter::Document.new(
|
49
60
|
number: 'č. 198900000001',
|
50
61
|
provider_name: 'Petr Nový',
|
62
|
+
provider_lines: provider_address,
|
51
63
|
provider_tax_id: '56565656',
|
52
64
|
provider_tax_id2: 'CZ56565656',
|
53
|
-
provider_street: 'Rolnická',
|
54
|
-
provider_street_number: '1',
|
55
|
-
provider_postcode: '747 05',
|
56
|
-
provider_city: 'Opava',
|
57
|
-
provider_city_part: 'Kateřinky',
|
58
65
|
purchaser_name: 'Adam Černý',
|
59
|
-
|
60
|
-
purchaser_street_number: '1',
|
61
|
-
purchaser_postcode: '747 70',
|
62
|
-
purchaser_city: 'Opava',
|
66
|
+
purchaser_lines: purchaser_address,
|
63
67
|
purchaser_tax_id: '56565656',
|
64
68
|
purchaser_tax_id2: 'CZ56565656',
|
65
69
|
issue_date: '05/03/2016',
|
@@ -45,21 +45,25 @@ second_item = InvoicePrinter::Document::Item.new(
|
|
45
45
|
amount: 'Kč 9.000'
|
46
46
|
)
|
47
47
|
|
48
|
+
provider_address = <<ADDRESS
|
49
|
+
Rolnická 1
|
50
|
+
747 05 Opava
|
51
|
+
Kateřinky
|
52
|
+
ADDRESS
|
53
|
+
|
54
|
+
purchaser_address = <<ADDRESS
|
55
|
+
Ostravská 1
|
56
|
+
747 70 Opava
|
57
|
+
ADDRESS
|
58
|
+
|
48
59
|
invoice = InvoicePrinter::Document.new(
|
49
60
|
number: 'č. 198900000001',
|
50
61
|
provider_name: 'Petr Nový',
|
62
|
+
provider_lines: provider_address,
|
51
63
|
provider_tax_id: '56565656',
|
52
64
|
provider_tax_id2: 'CZ56565656',
|
53
|
-
provider_street: 'Rolnická',
|
54
|
-
provider_street_number: '1',
|
55
|
-
provider_postcode: '747 05',
|
56
|
-
provider_city: 'Opava',
|
57
|
-
provider_city_part: 'Kateřinky',
|
58
65
|
purchaser_name: 'Adam Černý',
|
59
|
-
|
60
|
-
purchaser_street_number: '1',
|
61
|
-
purchaser_postcode: '747 70',
|
62
|
-
purchaser_city: 'Opava',
|
66
|
+
purchaser_lines: purchaser_address,
|
63
67
|
purchaser_tax_id: '56565656',
|
64
68
|
purchaser_tax_id2: 'CZ56565656',
|
65
69
|
issue_date: '05/03/2016',
|
@@ -49,20 +49,24 @@ second_item = InvoicePrinter::Document::Item.new(
|
|
49
49
|
amount: 'Kč 9.000'
|
50
50
|
)
|
51
51
|
|
52
|
+
provider_address = <<ADDRESS
|
53
|
+
Rolnická 1
|
54
|
+
747 05 Opava
|
55
|
+
Kateřinky
|
56
|
+
ADDRESS
|
57
|
+
|
58
|
+
purchaser_address = <<ADDRESS
|
59
|
+
8648 Acacia Rd.
|
60
|
+
Brooklyn, NY 11203
|
61
|
+
ADDRESS
|
62
|
+
|
52
63
|
invoice = InvoicePrinter::Document.new(
|
53
64
|
number: 'č. 198900000001',
|
54
65
|
provider_name: 'Petr Nový',
|
66
|
+
provider_lines: provider_address,
|
55
67
|
provider_tax_id: '56565656',
|
56
|
-
|
57
|
-
|
58
|
-
provider_postcode: '747 05',
|
59
|
-
provider_city: 'Opava',
|
60
|
-
provider_city_part: 'Kateřinky',
|
61
|
-
purchaser_name: 'Adam Černý',
|
62
|
-
purchaser_street: 'Ostravská',
|
63
|
-
purchaser_street_number: '1',
|
64
|
-
purchaser_postcode: '747 70',
|
65
|
-
purchaser_city: 'Opava',
|
68
|
+
purchaser_name: 'Adam Black',
|
69
|
+
purchaser_lines: purchaser_address,
|
66
70
|
issue_date: '05/03/2016',
|
67
71
|
due_date: '19/03/2016',
|
68
72
|
subtotal: 'Kč 10.000',
|
data/examples/long_invoice.rb
CHANGED
@@ -39,15 +39,9 @@ item3 = InvoicePrinter::Document::Item.new(
|
|
39
39
|
invoice = InvoicePrinter::Document.new(
|
40
40
|
number: 'NO. 198900000001',
|
41
41
|
provider_name: 'John White',
|
42
|
-
|
43
|
-
provider_street_number: '1',
|
44
|
-
provider_postcode: '747 05',
|
45
|
-
provider_city: 'NYC',
|
42
|
+
provider_lines: "79 Stonybrook St.\nBronx, NY 10457",
|
46
43
|
purchaser_name: 'Will Black',
|
47
|
-
|
48
|
-
purchaser_street_number: '1',
|
49
|
-
purchaser_postcode: '747 70',
|
50
|
-
purchaser_city: 'NYC',
|
44
|
+
purchaser_lines: "8648 Acacia Rd.\nBrooklyn, NY 11203",
|
51
45
|
issue_date: '05/03/2016',
|
52
46
|
due_date: '19/03/2016',
|
53
47
|
subtotal: '$ 1,000',
|
@@ -0,0 +1,111 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# This is an example of a Czech invoice.
|
3
|
+
#
|
4
|
+
# Due to the special characters it requires Overpass-Regular.ttf font to be
|
5
|
+
# present in this directory.
|
6
|
+
|
7
|
+
lib = File.expand_path('../../lib', __FILE__)
|
8
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
9
|
+
require 'invoice_printer'
|
10
|
+
|
11
|
+
labels = {
|
12
|
+
name: 'Faktura',
|
13
|
+
provider: 'Prodejce',
|
14
|
+
purchaser: 'Kupující',
|
15
|
+
tax_id: 'IČ',
|
16
|
+
tax_id2: 'DIČ',
|
17
|
+
payment: 'Forma úhrady',
|
18
|
+
payment_by_transfer: 'Platba na následující účet:',
|
19
|
+
account_number: 'Číslo účtu',
|
20
|
+
issue_date: 'Datum vydání',
|
21
|
+
due_date: 'Datum splatnosti',
|
22
|
+
item: 'Položka',
|
23
|
+
quantity: 'Počet',
|
24
|
+
unit: 'MJ',
|
25
|
+
price_per_item: 'Cena za položku',
|
26
|
+
amount: 'Celkem bez daně',
|
27
|
+
subtotal: 'Cena bez daně',
|
28
|
+
tax: 'DPH 21 %',
|
29
|
+
total: 'Celkem'
|
30
|
+
}
|
31
|
+
|
32
|
+
first_item = InvoicePrinter::Document::Item.new(
|
33
|
+
name: 'Konzultace',
|
34
|
+
quantity: '2',
|
35
|
+
unit: 'hod',
|
36
|
+
price: 'Kč 500',
|
37
|
+
amount: 'Kč 1.000'
|
38
|
+
)
|
39
|
+
|
40
|
+
second_item = InvoicePrinter::Document::Item.new(
|
41
|
+
name: 'Programování',
|
42
|
+
quantity: '10',
|
43
|
+
unit: 'hod',
|
44
|
+
price: 'Kč 900',
|
45
|
+
amount: 'Kč 9.000'
|
46
|
+
)
|
47
|
+
|
48
|
+
provider_address = <<ADDRESS
|
49
|
+
Rolnická 1
|
50
|
+
747 05 Opava
|
51
|
+
Kateřinky
|
52
|
+
|
53
|
+
fith line wont show
|
54
|
+
ADDRESS
|
55
|
+
|
56
|
+
purchaser_address = <<ADDRESS
|
57
|
+
Ostravská 1
|
58
|
+
747 70 Opava
|
59
|
+
|
60
|
+
|
61
|
+
|
62
|
+
fith line wont show
|
63
|
+
ADDRESS
|
64
|
+
|
65
|
+
invoice = InvoicePrinter::Document.new(
|
66
|
+
number: 'č. 198900000001',
|
67
|
+
provider_name: 'Petr Nový',
|
68
|
+
provider_tax_id: '56565656',
|
69
|
+
provider_tax_id2: 'CZ56565656',
|
70
|
+
provider_street: 'Rolnická',
|
71
|
+
provider_street_number: '1',
|
72
|
+
provider_postcode: '747 05',
|
73
|
+
provider_city: 'Opava',
|
74
|
+
provider_city_part: 'Kateřinky',
|
75
|
+
provider_lines: provider_address,
|
76
|
+
purchaser_name: 'Adam Černý',
|
77
|
+
purchaser_street: 'Ostravská',
|
78
|
+
purchaser_street_number: '1',
|
79
|
+
purchaser_postcode: '747 70',
|
80
|
+
purchaser_city: 'Opava',
|
81
|
+
purchaser_lines: purchaser_address,
|
82
|
+
purchaser_tax_id: '56565656',
|
83
|
+
purchaser_tax_id2: 'CZ56565656',
|
84
|
+
issue_date: '05/03/2016',
|
85
|
+
due_date: '19/03/2016',
|
86
|
+
subtotal: 'Kč 10.000',
|
87
|
+
tax: 'Kč 2.100',
|
88
|
+
total: 'Kč 12.100,-',
|
89
|
+
bank_account_number: '156546546465',
|
90
|
+
account_iban: 'IBAN464545645',
|
91
|
+
account_swift: 'SWIFT5456',
|
92
|
+
items: [first_item, second_item],
|
93
|
+
note: 'Osoba je zapsána v živnostenském rejstříku.'
|
94
|
+
)
|
95
|
+
|
96
|
+
InvoicePrinter.print(
|
97
|
+
document: invoice,
|
98
|
+
labels: labels,
|
99
|
+
font: File.expand_path('../Overpass-Regular.ttf', __FILE__),
|
100
|
+
logo: 'prawn.png',
|
101
|
+
file_name: 'provider_purchaser_lines.pdf'
|
102
|
+
)
|
103
|
+
|
104
|
+
InvoicePrinter.print(
|
105
|
+
document: invoice,
|
106
|
+
labels: labels,
|
107
|
+
font: File.expand_path('../Overpass-Regular.ttf', __FILE__),
|
108
|
+
logo: 'prawn.png',
|
109
|
+
file_name: 'provider_purchaser_lines_a4.pdf',
|
110
|
+
page_size: :a4
|
111
|
+
)
|