module TokyoMetro::Modules::Api::ToFactory::Convert::Customize::Station::ConnectingRailwayLine::Factory::Seed::Info::ConnectingRailwayLine::Info

@note

This module is prepended
  to {TokyoMetro::Factory::Seed::Api::Station::Info::ConnectingRailwayLine::Info}
  by {TokyoMetro::Modules::Api::ToFactory::Convert::Customize::Station::ConnectingRailwayLine.set_modules} .

Public Class Methods

db_instance_class_of_connecting_railway_line_note() click to toggle source
# File lib/tokyo_metro/modules/api/to_factory/convert/customize/station/connecting_railway_line/factory/seed/info/connecting_railway_line/info.rb, line 9
def db_instance_class_of_connecting_railway_line_note
  ::ConnectingRailwayLine::Note
end

Private Instance Methods

connecting_station() click to toggle source
# File lib/tokyo_metro/modules/api/to_factory/convert/customize/station/connecting_railway_line/factory/seed/info/connecting_railway_line/info.rb, line 42
def connecting_station
  if connecting_to_another_station?
    station_info = ::Station::Info.find_by( railway_line_id: railway_line_id , same_as: @info.connecting_station )
    unless station_info.present?
      raise "Error: railway_line_id: #{railway_line_id} / same_as: #{ @info.connecting_another_station }"
    end
    return station_info
  else
    station_name_in_system = ::Station::Info.find( @station_info_id ).name_in_system
    connecting_station = ::Station::Info.find_by( railway_line_id: railway_line_id , name_in_system: station_name_in_system )
    if connecting_station.present?
      connecting_station
    else
      nil
    end
  end
end
connecting_station_info_id() click to toggle source
# File lib/tokyo_metro/modules/api/to_factory/convert/customize/station/connecting_railway_line/factory/seed/info/connecting_railway_line/info.rb, line 60
def connecting_station_info_id
  connecting_station.try( :id )
end
hash_to_db() click to toggle source

@todo railway_line_id の列を廃止する(他社線の駅名情報も DB に登録し、すべての railway_line_id へ station_info_id からアクセスできるようにする)

Calls superclass method
# File lib/tokyo_metro/modules/api/to_factory/convert/customize/station/connecting_railway_line/factory/seed/info/connecting_railway_line/info.rb, line 18
def hash_to_db
  super.merge({
    # station_info_id: @station_info_id ,
    # railway_line_id: railway_line_id ,
    index_in_station: @info.index_in_station ,
    connecting_station_info_id: connecting_station_info_id ,
    connecting_to_another_station: connecting_to_another_station? ,
    cleared: cleared? ,
    not_recommended: not_recommended? ,
    note_id: note_id ,
    start_on: @info.start_on ,
    end_on: @info.end_on ,
    hidden_on_railway_line_page: hidden_on_railway_line_page?
  })
end
note_id() click to toggle source
# File lib/tokyo_metro/modules/api/to_factory/convert/customize/station/connecting_railway_line/factory/seed/info/connecting_railway_line/info.rb, line 64
def note_id
  if @info.note.present?
    self.class.db_instance_class_of_connecting_railway_line_note.find_or_create_by( ja: @info.note ).id
   else
    nil
  end
end