lohnausweis 0.1.0 → 0.2.1
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/lohnausweis/daten.rb +37 -2
- data/lib/lohnausweis/pdf_generator.rb +45 -6
- data/lib/lohnausweis/rohdaten.rb +11 -0
- data/lib/lohnausweis/version.rb +1 -1
- data/mit_korrektur_januar.pdf +323 -208
- data/spec/lohnausweis/pdf_generator_spec.rb +8 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9921dfa356202040738e98c61270732beaae5346
|
4
|
+
data.tar.gz: 847cc468ab1db7384b21dbfbf530407f90d02491
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 45b702f8773730ae17e0b5aaabf1e90cc5c4a2f8f3cd06f1288894fc7656fc3c8fedfcd215d2d73bf2f9cd9f9a239eb3c105cb722a3d3eeefb6d3304c4d66ca3
|
7
|
+
data.tar.gz: f1aa6f986d0faa20143ea6897890920ca805a4f69504ae194db3bf5615250dfcccbba8bf28b38460e6fb7d3cd964709e3b3d61a3b7fb272181b64d33d080f71f
|
data/Gemfile.lock
CHANGED
data/lib/lohnausweis/daten.rb
CHANGED
@@ -35,6 +35,7 @@ module Planik
|
|
35
35
|
create_abzuege_block(bruttolohn_eintrag)
|
36
36
|
create_ferien_block
|
37
37
|
create_arbeitszeit_block
|
38
|
+
create_arbeitsliste
|
38
39
|
end
|
39
40
|
|
40
41
|
def create_lohn_block
|
@@ -98,6 +99,37 @@ module Planik
|
|
98
99
|
@arbeitszeit_block = Block.new(eintraege, titel)
|
99
100
|
end
|
100
101
|
|
102
|
+
def create_arbeitsliste
|
103
|
+
eintraege = []
|
104
|
+
titel = ["Datum", "Dienst/Arbeit", "Typ", "Start", "Ende", "Arbeitszeit"]
|
105
|
+
eintraege << titel
|
106
|
+
|
107
|
+
@rohdaten.arbeitsliste.each do |a|
|
108
|
+
d = []
|
109
|
+
d << a.datum.strftime("%d.%m.%Y")
|
110
|
+
d << a.name
|
111
|
+
d << a.typ
|
112
|
+
d << (a.zeit_von.nil? ? nil: a.zeit_von.strftime("%H:%M"))
|
113
|
+
d << (zeit_bis_to_s(a))
|
114
|
+
d << format('%.2f', a.arbeitszeit)
|
115
|
+
eintraege << d
|
116
|
+
end
|
117
|
+
sum = 0
|
118
|
+
@rohdaten.arbeitsliste.each{|x| sum += x.arbeitszeit}
|
119
|
+
sum = format('%.2f', sum)
|
120
|
+
eintraege << ["Arbeitszeit total", nil, nil, nil, nil, sum]
|
121
|
+
@arbeitsliste = eintraege
|
122
|
+
end
|
123
|
+
|
124
|
+
def zeit_bis_to_s(a)
|
125
|
+
if a.zeit_bis.nil?
|
126
|
+
return nil
|
127
|
+
end
|
128
|
+
s = a.zeit_bis.strftime("%H:%M")
|
129
|
+
s == "00:00" ? "24:00" : s
|
130
|
+
end
|
131
|
+
|
132
|
+
|
101
133
|
def adresse
|
102
134
|
@rohdaten.adresse
|
103
135
|
end
|
@@ -119,6 +151,10 @@ module Planik
|
|
119
151
|
@arbeitszeit_block.daten
|
120
152
|
end
|
121
153
|
|
154
|
+
def arbeitsliste
|
155
|
+
@arbeitsliste
|
156
|
+
end
|
157
|
+
|
122
158
|
def start_datum
|
123
159
|
@rohdaten.start_datum.strftime("%d.%m.%Y")
|
124
160
|
end
|
@@ -128,11 +164,10 @@ module Planik
|
|
128
164
|
end
|
129
165
|
|
130
166
|
def jahr
|
131
|
-
|
167
|
+
@rohdaten.start_datum.strftime("%Y")
|
132
168
|
end
|
133
169
|
|
134
170
|
def monat
|
135
|
-
puts I18n.load_path
|
136
171
|
I18n.localize @rohdaten.start_datum, :format => "%B", :locale => :de
|
137
172
|
end
|
138
173
|
|
@@ -17,7 +17,7 @@ module Planik
|
|
17
17
|
# Erstellt das PDF und liefert es zurück
|
18
18
|
def create_pdf
|
19
19
|
@pdf = Prawn::Document.new(page_size: "A4")
|
20
|
-
|
20
|
+
#@pdf.stroke_axis # Die Masse auf den Achsen
|
21
21
|
@pdf.font("Helvetica", size: 8) #Default Font and size
|
22
22
|
@pdf.default_leading = 0
|
23
23
|
next_y = 750
|
@@ -26,6 +26,7 @@ module Planik
|
|
26
26
|
next_y = ferien_block(next_y)
|
27
27
|
arbeitszeit_block(next_y)
|
28
28
|
footer()
|
29
|
+
arbeitsliste()
|
29
30
|
@pdf
|
30
31
|
end
|
31
32
|
|
@@ -87,11 +88,52 @@ module Planik
|
|
87
88
|
end
|
88
89
|
|
89
90
|
def footer
|
90
|
-
ypos =
|
91
|
+
ypos = 26
|
91
92
|
@pdf.bounding_box([XPOS, ypos], width: WIDTH) do
|
92
93
|
@pdf.font("Helvetica", size: 8) do
|
93
94
|
@pdf.text("Wir bitten Sie, die Lohnabrechnung sofort zu prüfen und Unstimmigkeiten unverzüglich mitzuteilen.")
|
94
|
-
@pdf.text("Anhang: Arbeitszeit
|
95
|
+
@pdf.text("Anhang: Arbeitszeit von #{@daten.start_datum} bis #{@daten.end_datum}.")
|
96
|
+
@pdf.text("Generiert von Planik am #{Time.now.strftime("%d.%m.%Y um %H:%M Uhr")}", align: :right)
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
def arbeitsliste
|
102
|
+
@pdf.start_new_page
|
103
|
+
@pdf.text("Anhang: Arbeitszeit von #{@daten.start_datum} bis #{@daten.end_datum}", style: :bold)
|
104
|
+
arbeitsliste = @daten.arbeitsliste
|
105
|
+
make_arbeitsliste_table(XPOS, 750, arbeitsliste, true)
|
106
|
+
ypos = 18
|
107
|
+
@pdf.bounding_box([XPOS, ypos], width: WIDTH) do
|
108
|
+
@pdf.font("Helvetica", size: 8) do
|
109
|
+
@pdf.text("Generiert von Planik am #{Time.now.strftime("%d.%m.%Y um %H:%M Uhr")}", align: :right)
|
110
|
+
end
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
|
115
|
+
|
116
|
+
def make_arbeitsliste_table(xpos, ypos, daten, title = false)
|
117
|
+
@pdf.bounding_box([xpos, ypos], width: WIDTH) do #height dynmaisch
|
118
|
+
p_width = @pdf.bounds.width
|
119
|
+
r1 = Rational(1, 6)
|
120
|
+
r2 = r1 * Rational(1, 3)
|
121
|
+
column_width = [p_width * r1, p_width * r1, p_width * r1, p_width * r1, p_width * r1, p_width * r1]
|
122
|
+
@pdf.table(daten, column_widths: column_width,
|
123
|
+
cell_style: {
|
124
|
+
borders: [], #keine Ränder
|
125
|
+
padding_top: 3, padding_bottom: 3
|
126
|
+
|
127
|
+
}
|
128
|
+
) do |t|
|
129
|
+
if title
|
130
|
+
t.row(0).style(font_style: :bold) #Titel bold
|
131
|
+
t.row(0).background_color = "D8D8D8"
|
132
|
+
end
|
133
|
+
t.column(5).style(align: :right)
|
134
|
+
t.cells[t.row_length-1, 0].font_style = :bold
|
135
|
+
t.cells[t.row_length-1, 5].borders = [:top]
|
136
|
+
t.cells[t.row_length-1, 5].font_style = :bold
|
95
137
|
end
|
96
138
|
end
|
97
139
|
end
|
@@ -119,11 +161,8 @@ module Planik
|
|
119
161
|
t.cells[t.row_length-1, 3].borders = [:top]
|
120
162
|
t.cells[t.row_length-1, 3].font_style = :bold
|
121
163
|
end
|
122
|
-
# @pdf.stroke_bounds
|
123
164
|
end
|
124
165
|
end
|
125
|
-
|
126
|
-
|
127
166
|
end
|
128
167
|
end
|
129
168
|
end
|
data/lib/lohnausweis/rohdaten.rb
CHANGED
@@ -60,6 +60,14 @@ module Planik
|
|
60
60
|
end
|
61
61
|
end
|
62
62
|
|
63
|
+
class ArbeitsItem
|
64
|
+
attr_accessor :datum, :name, :typ, :zeit_von, :zeit_bis, :arbeitszeit
|
65
|
+
|
66
|
+
def initialize(datum, name, typ, zeit_von, zeit_bis, arbeitszeit)
|
67
|
+
@datum, @name, @typ, @zeit_von, @zeit_bis, @arbeitszeit = datum, name, typ, zeit_von, zeit_bis, arbeitszeit
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
63
71
|
attr_accessor :start_datum, :end_datum
|
64
72
|
attr_accessor :monatslohn
|
65
73
|
attr_accessor :adresse
|
@@ -71,10 +79,12 @@ module Planik
|
|
71
79
|
attr_accessor :ferien
|
72
80
|
attr_accessor :lohn_freifelder
|
73
81
|
attr_accessor :abzug_freifelder
|
82
|
+
attr_accessor :arbeitsliste
|
74
83
|
|
75
84
|
def initialize
|
76
85
|
@lohn_freifelder = []
|
77
86
|
@abzug_freifelder = []
|
87
|
+
@arbeitsliste = []
|
78
88
|
yield self
|
79
89
|
|
80
90
|
end
|
@@ -82,6 +92,7 @@ module Planik
|
|
82
92
|
def add_lohn_freifeld freifeld
|
83
93
|
lohn_freifelder << freifeld
|
84
94
|
end
|
95
|
+
|
85
96
|
def add_abzug_freifeld freifeld
|
86
97
|
abzug_freifelder << freifeld
|
87
98
|
end
|
data/lib/lohnausweis/version.rb
CHANGED
data/mit_korrektur_januar.pdf
CHANGED
@@ -12,204 +12,15 @@ endobj
|
|
12
12
|
endobj
|
13
13
|
3 0 obj
|
14
14
|
<< /Type /Pages
|
15
|
-
/Count
|
16
|
-
/Kids [5 0 R]
|
15
|
+
/Count 2
|
16
|
+
/Kids [5 0 R 9 0 R]
|
17
17
|
>>
|
18
18
|
endobj
|
19
19
|
4 0 obj
|
20
|
-
<< /Length
|
20
|
+
<< /Length 10967
|
21
21
|
>>
|
22
22
|
stream
|
23
23
|
q
|
24
|
-
q
|
25
|
-
/DeviceRGB cs
|
26
|
-
0.000 0.000 0.000 scn
|
27
|
-
/DeviceRGB CS
|
28
|
-
0.000 0.000 0.000 SCN
|
29
|
-
[1 4] 0 d
|
30
|
-
16.000 36.000 m
|
31
|
-
559.000 36.000 l
|
32
|
-
S
|
33
|
-
36.000 16.000 m
|
34
|
-
36.000 805.000 l
|
35
|
-
S
|
36
|
-
[ ] 0 d
|
37
|
-
37.000 36.000 m
|
38
|
-
37.000 36.552 36.552 37.000 36.000 37.000 c
|
39
|
-
35.448 37.000 35.000 36.552 35.000 36.000 c
|
40
|
-
35.000 35.448 35.448 35.000 36.000 35.000 c
|
41
|
-
36.552 35.000 37.000 35.448 37.000 36.000 c
|
42
|
-
36.000 36.000 m
|
43
|
-
f
|
44
|
-
137.000 36.000 m
|
45
|
-
137.000 36.552 136.552 37.000 136.000 37.000 c
|
46
|
-
135.448 37.000 135.000 36.552 135.000 36.000 c
|
47
|
-
135.000 35.448 135.448 35.000 136.000 35.000 c
|
48
|
-
136.552 35.000 137.000 35.448 137.000 36.000 c
|
49
|
-
136.000 36.000 m
|
50
|
-
f
|
51
|
-
|
52
|
-
BT
|
53
|
-
131 26.0 Td
|
54
|
-
/F1.0 7 Tf
|
55
|
-
[<313030>] TJ
|
56
|
-
ET
|
57
|
-
|
58
|
-
237.000 36.000 m
|
59
|
-
237.000 36.552 236.552 37.000 236.000 37.000 c
|
60
|
-
235.448 37.000 235.000 36.552 235.000 36.000 c
|
61
|
-
235.000 35.448 235.448 35.000 236.000 35.000 c
|
62
|
-
236.552 35.000 237.000 35.448 237.000 36.000 c
|
63
|
-
236.000 36.000 m
|
64
|
-
f
|
65
|
-
|
66
|
-
BT
|
67
|
-
231 26.0 Td
|
68
|
-
/F1.0 7 Tf
|
69
|
-
[<323030>] TJ
|
70
|
-
ET
|
71
|
-
|
72
|
-
337.000 36.000 m
|
73
|
-
337.000 36.552 336.552 37.000 336.000 37.000 c
|
74
|
-
335.448 37.000 335.000 36.552 335.000 36.000 c
|
75
|
-
335.000 35.448 335.448 35.000 336.000 35.000 c
|
76
|
-
336.552 35.000 337.000 35.448 337.000 36.000 c
|
77
|
-
336.000 36.000 m
|
78
|
-
f
|
79
|
-
|
80
|
-
BT
|
81
|
-
331 26.0 Td
|
82
|
-
/F1.0 7 Tf
|
83
|
-
[<333030>] TJ
|
84
|
-
ET
|
85
|
-
|
86
|
-
437.000 36.000 m
|
87
|
-
437.000 36.552 436.552 37.000 436.000 37.000 c
|
88
|
-
435.448 37.000 435.000 36.552 435.000 36.000 c
|
89
|
-
435.000 35.448 435.448 35.000 436.000 35.000 c
|
90
|
-
436.552 35.000 437.000 35.448 437.000 36.000 c
|
91
|
-
436.000 36.000 m
|
92
|
-
f
|
93
|
-
|
94
|
-
BT
|
95
|
-
431 26.0 Td
|
96
|
-
/F1.0 7 Tf
|
97
|
-
[<343030>] TJ
|
98
|
-
ET
|
99
|
-
|
100
|
-
537.000 36.000 m
|
101
|
-
537.000 36.552 536.552 37.000 536.000 37.000 c
|
102
|
-
535.448 37.000 535.000 36.552 535.000 36.000 c
|
103
|
-
535.000 35.448 535.448 35.000 536.000 35.000 c
|
104
|
-
536.552 35.000 537.000 35.448 537.000 36.000 c
|
105
|
-
536.000 36.000 m
|
106
|
-
f
|
107
|
-
|
108
|
-
BT
|
109
|
-
531 26.0 Td
|
110
|
-
/F1.0 7 Tf
|
111
|
-
[<353030>] TJ
|
112
|
-
ET
|
113
|
-
|
114
|
-
37.000 136.000 m
|
115
|
-
37.000 136.552 36.552 137.000 36.000 137.000 c
|
116
|
-
35.448 137.000 35.000 136.552 35.000 136.000 c
|
117
|
-
35.000 135.448 35.448 135.000 36.000 135.000 c
|
118
|
-
36.552 135.000 37.000 135.448 37.000 136.000 c
|
119
|
-
36.000 136.000 m
|
120
|
-
f
|
121
|
-
|
122
|
-
BT
|
123
|
-
19 134.0 Td
|
124
|
-
/F1.0 7 Tf
|
125
|
-
[<313030>] TJ
|
126
|
-
ET
|
127
|
-
|
128
|
-
37.000 236.000 m
|
129
|
-
37.000 236.552 36.552 237.000 36.000 237.000 c
|
130
|
-
35.448 237.000 35.000 236.552 35.000 236.000 c
|
131
|
-
35.000 235.448 35.448 235.000 36.000 235.000 c
|
132
|
-
36.552 235.000 37.000 235.448 37.000 236.000 c
|
133
|
-
36.000 236.000 m
|
134
|
-
f
|
135
|
-
|
136
|
-
BT
|
137
|
-
19 234.0 Td
|
138
|
-
/F1.0 7 Tf
|
139
|
-
[<323030>] TJ
|
140
|
-
ET
|
141
|
-
|
142
|
-
37.000 336.000 m
|
143
|
-
37.000 336.552 36.552 337.000 36.000 337.000 c
|
144
|
-
35.448 337.000 35.000 336.552 35.000 336.000 c
|
145
|
-
35.000 335.448 35.448 335.000 36.000 335.000 c
|
146
|
-
36.552 335.000 37.000 335.448 37.000 336.000 c
|
147
|
-
36.000 336.000 m
|
148
|
-
f
|
149
|
-
|
150
|
-
BT
|
151
|
-
19 334.0 Td
|
152
|
-
/F1.0 7 Tf
|
153
|
-
[<333030>] TJ
|
154
|
-
ET
|
155
|
-
|
156
|
-
37.000 436.000 m
|
157
|
-
37.000 436.552 36.552 437.000 36.000 437.000 c
|
158
|
-
35.448 437.000 35.000 436.552 35.000 436.000 c
|
159
|
-
35.000 435.448 35.448 435.000 36.000 435.000 c
|
160
|
-
36.552 435.000 37.000 435.448 37.000 436.000 c
|
161
|
-
36.000 436.000 m
|
162
|
-
f
|
163
|
-
|
164
|
-
BT
|
165
|
-
19 434.0 Td
|
166
|
-
/F1.0 7 Tf
|
167
|
-
[<343030>] TJ
|
168
|
-
ET
|
169
|
-
|
170
|
-
37.000 536.000 m
|
171
|
-
37.000 536.552 36.552 537.000 36.000 537.000 c
|
172
|
-
35.448 537.000 35.000 536.552 35.000 536.000 c
|
173
|
-
35.000 535.448 35.448 535.000 36.000 535.000 c
|
174
|
-
36.552 535.000 37.000 535.448 37.000 536.000 c
|
175
|
-
36.000 536.000 m
|
176
|
-
f
|
177
|
-
|
178
|
-
BT
|
179
|
-
19 534.0 Td
|
180
|
-
/F1.0 7 Tf
|
181
|
-
[<353030>] TJ
|
182
|
-
ET
|
183
|
-
|
184
|
-
37.000 636.000 m
|
185
|
-
37.000 636.552 36.552 637.000 36.000 637.000 c
|
186
|
-
35.448 637.000 35.000 636.552 35.000 636.000 c
|
187
|
-
35.000 635.448 35.448 635.000 36.000 635.000 c
|
188
|
-
36.552 635.000 37.000 635.448 37.000 636.000 c
|
189
|
-
36.000 636.000 m
|
190
|
-
f
|
191
|
-
|
192
|
-
BT
|
193
|
-
19 634.0 Td
|
194
|
-
/F1.0 7 Tf
|
195
|
-
[<363030>] TJ
|
196
|
-
ET
|
197
|
-
|
198
|
-
37.000 736.000 m
|
199
|
-
37.000 736.552 36.552 737.000 36.000 737.000 c
|
200
|
-
35.448 737.000 35.000 736.552 35.000 736.000 c
|
201
|
-
35.000 735.448 35.448 735.000 36.000 735.000 c
|
202
|
-
36.552 735.000 37.000 735.448 37.000 736.000 c
|
203
|
-
36.000 736.000 m
|
204
|
-
f
|
205
|
-
|
206
|
-
BT
|
207
|
-
19 734.0 Td
|
208
|
-
/F1.0 7 Tf
|
209
|
-
[<373030>] TJ
|
210
|
-
ET
|
211
|
-
|
212
|
-
Q
|
213
24
|
|
214
25
|
BT
|
215
26
|
386 707.384 Td
|
@@ -234,12 +45,12 @@ ET
|
|
234
45
|
|
235
46
|
BT
|
236
47
|
416.024 679.6399999999999 Td
|
237
|
-
/
|
238
|
-
[<
|
48
|
+
/F1.0 12 Tf
|
49
|
+
[<204f626572> -15 <75747a77696c>] TJ
|
239
50
|
ET
|
240
51
|
|
241
52
|
416.024 678.390 m
|
242
|
-
|
53
|
+
476.216 678.390 l
|
243
54
|
S
|
244
55
|
|
245
56
|
BT
|
@@ -935,7 +746,7 @@ ET
|
|
935
746
|
BT
|
936
747
|
41 247.38400000000004 Td
|
937
748
|
/F1.0 8 Tf
|
938
|
-
[<
|
749
|
+
[<5374756e64656e73616c646f2056> 80 <6f72> -25 <6d6f6e6174>] TJ
|
939
750
|
ET
|
940
751
|
|
941
752
|
1 w
|
@@ -992,7 +803,7 @@ ET
|
|
992
803
|
BT
|
993
804
|
507.53599999999994 216.88800000000003 Td
|
994
805
|
/F1.0 8 Tf
|
995
|
-
[<
|
806
|
+
[<3135332e3637>] TJ
|
996
807
|
ET
|
997
808
|
|
998
809
|
1 w
|
@@ -1001,7 +812,7 @@ ET
|
|
1001
812
|
BT
|
1002
813
|
41 201.50400000000002 Td
|
1003
814
|
/F2.0 8 Tf
|
1004
|
-
[<
|
815
|
+
[<53616c646f207065722033302e30362e32303134>] TJ
|
1005
816
|
ET
|
1006
817
|
|
1007
818
|
1 w
|
@@ -1027,16 +838,23 @@ ET
|
|
1027
838
|
S
|
1028
839
|
|
1029
840
|
BT
|
1030
|
-
36
|
841
|
+
36 56.256 Td
|
1031
842
|
/F1.0 8 Tf
|
1032
843
|
[<5769722062697474656e20536965> 15 <2c20646965204c6f686e6162726563686e> 10 <756e6720736f66> 30 <6f72> -40 <74207a75207072> -15 <fc66> 30 <656e20756e6420556e7374696d6d69676b> 20 <656974656e20756e> 20 <76> 25 <65727afc676c696368206d69747a757465696c656e2e>] TJ
|
1033
844
|
ET
|
1034
845
|
|
1035
846
|
|
1036
847
|
BT
|
1037
|
-
36
|
848
|
+
36 47.008 Td
|
849
|
+
/F1.0 8 Tf
|
850
|
+
[<416e68616e673a20417262656974737a> 15 <6569742076> 25 <6f6e2030312e30362e32303134206269732033302e30362e323031342e>] TJ
|
851
|
+
ET
|
852
|
+
|
853
|
+
|
854
|
+
BT
|
855
|
+
357.00800000000004 37.760000000000005 Td
|
1038
856
|
/F1.0 8 Tf
|
1039
|
-
[<
|
857
|
+
[<47656e6572> -15 <696572> -40 <742076> 25 <6f6e20506c616e696b20616d2030392e30352e3230313420756d2031343a303320556872>] TJ
|
1040
858
|
ET
|
1041
859
|
|
1042
860
|
Q
|
@@ -1069,21 +887,318 @@ endobj
|
|
1069
887
|
/Encoding /WinAnsiEncoding
|
1070
888
|
>>
|
1071
889
|
endobj
|
890
|
+
8 0 obj
|
891
|
+
<< /Length 3304
|
892
|
+
>>
|
893
|
+
stream
|
894
|
+
q
|
895
|
+
|
896
|
+
BT
|
897
|
+
36 800.146 Td
|
898
|
+
/F2.0 8 Tf
|
899
|
+
[<416e68616e673a20417262656974737a> -10 <6569742076> 30 <6f6e2030312e30362e32303134206269732033302e30362e32303134>] TJ
|
900
|
+
ET
|
901
|
+
|
902
|
+
/DeviceRGB cs
|
903
|
+
0.847 0.847 0.847 scn
|
904
|
+
36.000 770.480 83.333 15.520 re
|
905
|
+
f
|
906
|
+
0.000 0.000 0.000 scn
|
907
|
+
0.847 0.847 0.847 scn
|
908
|
+
119.333 770.480 83.333 15.520 re
|
909
|
+
f
|
910
|
+
0.000 0.000 0.000 scn
|
911
|
+
0.847 0.847 0.847 scn
|
912
|
+
202.667 770.480 83.333 15.520 re
|
913
|
+
f
|
914
|
+
0.000 0.000 0.000 scn
|
915
|
+
0.847 0.847 0.847 scn
|
916
|
+
286.000 770.480 83.333 15.520 re
|
917
|
+
f
|
918
|
+
0.000 0.000 0.000 scn
|
919
|
+
0.847 0.847 0.847 scn
|
920
|
+
369.333 770.480 83.333 15.520 re
|
921
|
+
f
|
922
|
+
0.000 0.000 0.000 scn
|
923
|
+
0.847 0.847 0.847 scn
|
924
|
+
452.667 770.480 83.333 15.520 re
|
925
|
+
f
|
926
|
+
0.000 0.000 0.000 scn
|
927
|
+
1 w
|
928
|
+
/DeviceRGB CS
|
929
|
+
0.000 0.000 0.000 SCN
|
930
|
+
|
931
|
+
BT
|
932
|
+
41 775.3679999999999 Td
|
933
|
+
/F2.0 8 Tf
|
934
|
+
[<446174756d>] TJ
|
935
|
+
ET
|
936
|
+
|
937
|
+
1 w
|
938
|
+
0.000 0.000 0.000 SCN
|
939
|
+
|
940
|
+
BT
|
941
|
+
124.33333333333333 775.3679999999999 Td
|
942
|
+
/F2.0 8 Tf
|
943
|
+
[<4469656e73742f417262656974>] TJ
|
944
|
+
ET
|
945
|
+
|
946
|
+
1 w
|
947
|
+
0.000 0.000 0.000 SCN
|
948
|
+
|
949
|
+
BT
|
950
|
+
207.66666666666666 775.3679999999999 Td
|
951
|
+
/F2.0 8 Tf
|
952
|
+
[<54> 60 <7970>] TJ
|
953
|
+
ET
|
954
|
+
|
955
|
+
1 w
|
956
|
+
0.000 0.000 0.000 SCN
|
957
|
+
|
958
|
+
BT
|
959
|
+
291.0 775.3679999999999 Td
|
960
|
+
/F2.0 8 Tf
|
961
|
+
[<53746172> -20 <74>] TJ
|
962
|
+
ET
|
963
|
+
|
964
|
+
1 w
|
965
|
+
0.000 0.000 0.000 SCN
|
966
|
+
|
967
|
+
BT
|
968
|
+
374.3333333333333 775.3679999999999 Td
|
969
|
+
/F2.0 8 Tf
|
970
|
+
[<456e6465>] TJ
|
971
|
+
ET
|
972
|
+
|
973
|
+
1 w
|
974
|
+
0.000 0.000 0.000 SCN
|
975
|
+
|
976
|
+
BT
|
977
|
+
491.02399999999994 775.3679999999999 Td
|
978
|
+
/F2.0 8 Tf
|
979
|
+
[<417262656974737a> -10 <656974>] TJ
|
980
|
+
ET
|
981
|
+
|
982
|
+
1 w
|
983
|
+
0.000 0.000 0.000 SCN
|
984
|
+
|
985
|
+
BT
|
986
|
+
41 759.984 Td
|
987
|
+
/F1.0 8 Tf
|
988
|
+
[<30312e30362e32303134>] TJ
|
989
|
+
ET
|
990
|
+
|
991
|
+
1 w
|
992
|
+
0.000 0.000 0.000 SCN
|
993
|
+
|
994
|
+
BT
|
995
|
+
124.33333333333333 759.984 Td
|
996
|
+
/F1.0 8 Tf
|
997
|
+
[<34>] TJ
|
998
|
+
ET
|
999
|
+
|
1000
|
+
1 w
|
1001
|
+
0.000 0.000 0.000 SCN
|
1002
|
+
|
1003
|
+
BT
|
1004
|
+
207.66666666666666 759.984 Td
|
1005
|
+
/F1.0 8 Tf
|
1006
|
+
[<4469656e7374>] TJ
|
1007
|
+
ET
|
1008
|
+
|
1009
|
+
1 w
|
1010
|
+
0.000 0.000 0.000 SCN
|
1011
|
+
|
1012
|
+
BT
|
1013
|
+
291.0 759.984 Td
|
1014
|
+
/F1.0 8 Tf
|
1015
|
+
[<30363a3435>] TJ
|
1016
|
+
ET
|
1017
|
+
|
1018
|
+
1 w
|
1019
|
+
0.000 0.000 0.000 SCN
|
1020
|
+
|
1021
|
+
BT
|
1022
|
+
374.3333333333333 759.984 Td
|
1023
|
+
/F1.0 8 Tf
|
1024
|
+
[<31363a3030>] TJ
|
1025
|
+
ET
|
1026
|
+
|
1027
|
+
1 w
|
1028
|
+
0.000 0.000 0.000 SCN
|
1029
|
+
|
1030
|
+
BT
|
1031
|
+
516.432 759.984 Td
|
1032
|
+
/F1.0 8 Tf
|
1033
|
+
[<382e3234>] TJ
|
1034
|
+
ET
|
1035
|
+
|
1036
|
+
1 w
|
1037
|
+
0.000 0.000 0.000 SCN
|
1038
|
+
|
1039
|
+
BT
|
1040
|
+
41 744.736 Td
|
1041
|
+
/F1.0 8 Tf
|
1042
|
+
[<30322e30362e32303134>] TJ
|
1043
|
+
ET
|
1044
|
+
|
1045
|
+
1 w
|
1046
|
+
0.000 0.000 0.000 SCN
|
1047
|
+
|
1048
|
+
BT
|
1049
|
+
124.33333333333333 744.736 Td
|
1050
|
+
/F1.0 8 Tf
|
1051
|
+
[<32>] TJ
|
1052
|
+
ET
|
1053
|
+
|
1054
|
+
1 w
|
1055
|
+
0.000 0.000 0.000 SCN
|
1056
|
+
|
1057
|
+
BT
|
1058
|
+
207.66666666666666 744.736 Td
|
1059
|
+
/F1.0 8 Tf
|
1060
|
+
[<4469656e7374>] TJ
|
1061
|
+
ET
|
1062
|
+
|
1063
|
+
1 w
|
1064
|
+
0.000 0.000 0.000 SCN
|
1065
|
+
|
1066
|
+
BT
|
1067
|
+
291.0 744.736 Td
|
1068
|
+
/F1.0 8 Tf
|
1069
|
+
[<30373a3435>] TJ
|
1070
|
+
ET
|
1071
|
+
|
1072
|
+
1 w
|
1073
|
+
0.000 0.000 0.000 SCN
|
1074
|
+
|
1075
|
+
BT
|
1076
|
+
374.3333333333333 744.736 Td
|
1077
|
+
/F1.0 8 Tf
|
1078
|
+
[<32343a3030>] TJ
|
1079
|
+
ET
|
1080
|
+
|
1081
|
+
1 w
|
1082
|
+
0.000 0.000 0.000 SCN
|
1083
|
+
|
1084
|
+
BT
|
1085
|
+
516.432 744.736 Td
|
1086
|
+
/F1.0 8 Tf
|
1087
|
+
[<362e3233>] TJ
|
1088
|
+
ET
|
1089
|
+
|
1090
|
+
1 w
|
1091
|
+
0.000 0.000 0.000 SCN
|
1092
|
+
|
1093
|
+
BT
|
1094
|
+
41 729.488 Td
|
1095
|
+
/F1.0 8 Tf
|
1096
|
+
[<30322e30362e32303134>] TJ
|
1097
|
+
ET
|
1098
|
+
|
1099
|
+
1 w
|
1100
|
+
0.000 0.000 0.000 SCN
|
1101
|
+
|
1102
|
+
BT
|
1103
|
+
124.33333333333333 729.488 Td
|
1104
|
+
/F1.0 8 Tf
|
1105
|
+
[<32>] TJ
|
1106
|
+
ET
|
1107
|
+
|
1108
|
+
1 w
|
1109
|
+
0.000 0.000 0.000 SCN
|
1110
|
+
|
1111
|
+
BT
|
1112
|
+
207.66666666666666 729.488 Td
|
1113
|
+
/F1.0 8 Tf
|
1114
|
+
[<416e6465726520417262656974>] TJ
|
1115
|
+
ET
|
1116
|
+
|
1117
|
+
1 w
|
1118
|
+
0.000 0.000 0.000 SCN
|
1119
|
+
1 w
|
1120
|
+
0.000 0.000 0.000 SCN
|
1121
|
+
1 w
|
1122
|
+
0.000 0.000 0.000 SCN
|
1123
|
+
|
1124
|
+
BT
|
1125
|
+
516.432 729.488 Td
|
1126
|
+
/F1.0 8 Tf
|
1127
|
+
[<362e3234>] TJ
|
1128
|
+
ET
|
1129
|
+
|
1130
|
+
1 w
|
1131
|
+
0.000 0.000 0.000 SCN
|
1132
|
+
|
1133
|
+
BT
|
1134
|
+
41 714.1039999999999 Td
|
1135
|
+
/F2.0 8 Tf
|
1136
|
+
[<417262656974737a> -10 <65697420746f74616c>] TJ
|
1137
|
+
ET
|
1138
|
+
|
1139
|
+
1 w
|
1140
|
+
0.000 0.000 0.000 SCN
|
1141
|
+
1 w
|
1142
|
+
0.000 0.000 0.000 SCN
|
1143
|
+
1 w
|
1144
|
+
0.000 0.000 0.000 SCN
|
1145
|
+
1 w
|
1146
|
+
0.000 0.000 0.000 SCN
|
1147
|
+
1 w
|
1148
|
+
0.000 0.000 0.000 SCN
|
1149
|
+
452.667 724.736 m
|
1150
|
+
536.000 724.736 l
|
1151
|
+
S
|
1152
|
+
[ ] 0 d
|
1153
|
+
1 w
|
1154
|
+
0.000 0.000 0.000 SCN
|
1155
|
+
|
1156
|
+
BT
|
1157
|
+
511.9839999999999 714.1039999999999 Td
|
1158
|
+
/F2.0 8 Tf
|
1159
|
+
[<32302e3731>] TJ
|
1160
|
+
ET
|
1161
|
+
|
1162
|
+
|
1163
|
+
BT
|
1164
|
+
357.00800000000004 48.256 Td
|
1165
|
+
/F1.0 8 Tf
|
1166
|
+
[<47656e6572> -15 <696572> -40 <742076> 25 <6f6e20506c616e696b20616d2030392e30352e3230313420756d2031343a303320556872>] TJ
|
1167
|
+
ET
|
1168
|
+
|
1169
|
+
Q
|
1170
|
+
|
1171
|
+
endstream
|
1172
|
+
endobj
|
1173
|
+
9 0 obj
|
1174
|
+
<< /Type /Page
|
1175
|
+
/Parent 3 0 R
|
1176
|
+
/MediaBox [0 0 595.28 841.89]
|
1177
|
+
/Contents 8 0 R
|
1178
|
+
/Resources << /ProcSet [/PDF /Text /ImageB /ImageC /ImageI]
|
1179
|
+
/Font << /F2.0 7 0 R
|
1180
|
+
/F1.0 6 0 R
|
1181
|
+
>>
|
1182
|
+
>>
|
1183
|
+
>>
|
1184
|
+
endobj
|
1072
1185
|
xref
|
1073
|
-
0
|
1186
|
+
0 10
|
1074
1187
|
0000000000 65535 f
|
1075
1188
|
0000000015 00000 n
|
1076
1189
|
0000000109 00000 n
|
1077
1190
|
0000000158 00000 n
|
1078
|
-
|
1079
|
-
|
1080
|
-
|
1081
|
-
|
1191
|
+
0000000221 00000 n
|
1192
|
+
0000011241 00000 n
|
1193
|
+
0000011433 00000 n
|
1194
|
+
0000011530 00000 n
|
1195
|
+
0000011632 00000 n
|
1196
|
+
0000014988 00000 n
|
1082
1197
|
trailer
|
1083
|
-
<< /Size
|
1198
|
+
<< /Size 10
|
1084
1199
|
/Root 2 0 R
|
1085
1200
|
/Info 1 0 R
|
1086
1201
|
>>
|
1087
1202
|
startxref
|
1088
|
-
|
1203
|
+
15180
|
1089
1204
|
%%EOF
|
@@ -10,7 +10,7 @@ module Planik
|
|
10
10
|
r.end_datum = Date.new(2014, 06, 30)
|
11
11
|
r.adresse = Rohdaten::Adresse.new("Margherita", "Giuba", "Mauerstrasse", "34E", "3456", "Oberutzwil")
|
12
12
|
r.monatslohn = 4500
|
13
|
-
r.arbeitszeit = Rohdaten::Arbeitszeit.new(-22.3, 150, 153.
|
13
|
+
r.arbeitszeit = Rohdaten::Arbeitszeit.new(-22.3, 150, 153.665)
|
14
14
|
r.zulage_nacht = Rohdaten::MengeAnsatz.new(3.56, 8)
|
15
15
|
r.zulage_wochenende = Rohdaten::MengeAnsatz.new(2.12, 8)
|
16
16
|
r.kinderzulage = Rohdaten::MengeAnsatz.new(2, 260)
|
@@ -26,6 +26,13 @@ module Planik
|
|
26
26
|
r.add_abzug_freifeld(Rohdaten::Freifeld.new("Händischer Abzug", "irgendwas", "nochmals was", 12))
|
27
27
|
|
28
28
|
r.ferien = Rohdaten::Ferien.new(304, 22)
|
29
|
+
|
30
|
+
r.arbeitsliste = [
|
31
|
+
#attr_accessor :datum, :name, :typ, :zeit_von, :zeit_bis, :arbeitszeit
|
32
|
+
Rohdaten::ArbeitsItem.new(Date.new(2014, 06, 01), "4", "Dienst", Time.new(2000, 1, 1, 6, 45), Time.new(2000, 1, 1, 16, 00), 8.2388),
|
33
|
+
Rohdaten::ArbeitsItem.new(Date.new(2014, 06, 02), "2", "Dienst", Time.new(2000, 1, 1, 7, 45), Time.new(2000, 1, 1, 24, 00), 6.234),
|
34
|
+
Rohdaten::ArbeitsItem.new(Date.new(2014, 06, 02), "2", "Andere Arbeit", nil, nil, 6.235)
|
35
|
+
]
|
29
36
|
end
|
30
37
|
pdf = PdfGenerator.new(rohdaten).create_pdf
|
31
38
|
pdf.render_file "mit_korrektur_januar.pdf"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lohnausweis
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Christian Muehlethaler
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-05-
|
11
|
+
date: 2014-05-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|