feat(DossierAssignment): create Assignment when admin reaffect dossiers

This commit is contained in:
Eric Leroy-Terquem 2023-07-05 11:13:01 +02:00 committed by Paul Chavard
parent 488a932cd5
commit 082db0ed02
2 changed files with 10 additions and 0 deletions

View file

@ -200,7 +200,14 @@ module Administrateurs
target_group = procedure.groupe_instructeurs.find(params[:target_group])
reaffecter_bulk_messages(target_group)
groupe_instructeur.dossiers.find_each do |dossier|
previous_group = dossier.groupe_instructeur
dossier.assign_to_groupe_instructeur(target_group, current_administrateur)
dossier.create_assignment(
DossierAssignment.modes.fetch(:manual),
previous_group,
target_group,
current_administrateur.email
)
end
flash[:notice] = "Les dossiers du groupe « #{groupe_instructeur.label} » ont été réaffectés au groupe « #{target_group.label} »."

View file

@ -208,6 +208,9 @@ describe Administrateurs::GroupeInstructeursController, type: :controller do
it { expect(response).to redirect_to(admin_procedure_groupe_instructeurs_path(procedure)) }
it { expect(gi_1_2.dossiers.last.id).to be(dossier12.id) }
it { expect(dossier12.groupe_instructeur.id).to be(gi_1_2.id) }
it { expect(dossier12.dossier_assignment.dossier_id).to be(dossier12.id) }
it { expect(dossier12.dossier_assignment.groupe_instructeur_id).to be(gi_1_2.id) }
it { expect(dossier12.dossier_assignment.assigned_by).to eq(admin.email) }
it { expect(bulk_message.groupe_instructeurs).to contain_exactly(gi_1_2, gi_1_3) }
end