store instructeur_email in traitement
This commit is contained in:
parent
9b6c5fd7fd
commit
1253bb5994
6 changed files with 14 additions and 11 deletions
|
@ -548,7 +548,7 @@ class Dossier < ApplicationRecord
|
|||
end
|
||||
|
||||
def after_accepter(instructeur, motivation, justificatif = nil)
|
||||
self.traitements.build(state: Dossier.states.fetch(:accepte), instructeur: instructeur, motivation: motivation, processed_at: Time.zone.now)
|
||||
self.traitements.build(state: Dossier.states.fetch(:accepte), instructeur_email: instructeur.email, motivation: motivation, processed_at: Time.zone.now)
|
||||
|
||||
if justificatif
|
||||
self.justificatif_motivation.attach(justificatif)
|
||||
|
@ -564,7 +564,7 @@ class Dossier < ApplicationRecord
|
|||
end
|
||||
|
||||
def after_accepter_automatiquement
|
||||
self.traitements.build(state: Dossier.states.fetch(:accepte), instructeur: nil, motivation: nil, processed_at: Time.zone.now)
|
||||
self.traitements.build(state: Dossier.states.fetch(:accepte), instructeur_email: nil, motivation: nil, processed_at: Time.zone.now)
|
||||
self.en_instruction_at ||= Time.zone.now
|
||||
|
||||
if attestation.nil?
|
||||
|
@ -577,7 +577,7 @@ class Dossier < ApplicationRecord
|
|||
end
|
||||
|
||||
def after_refuser(instructeur, motivation, justificatif = nil)
|
||||
self.traitements.build(state: Dossier.states.fetch(:refuse), instructeur: instructeur, motivation: motivation, processed_at: Time.zone.now)
|
||||
self.traitements.build(state: Dossier.states.fetch(:refuse), instructeur_email: instructeur.email, motivation: motivation, processed_at: Time.zone.now)
|
||||
|
||||
if justificatif
|
||||
self.justificatif_motivation.attach(justificatif)
|
||||
|
@ -589,7 +589,7 @@ class Dossier < ApplicationRecord
|
|||
end
|
||||
|
||||
def after_classer_sans_suite(instructeur, motivation, justificatif = nil)
|
||||
self.traitements.build(state: Dossier.states.fetch(:sans_suite), instructeur: instructeur, motivation: motivation, processed_at: Time.zone.now)
|
||||
self.traitements.build(state: Dossier.states.fetch(:sans_suite), instructeur_email: instructeur.email, motivation: motivation, processed_at: Time.zone.now)
|
||||
|
||||
if justificatif
|
||||
self.justificatif_motivation.attach(justificatif)
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
class Traitement < ApplicationRecord
|
||||
belongs_to :dossier
|
||||
belongs_to :instructeur
|
||||
|
||||
scope :termine_close_to_expiration, -> do
|
||||
joins(dossier: :procedure)
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
= render partial: 'instructeurs/dossiers/envoyer_dossier_block', locals: { dossier: @dossier, potential_recipients: @potential_recipients }
|
||||
|
||||
- @dossier.traitements.each do |traitement|
|
||||
= render partial: 'instructeurs/dossiers/personnes_impliquees_block', locals: { emails_collection: [traitement.instructeur.email], title: "Instructeur qui a #{t(traitement.state, scope: 'activerecord.attributes.traitement.state').downcase} le dossier (#{l(traitement.processed_at)})" }
|
||||
= render partial: 'instructeurs/dossiers/personnes_impliquees_block', locals: { emails_collection: [traitement.instructeur_email], title: "Instructeur qui a #{t(traitement.state, scope: 'activerecord.attributes.traitement.state').downcase} le dossier (#{l(traitement.processed_at)})" }
|
||||
|
||||
= render partial: 'instructeurs/dossiers/personnes_impliquees_block', locals: { emails_collection: @following_instructeurs_emails, title: "Instructeurs qui suivent actuellement le dossier", blank: "Aucun instructeur ne suit ce dossier" }
|
||||
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
class RemoveInstructeurIdAndAddInstructeurEmailToTraitements < ActiveRecord::Migration[5.2]
|
||||
def change
|
||||
add_column :traitements, :instructeur_email, :string
|
||||
remove_column :traitements, :instructeur_id
|
||||
end
|
||||
end
|
|
@ -10,7 +10,7 @@
|
|||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(version: 2020_06_30_140356) do
|
||||
ActiveRecord::Schema.define(version: 2020_07_07_082256) do
|
||||
|
||||
# These are extensions that must be enabled in order to support this database
|
||||
enable_extension "plpgsql"
|
||||
|
@ -562,12 +562,11 @@ ActiveRecord::Schema.define(version: 2020_06_30_140356) do
|
|||
|
||||
create_table "traitements", force: :cascade do |t|
|
||||
t.bigint "dossier_id"
|
||||
t.bigint "instructeur_id"
|
||||
t.string "motivation"
|
||||
t.string "state"
|
||||
t.datetime "processed_at"
|
||||
t.string "instructeur_email"
|
||||
t.index ["dossier_id"], name: "index_traitements_on_dossier_id"
|
||||
t.index ["instructeur_id"], name: "index_traitements_on_instructeur_id"
|
||||
end
|
||||
|
||||
create_table "trusted_device_tokens", force: :cascade do |t|
|
||||
|
@ -671,7 +670,6 @@ ActiveRecord::Schema.define(version: 2020_06_30_140356) do
|
|||
add_foreign_key "refused_mails", "procedures"
|
||||
add_foreign_key "services", "administrateurs"
|
||||
add_foreign_key "traitements", "dossiers"
|
||||
add_foreign_key "traitements", "instructeurs"
|
||||
add_foreign_key "trusted_device_tokens", "instructeurs"
|
||||
add_foreign_key "types_de_champ", "types_de_champ", column: "parent_id"
|
||||
add_foreign_key "users", "administrateurs"
|
||||
|
|
|
@ -915,7 +915,7 @@ describe Dossier do
|
|||
|
||||
it { expect(dossier.traitements.last.motivation).to eq('motivation') }
|
||||
it { expect(dossier.motivation).to eq('motivation') }
|
||||
it { expect(dossier.traitements.last.instructeur).to eq(instructeur) }
|
||||
it { expect(dossier.traitements.last.instructeur_email).to eq(instructeur.email) }
|
||||
it { expect(dossier.en_instruction_at).to eq(dossier.en_instruction_at) }
|
||||
it { expect(dossier.traitements.last.processed_at).to eq(now) }
|
||||
it { expect(dossier.processed_at).to eq(now) }
|
||||
|
|
Loading…
Reference in a new issue