lohnausweis 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cbae455707f8739303c8c831adaa348b3bb26059
4
- data.tar.gz: 14c2472b821667bd404b066c56c7ac456a5d1408
3
+ metadata.gz: c27f2a1bd4f53cfd0a102d63909b97e12d931fbe
4
+ data.tar.gz: 59dc6a9d903d4a8b81f8ef3a68dc29cba8a4bc33
5
5
  SHA512:
6
- metadata.gz: c4f4f6af6f99ba4ac8c3577d19ea50337a38848cdb7d534f3942bec4bcddfa319ffceb14fc8838492f2ec16bc96c93c6ce6f46547add9524091ec61701c860e5
7
- data.tar.gz: 72c569d4f04d174c05f418fe8920d608175073c71b8b90947274761e54f55f107c338cfaf0d4a995e0341b117301f9bf5e00d7382b2e6d247e819bda13558128
6
+ metadata.gz: 5f56915c1b423c0ee46af2406c5215041f09a3e4479fe7e93b19129a05af8aa4f4aa79de3625a335d19464d500f541a78eb8900c343ce0a0b5f85db1dcc3e830
7
+ data.tar.gz: 785ede79119cf4ea9132d154ffe52f0cb6a86493c7097e9050d3201cb944cd9ebb59893adbb1411b8d8670edca0500763c8faa70db115b6da3dbc590dd21509d
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- lohnausweis (0.3.0)
4
+ lohnausweis (0.4.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -121,7 +121,7 @@ module Planik
121
121
 
122
122
  @rohdaten.arbeitsliste.each do |a|
123
123
  d = []
124
- d << a.datum.strftime("%d.%m.%Y")
124
+ d << I18n.l(a.datum, format: :mit_wochentag)
125
125
  d << a.name
126
126
  d << a.typ
127
127
  d << (a.zeit_von.nil? ? nil: a.zeit_von.strftime("%H:%M"))
@@ -25,12 +25,11 @@ module Planik
25
25
  next_y = 750
26
26
  next_y = header_new(next_y)
27
27
  next_y -= 50
28
- next_y = arbeitsliste_new(next_y)
29
- next_y -= 50
30
28
  next_y = arbeitszeit_block(next_y)
31
-
32
29
  next_y -= 50
33
- zulagen_block(next_y)
30
+ next_y = zulagen_block(next_y)
31
+ next_y -= 50
32
+ next_y = arbeitsliste_new(next_y)
34
33
 
35
34
  footer()
36
35
  @pdf
@@ -50,7 +49,7 @@ module Planik
50
49
  next_y = lohn_block(next_y)
51
50
  next_y -= 50
52
51
  next_y = ferien_block(next_y)
53
- next_y -= 50
52
+ next_y -= 70
54
53
  arbeitszeit_block(next_y)
55
54
 
56
55
  footer()
@@ -80,7 +79,7 @@ module Planik
80
79
  #@pdf.stroke_bounds
81
80
  end
82
81
  @pdf.move_down(50)
83
- @pdf.text("Arbeitszeiten #{@daten.monat} #{@daten.jahr}", style: :bold)
82
+ @pdf.text("Arbeitszeiten #{@daten.monat_arbeit} #{@daten.jahr_arbeit}", style: :bold)
84
83
  end
85
84
  #@pdf.stroke_bounds
86
85
  end
@@ -161,7 +160,7 @@ module Planik
161
160
  # Neu
162
161
  # Aenderung für MEDPHONE März 2015: Nur Arbeitsliste, Arbeitszeit und Zulagen
163
162
  #@pdf.text("Anhang: Arbeitszeit von #{@daten.start_datum_for_arbeit} bis #{@daten.end_datum_for_arbeit}.")
164
- @pdf.text("Generiert von Planik am #{Time.now.strftime("%d.%m.%Y um %H:%M Uhr")}", align: :right)
163
+ @pdf.text("Generiert von Planik am #{Time.now.strftime("%d.%m.%Y um %H:%M Uhr")}")
165
164
  end
166
165
  end
167
166
  end
@@ -184,49 +183,42 @@ module Planik
184
183
  # Aenderung für MEDPHONE März 2015: Nur Arbeitsliste, Arbeitszeit und Zulagen
185
184
  #
186
185
  def arbeitsliste_new(ypos)
187
- bb = @pdf.bounding_box([XPOS, ypos], width: WIDTH+30) do
188
- #@pdf.start_new_page
189
- @pdf.text("Arbeitszeit von #{@daten.start_datum_for_arbeit} bis #{@daten.end_datum_for_arbeit}", style: :bold)
186
+ @pdf.move_down(50)
187
+ @pdf.text("Arbeitszeit von #{@daten.start_datum_for_arbeit} bis #{@daten.end_datum_for_arbeit}", style: :bold)
190
188
  arbeitsliste = @daten.arbeitsliste
191
- inner_ypos = 10
192
- make_arbeitsliste_table(XPOS, inner_ypos, arbeitsliste, true)
193
- # ypos = 18
194
- # @pdf.bounding_box([XPOS, ypos], width: WIDTH) do
195
- # @pdf.font("Helvetica", size: 8) do
196
- # @pdf.text("Generiert von Planik am #{Time.now.strftime("%d.%m.%Y um %H:%M Uhr")}", align: :right)
197
- # end
198
- # end
199
- end
200
- bb.absolute_bottom
201
-
189
+ make_table_without_bounding_box(arbeitsliste, true)
202
190
  end
203
191
 
204
192
 
205
193
  def make_arbeitsliste_table(xpos, ypos, daten, title = false)
206
194
  @pdf.bounding_box([xpos, ypos], width: WIDTH+30) do #height dynamisch
207
- p_width = @pdf.bounds.width
208
- r1 = Rational(1, 6)
209
- r2 = r1 * Rational(1, 2)
210
- r3 = Rational(1, 4)
211
- r4 = Rational(1, 9)
212
-
213
- column_width = [p_width * r1, p_width * r3, p_width * r3, p_width * r2, p_width * r2, p_width * r4]
214
- @pdf.table(daten, column_widths: column_width,
215
- cell_style: {
216
- borders: [], #keine Ränder
217
- padding_top: 3, padding_bottom: 3
195
+ make_table_without_bounding_box(daten, title)
196
+ end
197
+ end
218
198
 
219
- }
220
- ) do |t|
221
- if title
222
- t.row(0).style(font_style: :bold) #Titel bold
223
- t.row(0).background_color = "D8D8D8"
224
- end
225
- t.column(5).style(align: :right)
226
- t.cells[t.row_length-1, 0].font_style = :bold
227
- t.cells[t.row_length-1, 5].borders = [:top]
228
- t.cells[t.row_length-1, 5].font_style = :bold
199
+ def make_table_without_bounding_box(daten, title)
200
+ p_width = @pdf.bounds.width
201
+ r1 = Rational(1, 6)
202
+ r2 = r1 * Rational(1, 2)
203
+ r3 = Rational(1, 4)
204
+ r4 = Rational(1, 9)
205
+
206
+ column_width = [p_width * r1, p_width * r3, p_width * r3, p_width * r2, p_width * r2, p_width * r4]
207
+ @pdf.table(daten, column_widths: column_width,
208
+ cell_style: {
209
+ borders: [], #keine Ränder
210
+ padding_top: 3, padding_bottom: 3
211
+
212
+ }
213
+ ) do |t|
214
+ if title
215
+ t.row(0).style(font_style: :bold) #Titel bold
216
+ t.row(0).background_color = "D8D8D8"
229
217
  end
218
+ t.column(5).style(align: :right)
219
+ t.cells[t.row_length-1, 0].font_style = :bold
220
+ t.cells[t.row_length-1, 5].borders = [:top]
221
+ t.cells[t.row_length-1, 5].font_style = :bold
230
222
  end
231
223
  end
232
224
 
@@ -1,5 +1,5 @@
1
1
  module Planik
2
2
  module Lohnausweis
3
- VERSION = "0.4.0"
3
+ VERSION = "0.4.1"
4
4
  end
5
5
  end
data/locale/de.yml CHANGED
@@ -7,9 +7,10 @@ de:
7
7
  default: "%Y-%m-%d"
8
8
  short: "%b %d"
9
9
  long: "%B %d, %Y"
10
+ mit_wochentag: "%a, %d.%m.%Y"
10
11
 
11
12
  day_names: [Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday]
12
- abbr_day_names: [Sun, Mon, Tue, Wed, Thu, Fri, Sat]
13
+ abbr_day_names: [So, Mo, Di, Mi, Do, Fr, Sa]
13
14
 
14
15
  # Don't forget the nil at the beginning; there's no such thing as a 0th month
15
16
  month_names: [~, Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember]
data/locale/en.yml ADDED
@@ -0,0 +1,134 @@
1
+ en:
2
+ date:
3
+ formats:
4
+ # Use the strftime parameters for formats.
5
+ # When no format has been given, it uses default.
6
+ # You can provide other formats here if you like!
7
+ default: "%Y-%m-%d"
8
+ short: "%b %d"
9
+ long: "%B %d, %Y"
10
+ mit_wochentag: "%a, %d.%m.%Y"
11
+
12
+ day_names: [Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday]
13
+ abbr_day_names: [Sun, Mon, Tue, Wed, Thu, Fri, Sat]
14
+
15
+ # Don't forget the nil at the beginning; there's no such thing as a 0th month
16
+ month_names: [~, Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember]
17
+ abbr_month_names: [~, Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec]
18
+ # Used in date_select and datetime_select.
19
+ order:
20
+ - year
21
+ - month
22
+ - day
23
+
24
+ time:
25
+ formats:
26
+ default: "%a, %d %b %Y %H:%M:%S %z"
27
+ short: "%d %b %H:%M"
28
+ long: "%B %d, %Y %H:%M"
29
+ am: "am"
30
+ pm: "pm"
31
+
32
+ # Used in array.to_sentence.
33
+ support:
34
+ array:
35
+ words_connector: ", "
36
+ two_words_connector: " and "
37
+ last_word_connector: ", and "
38
+ number:
39
+ # Used in NumberHelper.number_to_delimited()
40
+ # These are also the defaults for 'currency', 'percentage', 'precision', and 'human'
41
+ format:
42
+ # Sets the separator between the units, for more precision (e.g. 1.0 / 2.0 == 0.5)
43
+ separator: "."
44
+ # Delimits thousands (e.g. 1,000,000 is a million) (always in groups of three)
45
+ delimiter: ","
46
+ # Number of decimals, behind the separator (the number 1 with a precision of 2 gives: 1.00)
47
+ precision: 3
48
+ # If set to true, precision will mean the number of significant digits instead
49
+ # of the number of decimal digits (1234 with precision 2 becomes 1200, 1.23543 becomes 1.2)
50
+ significant: false
51
+ # If set, the zeros after the decimal separator will always be stripped (eg.: 1.200 will be 1.2)
52
+ strip_insignificant_zeros: false
53
+
54
+ # Used in NumberHelper.number_to_currency()
55
+ currency:
56
+ format:
57
+ # Where is the currency sign? %u is the currency unit, %n the number (default: $5.00)
58
+ format: "%u%n"
59
+ unit: "$"
60
+ # These five are to override number.format and are optional
61
+ separator: "."
62
+ delimiter: ","
63
+ precision: 2
64
+ significant: false
65
+ strip_insignificant_zeros: false
66
+
67
+ # Used in NumberHelper.number_to_percentage()
68
+ percentage:
69
+ format:
70
+ # These five are to override number.format and are optional
71
+ # separator:
72
+ delimiter: ""
73
+ # precision:
74
+ # significant: false
75
+ # strip_insignificant_zeros: false
76
+ format: "%n%"
77
+
78
+ # Used in NumberHelper.number_to_rounded()
79
+ precision:
80
+ format:
81
+ # These five are to override number.format and are optional
82
+ # separator:
83
+ delimiter: ""
84
+ # precision:
85
+ # significant: false
86
+ # strip_insignificant_zeros: false
87
+
88
+ # Used in NumberHelper.number_to_human_size() and NumberHelper.number_to_human()
89
+ human:
90
+ format:
91
+ # These five are to override number.format and are optional
92
+ # separator:
93
+ delimiter: ""
94
+ precision: 3
95
+ significant: true
96
+ strip_insignificant_zeros: true
97
+ # Used in number_to_human_size()
98
+ storage_units:
99
+ # Storage units output formatting.
100
+ # %u is the storage unit, %n is the number (default: 2 MB)
101
+ format: "%n %u"
102
+ units:
103
+ byte:
104
+ one: "Byte"
105
+ other: "Bytes"
106
+ kb: "KB"
107
+ mb: "MB"
108
+ gb: "GB"
109
+ tb: "TB"
110
+ # Used in NumberHelper.number_to_human()
111
+ decimal_units:
112
+ format: "%n %u"
113
+ # Decimal units output formatting
114
+ # By default we will only quantify some of the exponents
115
+ # but the commented ones might be defined or overridden
116
+ # by the user.
117
+ units:
118
+ # femto: Quadrillionth
119
+ # pico: Trillionth
120
+ # nano: Billionth
121
+ # micro: Millionth
122
+ # mili: Thousandth
123
+ # centi: Hundredth
124
+ # deci: Tenth
125
+ unit: ""
126
+ # ten:
127
+ # one: Ten
128
+ # other: Tens
129
+ # hundred: Hundred
130
+ thousand: Thousand
131
+ million: Million
132
+ billion: Billion
133
+ trillion: Trillion
134
+ quadrillion: Quadrillion