diff options
| author | Alban Peignier | 2016-05-13 12:40:26 +0200 |
|---|---|---|
| committer | Alban Peignier | 2016-05-13 12:40:26 +0200 |
| commit | 58b9e12ec090a5ec6d9e78626574acc1cbb1a515 (patch) | |
| tree | a13e2cc079690997e509b49cc0d85f5267909f01 /db | |
| parent | 020cf3b06409acae569c23636ee91085fbeb5699 (diff) | |
| parent | 93ba001567f4455c09560f1af5b4bfb6dc782229 (diff) | |
| download | chouette-core-58b9e12ec090a5ec6d9e78626574acc1cbb1a515.tar.bz2 | |
Merge branch 'lines_lines_referentials_association'
Diffstat (limited to 'db')
| -rw-r--r-- | db/migrate/20160511082825_add_line_referential_to_lines.rb | 5 | ||||
| -rw-r--r-- | db/migrate/20160511094753_disable_line_foreign_keys.rb | 21 | ||||
| -rw-r--r-- | db/migrate/20160512110510_add_line_referential_to_group_of_lines.rb | 5 | ||||
| -rw-r--r-- | db/schema.rb | 75 | ||||
| -rw-r--r-- | db/seeds.rb | 7 |
5 files changed, 67 insertions, 46 deletions
diff --git a/db/migrate/20160511082825_add_line_referential_to_lines.rb b/db/migrate/20160511082825_add_line_referential_to_lines.rb new file mode 100644 index 000000000..e44ca4689 --- /dev/null +++ b/db/migrate/20160511082825_add_line_referential_to_lines.rb @@ -0,0 +1,5 @@ +class AddLineReferentialToLines < ActiveRecord::Migration + def change + add_reference :lines, :line_referential, index: true + end +end diff --git a/db/migrate/20160511094753_disable_line_foreign_keys.rb b/db/migrate/20160511094753_disable_line_foreign_keys.rb new file mode 100644 index 000000000..ffc665344 --- /dev/null +++ b/db/migrate/20160511094753_disable_line_foreign_keys.rb @@ -0,0 +1,21 @@ +class DisableLineForeignKeys < ActiveRecord::Migration + def change + disable_foreign_key :lines, :line_company_fkey + disable_foreign_key :lines, :line_ptnetwork_fkey + disable_foreign_key :routing_constraints_lines, :routingconstraint_line_fkey + disable_foreign_key :routes, :route_line_fkey + disable_foreign_key :group_of_lines_lines, :groupofline_line_fkey + end + + def disable_foreign_key(table, name) + if foreign_key?(table, name) + remove_foreign_key table, name: name + end + end + + def foreign_key?(table, name) + @connection.foreign_keys(table).any? do |foreign_key| + foreign_key.options[:name] == name.to_s + end + end +end diff --git a/db/migrate/20160512110510_add_line_referential_to_group_of_lines.rb b/db/migrate/20160512110510_add_line_referential_to_group_of_lines.rb new file mode 100644 index 000000000..f0081448b --- /dev/null +++ b/db/migrate/20160512110510_add_line_referential_to_group_of_lines.rb @@ -0,0 +1,5 @@ +class AddLineReferentialToGroupOfLines < ActiveRecord::Migration + def change + add_reference :group_of_lines, :line_referential, index: true + end +end diff --git a/db/schema.rb b/db/schema.rb index 0f7a5d74b..dadead9e5 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20160512105643) do +ActiveRecord::Schema.define(version: 20160512110510) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -200,8 +200,10 @@ ActiveRecord::Schema.define(version: 20160512105643) do t.string "name" t.string "comment" t.string "registration_number" + t.integer "line_referential_id" end + add_index "group_of_lines", ["line_referential_id"], :name => "index_group_of_lines_on_line_referential_id" add_index "group_of_lines", ["objectid"], :name => "group_of_lines_objectid_key", :unique => true create_table "group_of_lines_lines", id: false, force: true do |t| @@ -209,6 +211,18 @@ ActiveRecord::Schema.define(version: 20160512105643) do t.integer "line_id", limit: 8 end + create_table "jobs", force: true do |t| + t.string "action" + t.datetime "created" + t.string "filename" + t.text "parameters" + t.string "referential" + t.datetime "started" + t.string "status" + t.string "type" + t.datetime "updated" + end + create_table "journey_frequencies", force: true do |t| t.integer "vehicle_journey_id", limit: 8 t.time "scheduled_headway_interval", null: false @@ -237,7 +251,7 @@ ActiveRecord::Schema.define(version: 20160512105643) do create_table "journey_patterns", force: true do |t| t.integer "route_id", limit: 8 - t.string "objectid", null: false + t.string "objectid", null: false t.integer "object_version" t.datetime "creation_time" t.string "creator_id" @@ -247,10 +261,12 @@ ActiveRecord::Schema.define(version: 20160512105643) do t.string "published_name" t.integer "departure_stop_point_id", limit: 8 t.integer "arrival_stop_point_id", limit: 8 - t.integer "section_status", default: 0, null: false + t.integer "route_section_ids", default: [], array: true + t.integer "section_status", default: 0, null: false end add_index "journey_patterns", ["objectid"], :name => "journey_patterns_objectid_key", :unique => true + add_index "journey_patterns", ["route_section_ids"], :name => "index_journey_patterns_on_route_section_ids" create_table "journey_patterns_stop_points", id: false, force: true do |t| t.integer "journey_pattern_id", limit: 8 @@ -291,11 +307,19 @@ ActiveRecord::Schema.define(version: 20160512105643) do t.string "color", limit: 6 t.string "text_color", limit: 6 t.string "stable_id" + t.integer "line_referential_id" end + add_index "lines", ["line_referential_id"], :name => "index_lines_on_line_referential_id" add_index "lines", ["objectid"], :name => "lines_objectid_key", :unique => true add_index "lines", ["registration_number"], :name => "lines_registration_number_key" + create_table "links", id: false, force: true do |t| + t.integer "job_id", limit: 8, null: false + t.string "rel" + t.string "type" + end + create_table "networks", force: true do |t| t.string "objectid", null: false t.integer "object_version" @@ -362,8 +386,8 @@ ActiveRecord::Schema.define(version: 20160512105643) do end create_table "route_sections", force: true do |t| - t.integer "departure_id", limit: 8 - t.integer "arrival_id", limit: 8 + t.integer "departure_id" + t.integer "arrival_id" t.string "objectid", null: false t.integer "object_version" t.datetime "creation_time" @@ -614,51 +638,12 @@ ActiveRecord::Schema.define(version: 20160512105643) do add_index "vehicle_journeys", ["route_id"], :name => "index_vehicle_journeys_on_route_id" Foreigner.load - add_foreign_key "access_links", "access_points", name: "aclk_acpt_fkey", dependent: :delete - - add_foreign_key "group_of_lines_lines", "group_of_lines", name: "groupofline_group_fkey", dependent: :delete - add_foreign_key "group_of_lines_lines", "lines", name: "groupofline_line_fkey", dependent: :delete - add_foreign_key "journey_frequencies", "timebands", name: "journey_frequencies_timeband_id_fk", dependent: :nullify add_foreign_key "journey_frequencies", "vehicle_journeys", name: "journey_frequencies_vehicle_journey_id_fk", dependent: :nullify add_foreign_key "journey_pattern_sections", "journey_patterns", name: "journey_pattern_sections_journey_pattern_id_fk", dependent: :delete add_foreign_key "journey_pattern_sections", "route_sections", name: "journey_pattern_sections_route_section_id_fk", dependent: :delete - add_foreign_key "journey_patterns", "routes", name: "jp_route_fkey", dependent: :delete - add_foreign_key "journey_patterns", "stop_points", name: "arrival_point_fkey", column: "arrival_stop_point_id", dependent: :nullify - add_foreign_key "journey_patterns", "stop_points", name: "departure_point_fkey", column: "departure_stop_point_id", dependent: :nullify - - add_foreign_key "journey_patterns_stop_points", "journey_patterns", name: "jpsp_jp_fkey", dependent: :delete - add_foreign_key "journey_patterns_stop_points", "stop_points", name: "jpsp_stoppoint_fkey", dependent: :delete - - add_foreign_key "lines", "companies", name: "line_company_fkey", dependent: :nullify - add_foreign_key "lines", "networks", name: "line_ptnetwork_fkey", dependent: :nullify - - add_foreign_key "routes", "lines", name: "route_line_fkey", dependent: :delete - add_foreign_key "routes", "routes", name: "route_opposite_route_fkey", column: "opposite_route_id", dependent: :nullify - - add_foreign_key "routing_constraints_lines", "lines", name: "routingconstraint_line_fkey", dependent: :delete - - add_foreign_key "stop_areas", "stop_areas", name: "area_parent_fkey", column: "parent_id", dependent: :nullify - - add_foreign_key "stop_areas_stop_areas", "stop_areas", name: "stoparea_child_fkey", column: "child_id", dependent: :delete - add_foreign_key "stop_areas_stop_areas", "stop_areas", name: "stoparea_parent_fkey", column: "parent_id", dependent: :delete - - add_foreign_key "stop_points", "routes", name: "stoppoint_route_fkey", dependent: :delete - - add_foreign_key "time_table_dates", "time_tables", name: "tm_date_fkey", dependent: :delete - - add_foreign_key "time_table_periods", "time_tables", name: "tm_period_fkey", dependent: :delete - - add_foreign_key "time_tables_vehicle_journeys", "time_tables", name: "vjtm_tm_fkey", dependent: :delete - add_foreign_key "time_tables_vehicle_journeys", "vehicle_journeys", name: "vjtm_vj_fkey", dependent: :delete - - add_foreign_key "vehicle_journey_at_stops", "stop_points", name: "vjas_sp_fkey", dependent: :delete - add_foreign_key "vehicle_journey_at_stops", "vehicle_journeys", name: "vjas_vj_fkey", dependent: :delete - - add_foreign_key "vehicle_journeys", "companies", name: "vj_company_fkey", dependent: :nullify - add_foreign_key "vehicle_journeys", "journey_patterns", name: "vj_jp_fkey", dependent: :delete - add_foreign_key "vehicle_journeys", "routes", name: "vj_route_fkey", dependent: :delete + add_foreign_key "links", "jobs", name: "fk_n5ypxycc1stckgkm6ust2l6on" end diff --git a/db/seeds.rb b/db/seeds.rb index a035d1518..9cfcc17db 100644 --- a/db/seeds.rb +++ b/db/seeds.rb @@ -10,6 +10,11 @@ stif = Organisation.find_or_create_by(name: "STIF") StopAreaReferential.find_or_create_by(name: "Reflex") do |referential| referential.add_member stif, owner: true end -LineReferential.find_or_create_by(name: "CodifLigne") do |referential| + +line_referential = LineReferential.find_or_create_by(name: "CodifLigne") do |referential| referential.add_member stif, owner: true end + +10.times do |n| + line_referential.lines.find_or_create_by name: "Ligne Test #{n}" +end |
