class Planik::Arbeitszeitkonto::FeiertagZeitkontoCalculator

Feiertag

Public Class Methods

new(feiertage, zeit_von, zeit_bis, start_tag = 0) click to toggle source

@feiertage: Array von Dates @zeit_von, @zeit_bis: Times für die Zeitangaben @start_tag: Wann die Feiertagzeitspanne beginnt. Es kann ja sein, dass sie am Tag vorher beginnt

# File lib/arbeitszeitkonto/feiertag_zeitkonto_calculator.rb, line 14
def initialize feiertage, zeit_von, zeit_bis, start_tag = 0
  @feiertage_zeitspannen = create_feiertage_zeitspannen(feiertage, zeit_von, zeit_bis, start_tag)
end

Public Instance Methods

calculate(zeitspannen) click to toggle source
# File lib/arbeitszeitkonto/feiertag_zeitkonto_calculator.rb, line 20
def calculate zeitspannen
  calc(Array(zeitspannen), @feiertage_zeitspannen)
end

Private Instance Methods

create_feiertage_zeitspannen(feiertage, zeit_von, zeit_bis, start_tag) click to toggle source

Erstellt für jeden Feiertag eine Zeitspanne

# File lib/arbeitszeitkonto/feiertag_zeitkonto_calculator.rb, line 30
def create_feiertage_zeitspannen feiertage, zeit_von, zeit_bis, start_tag
  anzahl_tage_dazwischen = (zeit_bis.to_date - zeit_von.to_date).to_i
  feiertage.map do |f|
    f = f + start_tag.days
    Zeitspanne.new(kombiniere(f, zeit_von), kombiniere(f, zeit_bis)+anzahl_tage_dazwischen.days)
  end
end