Merge pull request #5971 from betagouv/revert-5965-claimant-type-to-avis-table
Revert "Claimant type to avis table"
This commit is contained in:
commit
8157fe8c5c
5 changed files with 2 additions and 49 deletions
|
@ -27,7 +27,6 @@ module CreateAvisConcern
|
||||||
introduction: create_avis_params[:introduction],
|
introduction: create_avis_params[:introduction],
|
||||||
introduction_file: create_avis_params[:introduction_file],
|
introduction_file: create_avis_params[:introduction_file],
|
||||||
claimant: current_instructeur,
|
claimant: current_instructeur,
|
||||||
claimant_type: current_instructeur.dossiers.present? ? 'Instructeur' : 'Expert',
|
|
||||||
dossier: dossier,
|
dossier: dossier,
|
||||||
confidentiel: confidentiel,
|
confidentiel: confidentiel,
|
||||||
experts_procedure: experts_procedure
|
experts_procedure: experts_procedure
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
#
|
#
|
||||||
# id :integer not null, primary key
|
# id :integer not null, primary key
|
||||||
# answer :text
|
# answer :text
|
||||||
# claimant_type :string
|
|
||||||
# confidentiel :boolean default(FALSE), not null
|
# confidentiel :boolean default(FALSE), not null
|
||||||
# email :string
|
# email :string
|
||||||
# introduction :text
|
# introduction :text
|
||||||
|
|
|
@ -1,6 +0,0 @@
|
||||||
class AddClaimantTypeToAvis < ActiveRecord::Migration[6.0]
|
|
||||||
def change
|
|
||||||
add_column :avis, :claimant_type, :string
|
|
||||||
remove_foreign_key :avis, :instructeurs, column: "claimant_id"
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -10,7 +10,7 @@
|
||||||
#
|
#
|
||||||
# It's strongly recommended that you check this file into your version control system.
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(version: 2021_03_07_143807) do
|
ActiveRecord::Schema.define(version: 2021_02_04_180955) do
|
||||||
|
|
||||||
# These are extensions that must be enabled in order to support this database
|
# These are extensions that must be enabled in order to support this database
|
||||||
enable_extension "plpgsql"
|
enable_extension "plpgsql"
|
||||||
|
@ -122,7 +122,6 @@ ActiveRecord::Schema.define(version: 2021_03_07_143807) do
|
||||||
t.boolean "confidentiel", default: false, null: false
|
t.boolean "confidentiel", default: false, null: false
|
||||||
t.datetime "revoked_at"
|
t.datetime "revoked_at"
|
||||||
t.bigint "experts_procedure_id"
|
t.bigint "experts_procedure_id"
|
||||||
t.string "claimant_type"
|
|
||||||
t.index ["claimant_id"], name: "index_avis_on_claimant_id"
|
t.index ["claimant_id"], name: "index_avis_on_claimant_id"
|
||||||
t.index ["dossier_id"], name: "index_avis_on_dossier_id"
|
t.index ["dossier_id"], name: "index_avis_on_dossier_id"
|
||||||
t.index ["experts_procedure_id"], name: "index_avis_on_experts_procedure_id"
|
t.index ["experts_procedure_id"], name: "index_avis_on_experts_procedure_id"
|
||||||
|
@ -730,6 +729,7 @@ ActiveRecord::Schema.define(version: 2021_03_07_143807) do
|
||||||
add_foreign_key "attestation_templates", "procedures"
|
add_foreign_key "attestation_templates", "procedures"
|
||||||
add_foreign_key "attestations", "dossiers"
|
add_foreign_key "attestations", "dossiers"
|
||||||
add_foreign_key "avis", "experts_procedures"
|
add_foreign_key "avis", "experts_procedures"
|
||||||
|
add_foreign_key "avis", "instructeurs", column: "claimant_id"
|
||||||
add_foreign_key "champs", "champs", column: "parent_id"
|
add_foreign_key "champs", "champs", column: "parent_id"
|
||||||
add_foreign_key "closed_mails", "procedures"
|
add_foreign_key "closed_mails", "procedures"
|
||||||
add_foreign_key "commentaires", "dossiers"
|
add_foreign_key "commentaires", "dossiers"
|
||||||
|
|
|
@ -1,39 +0,0 @@
|
||||||
namespace :after_party do
|
|
||||||
desc 'Deployment task: backfill_claimant_type_on_avis_table'
|
|
||||||
task backfill_claimant_type_on_avis_table: :environment do
|
|
||||||
puts "Running deploy task 'backfill_claimant_type_on_avis_table'"
|
|
||||||
|
|
||||||
with_dossiers = Avis.where(claimant_type: nil).includes(claimant: :assign_to).where.not(claimant: { assign_tos: { id: nil } })
|
|
||||||
with_dossiers.update_all(claimant_type: 'Instructeur')
|
|
||||||
|
|
||||||
without_dossiers = Avis.where(claimant_type: nil).includes(claimant: :assign_to).where(claimant: { assign_tos: { id: nil } })
|
|
||||||
without_dossiers.find_each do |avis|
|
|
||||||
claimant = Instructeur.find(avis.claimant_id).user
|
|
||||||
instructeur = Instructeur.find(avis.instructeur) if avis.instructeur
|
|
||||||
|
|
||||||
if instructeur && avis.experts_procedure_id.blank?
|
|
||||||
User.create_or_promote_to_expert(instructeur.user.email, SecureRandom.hex)
|
|
||||||
instructeur.user.reload
|
|
||||||
experts_procedure = ExpertsProcedure.find_or_create_by(procedure: avis.procedure, expert: instructeur.user.expert)
|
|
||||||
avis.update_columns(claimant_type: 'Expert', experts_procedure_id: experts_procedure.id)
|
|
||||||
|
|
||||||
elsif instructeur.blank? && avis.experts_procedure_id.blank?
|
|
||||||
expert = User.create_or_promote_to_expert(avis.email, SecureRandom.hex).expert
|
|
||||||
expert.reload
|
|
||||||
experts_procedure = ExpertsProcedure.find_or_create_by(procedure: avis.procedure, expert: expert)
|
|
||||||
avis.update_columns(claimant_type: 'Expert', experts_procedure_id: experts_procedure.id)
|
|
||||||
|
|
||||||
elsif avis.experts_procedure_id.present?
|
|
||||||
avis.update_column(:claimant_type, 'Expert')
|
|
||||||
|
|
||||||
elsif claimant.blank?
|
|
||||||
avis.destroy
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
# Update task as completed. If you remove the line below, the task will
|
|
||||||
# run with every deploy (or every time you call after_party:run).
|
|
||||||
AfterParty::TaskRecord
|
|
||||||
.create version: AfterParty::TaskRecorder.new(__FILE__).timestamp
|
|
||||||
end
|
|
||||||
end
|
|
Loading…
Add table
Reference in a new issue