aboutsummaryrefslogtreecommitdiffstats
path: root/db
diff options
context:
space:
mode:
authorAlban Peignier2016-05-13 12:40:26 +0200
committerAlban Peignier2016-05-13 12:40:26 +0200
commit58b9e12ec090a5ec6d9e78626574acc1cbb1a515 (patch)
treea13e2cc079690997e509b49cc0d85f5267909f01 /db
parent020cf3b06409acae569c23636ee91085fbeb5699 (diff)
parent93ba001567f4455c09560f1af5b4bfb6dc782229 (diff)
downloadchouette-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.rb5
-rw-r--r--db/migrate/20160511094753_disable_line_foreign_keys.rb21
-rw-r--r--db/migrate/20160512110510_add_line_referential_to_group_of_lines.rb5
-rw-r--r--db/schema.rb75
-rw-r--r--db/seeds.rb7
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