3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/tokyo_metro/factory/seed/api/station_train_time/checker.rb', line 3
def initialize( *symbol_of_railway_lines )
raise "Error" unless symbol_of_railway_lines.all? { |s| s.instance_of?( Symbol ) }
@symbol_of_railway_lines = symbol_of_railway_lines.flatten.sort
railway_lines_same_as = @symbol_of_railway_lines.map { | symbol |
::TokyoMetro::Modules::Common::Dictionary::RailwayLine::StringList.railway_line_string_list_in_system( symbol )
}.flatten
@railway_line_ids = ::RailwayLine.where( same_as: railway_lines_same_as ).pluck( :id )
@station_timetable_ids = ::StationTimetableFundamentalInfo.where( railway_line_id: @railway_line_ids ).pluck( :station_timetable_id ).sort
@train_timetable_ids = ::TrainTimetable.where( railway_line_id: @railway_line_ids ).pluck( :id ).sort
@station_train_times_from_station_timetables = ::StationTrainTime.where( station_timetable_id: @station_timetable_ids ).pluck( :id ).sort
@station_train_times_from_train_timetables = ::StationTrainTime.where( train_timetable_id: @train_timetable_ids ).pluck( :id ).sort
@number_of_station_train_times_in_api = ::TokyoMetro::Api.train_timetables.send( :select_railway_line , *( @symbol_of_railway_lines ) ).map { | train_timetable |
train_timetable.valid_list.length
}.inject( :+ )
end
|