Merge branch 'assign_to_procedure' into develop

# Conflicts:
#	db/schema.rb
This commit is contained in:
Xavier J 2016-05-24 17:19:32 +02:00
commit e973286766
39 changed files with 578 additions and 101 deletions

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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