Merge pull request #10180 from demarches-simplifiees/update-bulk-messages-associations
Technique : Mise à jour de l'association bulk messages - procédures
This commit is contained in:
commit
536a03bbb4
12 changed files with 8 additions and 49 deletions
|
@ -199,19 +199,8 @@ module Administrateurs
|
|||
.without_group(@groupe_instructeur)
|
||||
end
|
||||
|
||||
def reaffecter_bulk_messages(target_group)
|
||||
bulk_messages = BulkMessage.joins(:groupe_instructeurs).where(groupe_instructeurs: { id: groupe_instructeur.id })
|
||||
bulk_messages.each do |bulk_message|
|
||||
bulk_message.groupe_instructeurs.delete(groupe_instructeur)
|
||||
if !bulk_message.groupe_instructeur_ids.include?(target_group.id)
|
||||
bulk_message.groupe_instructeurs << target_group
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def reaffecter
|
||||
target_group = procedure.groupe_instructeurs.find(params[:target_group])
|
||||
reaffecter_bulk_messages(target_group)
|
||||
groupe_instructeur.dossiers.find_each do |dossier|
|
||||
dossier.assign_to_groupe_instructeur(target_group, DossierAssignment.modes.fetch(:manual), current_administrateur)
|
||||
end
|
||||
|
|
|
@ -283,7 +283,6 @@ module Instructeurs
|
|||
dossier_state: Dossier.states.fetch(:brouillon),
|
||||
sent_at: Time.zone.now,
|
||||
instructeur_id: current_instructeur.id,
|
||||
groupe_instructeurs: GroupeInstructeur.for_dossiers(dossiers),
|
||||
procedure_id: @procedure.id
|
||||
)
|
||||
bulk_message.save!
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
class BulkMessage < ApplicationRecord
|
||||
belongs_to :instructeur
|
||||
belongs_to :procedure
|
||||
has_and_belongs_to_many :groupe_instructeurs, -> { order(:label) }
|
||||
end
|
||||
|
|
|
@ -10,7 +10,6 @@ class GroupeInstructeur < ApplicationRecord
|
|||
has_many :assignments, class_name: 'DossierAssignment', dependent: :nullify, inverse_of: :groupe_instructeur
|
||||
has_many :previous_assignments, class_name: 'DossierAssignment', dependent: :nullify, inverse_of: :previous_groupe_instructeur
|
||||
has_and_belongs_to_many :exports, dependent: :destroy
|
||||
has_and_belongs_to_many :bulk_messages, dependent: :destroy
|
||||
|
||||
has_one :defaut_procedure, -> { with_discarded }, class_name: 'Procedure', foreign_key: :defaut_groupe_instructeur_id, dependent: :nullify, inverse_of: :defaut_groupe_instructeur
|
||||
has_one :contact_information, dependent: :destroy
|
||||
|
|
|
@ -60,6 +60,8 @@ class Procedure < ApplicationRecord
|
|||
belongs_to :zone, optional: true
|
||||
has_and_belongs_to_many :zones
|
||||
|
||||
has_many :bulk_messages, dependent: :destroy
|
||||
|
||||
def active_dossier_submitted_message
|
||||
published_dossier_submitted_message || draft_dossier_submitted_message
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue