Merge branch 'assign_to_procedure' into develop
# Conflicts: # db/schema.rb
This commit is contained in:
commit
e973286766
39 changed files with 578 additions and 101 deletions
|
@ -0,0 +1,32 @@
|
|||
class AdminHasAndBelongGestionnaire < ActiveRecord::Migration
|
||||
class Gestionnaire < ActiveRecord::Base
|
||||
end
|
||||
|
||||
class AdministrateursGestionnaire < ActiveRecord::Base
|
||||
end
|
||||
|
||||
def up
|
||||
create_table :administrateurs_gestionnaires, id: false do |t|
|
||||
t.belongs_to :administrateur, index: true
|
||||
t.belongs_to :gestionnaire, index: true
|
||||
end
|
||||
|
||||
Gestionnaire.all.each do |gestionnaire|
|
||||
execute "insert into administrateurs_gestionnaires (gestionnaire_id, administrateur_id) values (#{gestionnaire.id}, #{gestionnaire.administrateur_id}) "
|
||||
end
|
||||
|
||||
remove_column :gestionnaires, :administrateur_id
|
||||
end
|
||||
|
||||
def down
|
||||
add_column :gestionnaires, :administrateur_id, :integer
|
||||
|
||||
AdministrateursGestionnaire.all.each do |ag|
|
||||
gestionnaire = Gestionnaire.find(ag.gestionnaire_id)
|
||||
gestionnaire.administrateur_id = ag.administrateur_id
|
||||
gestionnaire.save
|
||||
end
|
||||
|
||||
drop_table :administrateurs_gestionnaires
|
||||
end
|
||||
end
|
|
@ -0,0 +1,36 @@
|
|||
class GestionnaireIsAssignToProcedure < ActiveRecord::Migration
|
||||
class AssignTo < ActiveRecord::Base
|
||||
belongs_to :gestionnaire
|
||||
belongs_to :procedure
|
||||
end
|
||||
|
||||
class Gestionnaire < ActiveRecord::Base
|
||||
has_and_belongs_to_many :administrateurs
|
||||
has_many :procedures, through: :assign_to
|
||||
end
|
||||
|
||||
class Administrateur < ActiveRecord::Base
|
||||
has_and_belongs_to_many :gestionnaires
|
||||
has_many :procedures
|
||||
end
|
||||
|
||||
class Procedure < ActiveRecord::Base
|
||||
belongs_to :administrateur
|
||||
has_many :gestionnaires, through: :assign_to
|
||||
end
|
||||
|
||||
def change
|
||||
create_table :assign_tos, id: false do |t|
|
||||
t.belongs_to :gestionnaire, index: true
|
||||
t.belongs_to :procedure, index: true
|
||||
end
|
||||
|
||||
Administrateur.all.each do |administrateur|
|
||||
administrateur.gestionnaires.each do |gestionnaire|
|
||||
administrateur.procedures.each do |procedure|
|
||||
AssignTo.create gestionnaire: gestionnaire, procedure: procedure
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
|
@ -0,0 +1,5 @@
|
|||
class AddForeignKeyAdmnistrateurGestionnaire < ActiveRecord::Migration
|
||||
def change
|
||||
add_index :administrateurs_gestionnaires, [:gestionnaire_id, :administrateur_id], unique: true, name: 'unique_couple_administrateur_gestionnaire'
|
||||
end
|
||||
end
|
|
@ -1,15 +1,23 @@
|
|||
class SetOriginalFilenameForUploaders < ActiveRecord::Migration
|
||||
class PieceJustificative < ActiveRecord::Base
|
||||
|
||||
end
|
||||
|
||||
class Cerfa < ActiveRecord::Base
|
||||
|
||||
end
|
||||
|
||||
def change
|
||||
PieceJustificative.find_each do |pj|
|
||||
PieceJustificative.all.each do |pj|
|
||||
if pj.original_filename.nil?
|
||||
pj.original_filename = pj.content_identifier
|
||||
pj.original_filename = pj.content
|
||||
pj.save!
|
||||
end
|
||||
end
|
||||
|
||||
Cerfa.find_each do |cerfa|
|
||||
Cerfa.all.each do |cerfa|
|
||||
if cerfa.original_filename.nil?
|
||||
cerfa.original_filename = cerfa.content_identifier
|
||||
cerfa.original_filename = cerfa.content
|
||||
cerfa.save!
|
||||
end
|
||||
end
|
||||
|
|
18
db/schema.rb
18
db/schema.rb
|
@ -35,6 +35,15 @@ ActiveRecord::Schema.define(version: 20160524093540) do
|
|||
add_index "administrateurs", ["email"], name: "index_administrateurs_on_email", unique: true, using: :btree
|
||||
add_index "administrateurs", ["reset_password_token"], name: "index_administrateurs_on_reset_password_token", unique: true, using: :btree
|
||||
|
||||
create_table "administrateurs_gestionnaires", id: false, force: :cascade do |t|
|
||||
t.integer "administrateur_id"
|
||||
t.integer "gestionnaire_id"
|
||||
end
|
||||
|
||||
add_index "administrateurs_gestionnaires", ["administrateur_id"], name: "index_administrateurs_gestionnaires_on_administrateur_id", using: :btree
|
||||
add_index "administrateurs_gestionnaires", ["gestionnaire_id", "administrateur_id"], name: "unique_couple_administrateur_gestionnaire", unique: true, using: :btree
|
||||
add_index "administrateurs_gestionnaires", ["gestionnaire_id"], name: "index_administrateurs_gestionnaires_on_gestionnaire_id", using: :btree
|
||||
|
||||
create_table "administrations", force: :cascade do |t|
|
||||
t.string "email", default: "", null: false
|
||||
t.string "encrypted_password", default: "", null: false
|
||||
|
@ -53,6 +62,14 @@ ActiveRecord::Schema.define(version: 20160524093540) do
|
|||
add_index "administrations", ["email"], name: "index_administrations_on_email", unique: true, using: :btree
|
||||
add_index "administrations", ["reset_password_token"], name: "index_administrations_on_reset_password_token", unique: true, using: :btree
|
||||
|
||||
create_table "assign_tos", id: false, force: :cascade do |t|
|
||||
t.integer "gestionnaire_id"
|
||||
t.integer "procedure_id"
|
||||
end
|
||||
|
||||
add_index "assign_tos", ["gestionnaire_id"], name: "index_assign_tos_on_gestionnaire_id", using: :btree
|
||||
add_index "assign_tos", ["procedure_id"], name: "index_assign_tos_on_procedure_id", using: :btree
|
||||
|
||||
create_table "cadastres", force: :cascade do |t|
|
||||
t.string "surface_intersection"
|
||||
t.float "surface_parcelle"
|
||||
|
@ -176,7 +193,6 @@ ActiveRecord::Schema.define(version: 20160524093540) do
|
|||
t.inet "last_sign_in_ip"
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
t.integer "administrateur_id"
|
||||
t.integer "procedure_filter", default: [], array: true
|
||||
end
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue