Class: Increments::Schedule::WinterVacationSchedule::YearEndVacation
- Inherits:
-
Struct
- Object
- Struct
- Increments::Schedule::WinterVacationSchedule::YearEndVacation
- Defined in:
- lib/increments/schedule.rb
Instance Method Summary collapse
- #beginning_day ⇒ Object
- #coupled_new_year_vacation ⇒ Object
- #days ⇒ Object
- #dec_28 ⇒ Object
- #dec_31 ⇒ Object
- #last_saturday ⇒ Object
Instance Method Details
#beginning_day ⇒ Object
87 88 89 90 91 92 93 |
# File 'lib/increments/schedule.rb', line 87 def beginning_day if coupled_new_year_vacation.days.count >= 5 last_saturday else [dec_28, last_saturday].min end end |
#coupled_new_year_vacation ⇒ Object
107 108 109 |
# File 'lib/increments/schedule.rb', line 107 def coupled_new_year_vacation @coupled_new_year_vacation ||= NewYearVacation.new(year + 1) end |
#days ⇒ Object
83 84 85 |
# File 'lib/increments/schedule.rb', line 83 def days beginning_day..dec_31 end |
#dec_28 ⇒ Object
95 96 97 |
# File 'lib/increments/schedule.rb', line 95 def dec_28 @dec_28 ||= Date.new(year, 12, 28) end |
#dec_31 ⇒ Object
99 100 101 |
# File 'lib/increments/schedule.rb', line 99 def dec_31 @dec_31 ||= Date.new(year, 12, 31) end |
#last_saturday ⇒ Object
103 104 105 |
# File 'lib/increments/schedule.rb', line 103 def last_saturday @last_saturday ||= dec_31.find_previous(&:saturday?) end |