class Planik::Lohnausweis::Daten

Public Class Methods

new(rohdaten) click to toggle source
# File lib/lohnausweis/daten.rb, line 32
def initialize(rohdaten)
  @rohdaten = rohdaten
  create_zulagen_block
  create_arbeitszeit_block
  create_arbeitsliste
end

Public Instance Methods

adresse() click to toggle source
# File lib/lohnausweis/daten.rb, line 106
def adresse
  @rohdaten.adresse
end
arbeitsliste() click to toggle source
# File lib/lohnausweis/daten.rb, line 120
def arbeitsliste
  @arbeitsliste
end
arbeitszeit_daten() click to toggle source
# File lib/lohnausweis/daten.rb, line 116
def arbeitszeit_daten
  @arbeitszeit_block.daten
end
create_arbeitsliste() click to toggle source

erstellt die Arbeitliste {:spalten, :eintraege}

titel, arbeitsitems, Total
# 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() click to toggle source
# 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() click to toggle source

Neu Aenderung für MEDPHONE März 2015: Nur Arbeitsliste, Arbeitszeit und Zulagen

# 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() click to toggle source
# File lib/lohnausweis/daten.rb, line 128
def end_datum
  @rohdaten.end_datum.strftime("%d.%m.%Y")
end
jahr() click to toggle source
# File lib/lohnausweis/daten.rb, line 136
def jahr
  @rohdaten.start_datum.strftime("%Y")
end
monat() click to toggle source
# File lib/lohnausweis/daten.rb, line 132
def monat
  I18n.localize @rohdaten.start_datum, :format => "%B", :locale => :de
end
start_datum() click to toggle source
# File lib/lohnausweis/daten.rb, line 124
def start_datum
  @rohdaten.start_datum.strftime("%d.%m.%Y")
end
zulagen_daten() click to toggle source

Neu Aenderung für MEDPHONE März 2015: Nur Arbeitsliste, Arbeitszeit und Zulagen

# File lib/lohnausweis/daten.rb, line 112
def zulagen_daten
  @zulagen_block.daten
end