# encoding: UTF-8 # This file is auto-generated from the current state of the database. Instead # of editing this file, please use the migrations feature of Active Record to # incrementally modify your database, and then regenerate this schema definition. # # Note that this schema.rb definition is the authoritative source for your # database schema. If you need to create the application database on another # system, you should be using db:schema:load, not running all the migrations # from scratch. The latter is a flawed and unsustainable approach (the more migrations # you'll amass, the slower it'll run and the greater likelihood for issues). # # It's strongly recommended that you check this file into your version control system. create_table "tr_agencies", force: :cascade do |t| t.string "acronym" t.string "name" t.text "description" t.string "main_timezone" t.integer "territory_id" t.integer "contact_information_id" t.string "logo_transparent_white_png" t.string "logo_transparent_color_png" t.string "logo" t.boolean "private" t.boolean "public" t.string "color" t.geography "headquarter_location", limit: {:srid=>4326, :type=>"st_point", :geographic=>true} t.datetime "created_at" t.datetime "updated_at" t.string "gtfs_agency_id" t.string "main_language" t.geometry "projected_headquarter_location", limit: {:srid=>32188, :type=>"st_point"} end create_table "tr_agencies_tr_services", id: false, force: :cascade do |t| t.integer "agency_id" t.integer "service_id" end create_table "tr_agencies_tr_stations", id: false, force: :cascade do |t| t.integer "agency_id" t.integer "station_id" end create_table "tr_agencies_tr_stops", id: false, force: :cascade do |t| t.integer "agency_id" t.integer "stop_id" end create_table "tr_drop_off_types", force: :cascade do |t| t.string "shortname" t.string "name" t.integer "gtfs_value" t.text "description" t.datetime "created_at" t.datetime "updated_at" end create_table "tr_matrix_stop_distances", force: :cascade do |t| t.integer "stop_1_id" t.integer "stop_2_id" t.integer "distance" t.integer "network_distance" t.integer "network_walking_duration_seconds" t.integer "network_driving_duration_seconds" t.integer "network_bus_duration_seconds" t.integer "network_tram_duration_seconds" t.integer "network_cycling_duration_seconds" end create_table "tr_od_nearest_stops", force: :cascade do |t| t.integer "trip_id" t.integer "stop_id" t.integer "distance_meters" t.integer "travel_time_seconds" t.boolean "is_origin" end create_table "tr_od_trips", force: :cascade do |t| t.string "survey_sn" t.string "trip_weekday" t.integer "bird_distance_meters" t.integer "declared_duration_seconds" t.geometry "origin_projected_geometry", limit: {:srid=>32188, :type=>"st_point"} t.geography "origin_geography", limit: {:srid=>4326, :type=>"st_point", :geographic=>true} t.geometry "destination_projected_geometry", limit: {:srid=>32188, :type=>"st_point"} t.geography "destination_geography", limit: {:srid=>4326, :type=>"st_point", :geographic=>true} t.float "origin_lat" t.float "origin_lon" t.float "destination_lat" t.float "destination_lon" t.string "internal_id" t.string "mode_sn" t.integer "sequence" t.integer "user_interview_id", limit: 8 t.integer "household_id", limit: 8 t.integer "household_interview_id", limit: 8 t.geometry "home_projected_geometry", limit: {:srid=>32188, :type=>"st_point"} t.geography "home_geography", limit: {:srid=>4326, :type=>"st_point", :geographic=>true} t.integer "household_size" t.integer "household_car_number" t.string "household_income_level_sn" t.integer "trip_chain_id" t.integer "journey_id" t.integer "user_id", limit: 8 t.datetime "start_at" t.datetime "end_at" t.integer "start_at_hour" t.integer "end_at_hour" t.integer "start_at_minutes" t.integer "end_at_minutes" t.string "gender_sn" t.string "age_group_sn" t.integer "age" t.string "occupation_sn" t.string "personal_income_level_sn" t.string "educational_attainment_sn" t.boolean "transit_pass_owner" t.boolean "driving_license_owner" t.string "activity_sn" t.float "expansion_factor" t.hstore "hstore_attributes" t.integer "walking_travel_time_seconds" t.integer "cycling_travel_time_seconds" t.integer "driving_travel_time_seconds" t.integer "start_at_seconds" t.integer "end_at_seconds" end create_table "tr_path_legs", force: :cascade do |t| t.integer "start_path_stop_sequence_id" t.integer "end_path_stop_sequence_id" t.integer "shape_id" t.integer "path_id" t.integer "sequence" t.boolean "enabled" t.datetime "created_at" t.datetime "updated_at" t.integer "routing_duration_seconds" t.integer "routing_distance_meters" t.geography "route_waypoints", limit: {:srid=>4326, :type=>"multi_point", :geographic=>true} t.text "route_query" end create_table "tr_path_stop_sequences", force: :cascade do |t| t.integer "path_id" t.integer "stop_id" t.integer "sequence" t.string "stop_headsign" t.text "note" t.integer "default_pickup_type_id" t.integer "default_drop_off_type_id" t.boolean "enabled" t.datetime "created_at" t.datetime "updated_at" end create_table "tr_pickup_types", force: :cascade do |t| t.string "shortname" t.string "name" t.integer "gtfs_value" t.text "description" t.datetime "created_at" t.datetime "updated_at" end create_table "tr_route_paths", force: :cascade do |t| t.string "name" t.string "internal_id" t.text "description" t.integer "shape_id" t.integer "route_id" t.datetime "created_at" t.datetime "updated_at" t.geography "route_waypoints", limit: {:srid=>4326, :type=>"multi_point", :geographic=>true} t.text "route_query" t.integer "routing_duration_seconds" t.integer "routing_distance_meters" t.boolean "is_outbound" end create_table "tr_route_types", force: :cascade do |t| t.string "internal_id" t.string "name" t.integer "gtfs_value" t.text "description" t.datetime "created_at" t.datetime "updated_at" t.string "shortname" t.integer "minimum_waiting_time_before_boarding_seconds" t.boolean "extended" t.boolean "enabled" t.boolean "is_gtfs_enabled" t.string "routing_mode" t.boolean "is_routing_overrideable" t.integer "direct_routing_default_speed_kph" end create_table "tr_routes", force: :cascade do |t| t.string "internal_id" t.string "shortname" t.string "longname" t.text "description" t.integer "type_id" t.string "color" t.integer "contact_information_id" t.boolean "enabled" t.datetime "created_at" t.datetime "updated_at" t.integer "agency_id" t.string "gtfs_route_id" t.string "text_color" t.string "string_foreign_key_name" t.string "sortable_name" t.integer "vehicle_type_id" t.integer "vehicles_count" end create_table "tr_service_dates", force: :cascade do |t| t.date "service_date" t.integer "service_id" end create_table "tr_services", force: :cascade do |t| t.string "name" t.string "internal_id" t.text "description" t.boolean "monday" t.boolean "tuesday" t.boolean "wednesday" t.boolean "thursday" t.boolean "friday" t.boolean "saturday" t.boolean "sunday" t.date "start_date" t.date "end_date" t.boolean "enabled" t.datetime "created_at" t.datetime "updated_at" t.string "gtfs_service_id" t.date "removed_on_dates", array: true t.date "added_on_dates", array: true end create_table "tr_shapes", force: :cascade do |t| t.geography "geography", limit: {:srid=>4326, :type=>"line_string", :geographic=>true} t.datetime "created_at" t.datetime "updated_at" t.string "gtfs_shape_id" end create_table "tr_stations", force: :cascade do |t| t.string "internal_id" t.string "code" t.string "name" t.geography "surface_geography", limit: {:srid=>4326, :type=>"st_polygon", :geographic=>true} t.geography "main_building_geography", limit: {:srid=>4326, :type=>"st_point", :geographic=>true} t.text "description" t.integer "contact_information_id" t.datetime "created_at" t.datetime "updated_at" t.string "gtfs_stop_id" t.geometry "main_building_projected_geometry", limit: {:srid=>32188, :type=>"st_point"} t.geometry "surface_projected_geometry", limit: {:srid=>32188, :type=>"st_polygon"} t.boolean "wheelchair_accessible" t.integer "k_r_parking_places_number" t.integer "p_r_parking_places_number" t.boolean "k_r_possible" t.boolean "p_r_possible" t.string "color" end create_table "tr_stop_times", force: :cascade do |t| t.integer "trip_id" t.string "arrival_time" t.boolean "evening_arrival_time" t.string "departure_time" t.boolean "evening_departure_time" t.integer "stop_id" t.integer "pickup_type_id" t.integer "drop_off_type_id" t.boolean "enabled" t.datetime "created_at" t.datetime "updated_at" t.integer "path_stop_sequence_id" t.string "stop_headsign" t.integer "departure_time_seconds" t.integer "arrival_time_seconds" end create_table "tr_stops", force: :cascade do |t| t.string "internal_id" t.string "code" t.string "name" t.geography "geography", limit: {:srid=>4326, :type=>"st_point", :geographic=>true} t.text "description" t.string "color" t.integer "contact_information_id" t.integer "shelter_id" t.string "photo_file_name" t.string "photo_content_type" t.integer "photo_file_size" t.datetime "photo_updated_at" t.boolean "wheelchair_accessible" t.datetime "created_at" t.datetime "updated_at" t.integer "station_id" t.string "gtfs_stop_id" t.geometry "projected_geometry", limit: {:srid=>32188, :type=>"st_point"} t.integer "k_r_parking_places_number" t.integer "p_r_parking_places_number" t.boolean "k_r_possible" t.boolean "p_r_possible" t.string "marker_icon_color" t.boolean "is_genetic_algorithm_stop" t.float "gravity" t.boolean "genetic_algorithm_route_can_start_or_end_here" end create_table "tr_trips", force: :cascade do |t| t.integer "path_id" t.integer "service_id" t.string "headsign" t.string "shortname" t.boolean "direction" t.boolean "wheelchair_accessible" t.boolean "enabled" t.datetime "created_at" t.datetime "updated_at" t.string "gtfs_trip_id" t.integer "roundtrip_associated_trip_id" end create_table "tr_vehicle_manufacturers", force: :cascade do |t| t.string "shortname" t.string "name" t.string "acronym" t.text "url" end create_table "tr_vehicle_models", force: :cascade do |t| t.integer "tr_vehicle_manufacturers_id" t.integer "tr_vehicle_propulsions_id" t.string "name" t.float "width_mm" t.float "height_mm" t.float "length_mm" t.integer "capacity_seated_min" t.integer "capacity_seated_max" t.integer "capacity_seated_default" t.integer "capacity_total_min" t.integer "capacity_total_max" t.integer "capacity_total_default" t.integer "door_channels_num" t.integer "doors_num" t.integer "num_transit_units" t.integer "first_manufacturing_year" t.integer "last_manufacturing_year" t.float "acceleration_m_s_typical" t.float "acceleration_m_s_max" t.float "deceleration_m_s_typical" t.float "deceleration_m_s_emergency" t.float "speed_technical_max_km_h" t.float "speed_operating_max_km_h" t.float "power_total_kw" t.float "weight_empty_kg" t.float "weight_full_kg" t.float "low_floor_percent" t.integer "axles_num" t.integer "powered_axles_num" t.integer "price_min_us_dollars" t.integer "price_max_us_dollars" t.integer "price_typical_us_dollars" t.text "url_specifications" t.text "url_brochure" end create_table "tr_vehicle_propulsions", force: :cascade do |t| t.string "shortname" t.string "name" t.string "acronym" end create_table "tr_vehicle_types", force: :cascade do |t| t.integer "route_type_id" t.integer "seating_capacity" t.integer "total_capacity" t.float "hourly_operating_cost" t.string "shortname" t.string "name" end create_table "tr_vehicles", force: :cascade do |t| t.integer "tr_vehicle_types_id" t.integer "tr_vehicle_models_id" t.integer "price_purchased_us_dollars" t.integer "capacity_seated" t.integer "capacity_total" t.date "date_purchased" t.date "date_sold" t.date "date_scrapped" end Connections: trip_id as trip_id, service_id as service_id, sequence as sequence, a.stop_id as stop_departure_id, b.stop_id as stop_arrival_id, a.departure_time_seconds as departure_time_seconds, b.arrival_time_seconds as arrival_time_seconds, a.can_board as can_board, b.can_unboard as can_unboard