Class: GeneralTimetableExportStratagy

Inherits:
AbstractTimetableExportStratagy show all
Defined in:
lib/tmis/engine/export/timetable_exporter.rb

Instance Method Summary collapse

Constructor Details

#initialize(dates) ⇒ GeneralTimetableExportStratagy

Contract Or => Any



137
138
139
# File 'lib/tmis/engine/export/timetable_exporter.rb', line 137

def initialize(dates)
  @dates = dates
end

Instance Method Details

#column_value(group) ⇒ Object

Contract Any => Any



157
158
159
# File 'lib/tmis/engine/export/timetable_exporter.rb', line 157

def column_value(group)
  group.title
end

#columnsObject

Contract None => Or



147
148
149
# File 'lib/tmis/engine/export/timetable_exporter.rb', line 147

def columns
  Group.all.sort_by(&:title_for_sort)
end

#row_value(date) ⇒ Object

Contract Any => Any



152
153
154
# File 'lib/tmis/engine/export/timetable_exporter.rb', line 152

def row_value(date)
  date.strftime('%A')
end

#rowsObject

Contract None => Or



142
143
144
# File 'lib/tmis/engine/export/timetable_exporter.rb', line 142

def rows
  @dates
end

#studies(date, group) ⇒ Object

Contract Any, Any => ArrayOf



162
163
164
# File 'lib/tmis/engine/export/timetable_exporter.rb', line 162

def studies(date, group)
  Study.of_group_and_its_subgroups(group).where(date: date).to_a
end