refactor(DossierAssignment): move create_assignment to assign_to_groupe_instructeur

This commit is contained in:
Eric Leroy-Terquem 2023-07-05 17:48:18 +02:00 committed by Paul Chavard
parent 24f68b4deb
commit 0e58e10b82
10 changed files with 18 additions and 58 deletions

View file

@ -200,14 +200,7 @@ 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
)
dossier.assign_to_groupe_instructeur(target_group, DossierAssignment.modes.fetch(:manual), current_administrateur)
end
flash[:notice] = "Les dossiers du groupe « #{groupe_instructeur.label} » ont été réaffectés au groupe « #{target_group.label} »."
@ -215,17 +208,9 @@ module Administrateurs
end
def reaffecter_all_dossiers_to_defaut_groupe
defaut_groupe = procedure.defaut_groupe_instructeur
procedure.groupe_instructeurs_but_defaut.each do |gi|
gi.dossiers.find_each do |dossier|
previous_group = dossier.groupe_instructeur
dossier.assign_to_groupe_instructeur(defaut_groupe, current_administrateur)
dossier.create_assignment(
DossierAssignment.modes.fetch(:manual),
previous_group,
defaut_groupe,
current_administrateur.email
)
dossier.assign_to_groupe_instructeur(procedure.defaut_groupe_instructeur, DossierAssignment.modes.fetch(:manual), current_administrateur)
end
end
end

View file

@ -359,23 +359,14 @@ module Instructeurs
def reaffecter
dossier = current_instructeur.dossiers.find(params[:dossier_id])
previous_groupe_instructeur = dossier.groupe_instructeur
new_group = dossier
.procedure
.groupe_instructeurs.find(params[:groupe_instructeur_id])
dossier.assign_to_groupe_instructeur(new_group)
dossier.assign_to_groupe_instructeur(new_group, DossierAssignment.modes.fetch(:manual), current_instructeur)
dossier.update!(forced_groupe_instructeur: true)
dossier.create_assignment(
DossierAssignment.modes.fetch(:manual),
previous_groupe_instructeur,
new_group,
current_instructeur.email
)
flash.notice = t('instructeurs.dossiers.reaffectation', dossier_id: dossier.id, label: new_group.label)
redirect_to instructeur_procedure_path(procedure)
end