Class: Planik::Lohnausweis::Daten
- Inherits:
-
Object
- Object
- Planik::Lohnausweis::Daten
- Defined in:
- lib/lohnausweis/daten.rb
Defined Under Namespace
Classes: Block
Instance Method Summary collapse
- #adresse ⇒ Object
- #arbeitsliste ⇒ Object
- #arbeitszeit_daten ⇒ Object
-
#create_arbeitsliste ⇒ Object
erstellt die Arbeitliste :eintraege [titel, arbeitsitems, Total].
- #create_arbeitszeit_block ⇒ Object
-
#create_zulagen_block ⇒ Object
Neu Aenderung für MEDPHONE März 2015: Nur Arbeitsliste, Arbeitszeit und Zulagen.
- #end_datum ⇒ Object
-
#initialize(rohdaten) ⇒ Daten
constructor
A new instance of Daten.
- #jahr ⇒ Object
- #monat ⇒ Object
- #start_datum ⇒ Object
-
#zulagen_daten ⇒ Object
Neu Aenderung für MEDPHONE März 2015: Nur Arbeitsliste, Arbeitszeit und Zulagen.
Constructor Details
#initialize(rohdaten) ⇒ Daten
Returns a new instance of Daten.
32 33 34 35 36 37 |
# File 'lib/lohnausweis/daten.rb', line 32 def initialize(rohdaten) @rohdaten = rohdaten create_zulagen_block create_arbeitszeit_block create_arbeitsliste end |
Instance Method Details
#adresse ⇒ Object
106 107 108 |
# File 'lib/lohnausweis/daten.rb', line 106 def adresse @rohdaten.adresse end |
#arbeitsliste ⇒ Object
120 121 122 |
# File 'lib/lohnausweis/daten.rb', line 120 def arbeitsliste @arbeitsliste end |
#arbeitszeit_daten ⇒ Object
116 117 118 |
# File 'lib/lohnausweis/daten.rb', line 116 def arbeitszeit_daten @arbeitszeit_block.daten end |
#create_arbeitsliste ⇒ Object
erstellt die Arbeitliste :eintraege
- titel, arbeitsitems, Total
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
# File 'lib/lohnausweis/daten.rb', line 78 def create_arbeitsliste eintraege = [] titel = @rohdaten.arbeitsliste_spalten.map{|x| x.text}#["Datum", "Dienst/Arbeit", "Typ", "Start", "Ende", "Arbeitszeit"] eintraege << titel @rohdaten.arbeitsliste.each do |a| d = [] @rohdaten.arbeitsliste_spalten.each do |spalte| d << spalte.format(a) end eintraege << d end last = Array.new#(@rohdaten.arbeitsliste_spalten.length) @rohdaten.arbeitsliste_spalten.each do |a| last << a.summe(@rohdaten.arbeitsliste) end last[0] = "Arbeitszeit total" eintraege << last al = {spalten: @rohdaten.arbeitsliste_spalten, eintraege: eintraege} @arbeitsliste = al end |
#create_arbeitszeit_block ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/lohnausweis/daten.rb', line 64 def create_arbeitszeit_block eintraege = [] titel = ["Arbeitszeit #{monat} #{jahr}", nil, nil, "Stunden"] eintraege << Fakt.new("Stundensaldo Vormonat", nil, nil, @rohdaten.arbeitszeit.gleitzeit_vor, nil) eintraege << Fakt.new("Sollstunden von #{start_datum} bis #{end_datum}", nil, nil, @rohdaten.arbeitszeit.soll_stunden, nil) eintraege << Fakt.new("Geleistete Stunden von #{start_datum} bis #{end_datum}", nil, nil, @rohdaten.arbeitszeit.ist_stunden, nil) eintraege << Rechnung.new("Saldo per #{end_datum}", [eintraege[0], eintraege[2]], [eintraege[1]], nil) @arbeitszeit_block = Block.new(eintraege, titel) end |
#create_zulagen_block ⇒ Object
Neu Aenderung für MEDPHONE März 2015: Nur Arbeitsliste, Arbeitszeit und Zulagen
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/lohnausweis/daten.rb', line 41 def create_zulagen_block zulagen = [] if @rohdaten.geldbetraege_zulagen_anzeigen zulagen << Zulage.new("Zulage Nacht (#{monat} #{jahr})", @rohdaten.zulage_nacht.menge, @rohdaten.zulage_nacht.ansatz) zulagen << Zulage.new("Zulage Wochenende (#{monat} #{jahr})", @rohdaten.zulage_wochenende.menge, @rohdaten.zulage_wochenende.ansatz) summe = Rechnung.new("Summe", zulagen, []) zulagen = zulagen + [summe] @zulagen_block = Block.new(zulagen, ["Zulagen", "Menge", "Ansatz / %", "Betrag"]) else zulagen << Fakt.new("Zulage Nacht (#{monat} #{jahr})", nil, nil, @rohdaten.zulage_nacht.menge, nil) zulagen << Fakt.new("Zulage Wochenende (#{monat} #{jahr})", nil, nil, @rohdaten.zulage_wochenende.menge, nil) summe = Rechnung.new("Summe", zulagen, [], '') zulagen = zulagen + [summe] @zulagen_block = Block.new(zulagen, ["Zulagen", nil, nil, "Stunden"]) end end |
#end_datum ⇒ Object
128 129 130 |
# File 'lib/lohnausweis/daten.rb', line 128 def end_datum @rohdaten.end_datum.strftime("%d.%m.%Y") end |
#jahr ⇒ Object
136 137 138 |
# File 'lib/lohnausweis/daten.rb', line 136 def jahr @rohdaten.start_datum.strftime("%Y") end |
#monat ⇒ Object
132 133 134 |
# File 'lib/lohnausweis/daten.rb', line 132 def monat I18n.localize @rohdaten.start_datum, :format => "%B", :locale => :de end |
#start_datum ⇒ Object
124 125 126 |
# File 'lib/lohnausweis/daten.rb', line 124 def start_datum @rohdaten.start_datum.strftime("%d.%m.%Y") end |
#zulagen_daten ⇒ Object
Neu Aenderung für MEDPHONE März 2015: Nur Arbeitsliste, Arbeitszeit und Zulagen
112 113 114 |
# File 'lib/lohnausweis/daten.rb', line 112 def zulagen_daten @zulagen_block.daten end |